Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Build error (win32) missing file? #4

Closed
michaelheyvaert opened this Issue · 5 comments

3 participants

michaelheyvaert paulhodge Bach Le
michaelheyvaert

When building a release build under win32, I got the following error:

scons: Building targets ...
cl /Fobuild\release\src\main.obj /c build\release\src\main.cpp /TP /nologo /EHsc /W3 /MD /Z7 /TP /O2 /DWINDOWS /DNDEBUG /Iinclude
main.cpp
C:\BEP\dev\libs\paulhodge-circa-07e17ce\include\circa/circa.h(6) : fatal error C1083: Cannot open include file: 'stdbool.h': No such file or directory
scons: *** [build\release\src\main.obj] Error 2
scons: building terminated because of errors.

paulhodge
Owner

Huh, no stdbool in Visual Studio: http://stackoverflow.com/questions/8548521/trying-to-use-include-stdbool-h-in-vs-2010

I think the fix will be to change the top of circa.h to say:

#ifdef _MSC_VER

typedef int bool;
#define false 0
#define true 1

#else

#include <stdbool.h>

#endif
paulhodge paulhodge referenced this issue from a commit
paulhodge Try to address build issues #4 #5 and #6
Add #include "unistd.h"
Remove obsolete types/rect.cpp
Add #include to static_error.cpp
circa.h has a MSVC alternative for stdbool
7156d16
michaelheyvaert

The latest build does not seem to fix the issiue

main.cpp
C:\BEP\dev\libs\paulhodge-circa-6c0889c\include\circa/circa.h(9) : error C2632: 'int' followed by 'bool' is illegal
C:\BEP\dev\libs\paulhodge-circa-6c0889c\include\circa/circa.h(9) : warning C4091: 'typedef ' : ignored on left of 'int' when no variable is declared
c:\bep\dev\libs\paulhodge-circa-6c0889c\build\release\src\list.h(17) : warning C4200: nonstandard extension used : zero-sized array in struct/union
Cannot generate copy-ctor or copy-assignment operator when UDT contains a zero-sized array
c:\bep\dev\libs\paulhodge-circa-6c0889c\build\release\src\list.h(22) : warning C4624: 'circa::ListData' : destructor could not be generated because a base class destructor is inacc
essible
scons: *** [build\release\src\main.obj] Error 2
scons: building terminated because of errors.

Bach Le
bullno1 commented

In visual studio, when your extension is .cpp, it compiles as C++ so bool type is built-in and does not need to be defined.

I tried to build on windows but there are still other issues, mostly related to the use of POSIX functions. They need to be replaced with Windows API. Compiling under cygwin should work but it's not ideal.

I'll look into them if I have time.

paulhodge paulhodge referenced this issue from a commit
paulhodge Various fixes to build on vs2005. (including issue #4). Still need to…
… untangle the situation with include paths
0d613cc
paulhodge
Owner

Thanks much for the research. I got on a windows machine and fixed the "typedef bool" thing, as well as some other issues. It should build the library now.

Along the way I did disable the command-line tool for Windows; this will need some more work (like a getline replacement and dirent.h replacement). But this will work for the upcoming demo release.

paulhodge
Owner

Resolving fixed in releases/alpha-4 . The GUI tool Improv should now be buildable on Windows (using Qt and Mingw). I haven't set up a Visual Studio project for Improv yet, but it should be possible.

paulhodge paulhodge closed this
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.