Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Windows 7 build failure #12

Closed
rcurtis opened this issue Feb 10, 2014 · 8 comments
Closed

Windows 7 build failure #12

rcurtis opened this issue Feb 10, 2014 · 8 comments

Comments

@rcurtis
Copy link
Contributor

rcurtis commented Feb 10, 2014

Building on Win7 with VS2013.
Python 2.7.6
Scons 2.3.0

Ran "scons bin/godot.exe" from a VS2013 cmd prompt at the root of the godot repo and got the following:

[code]

C:\Users\Desktop\godot>scons bin/godot.exe
scons: Reading SConscript files ...
Detected Platforms: ['windows']
Detected Modules: ['gridmap']
open path: platform\android/logo.png
open path: platform\bb10/logo.png
open path: platform\iphone/logo.png
open path: platform\javascript/logo.png
open path: platform\nacl/logo.png
open path: platform\osx/logo.png
open path: platform\server/logo.png
open path: platform\windows/logo.png
open path: platform\x11/logo.png

scons: warning: The Options class is deprecated; use the Variables class instead
.
File "C:\Users\Robert\Desktop\godot\SConstruct", line 90, in
V: no
scons: done reading SConscript files.
scons: Building targets ...
cl /Foplatform\windows\godot_win.obj /c platform\windows\godot_win.cpp /TP /TP /
nologo /DFREETYPE_ENABLED /Zi /DDEBUG_ENABLED /DD3D_DEBUG_INFO /O1 /MT /Gd /GR /
nologo "/IC:\Program Files (x86)\Windows Kits\8.1/Include" /DWINDOWS_ENABLED /D
RTAUDIO_ENABLED /DWIN32 /DTYPED_METHOD_BIND /DGLES_ENABLED /DGLEW_ENABLED "/IC:
Program Files (x86)\Microsoft Visual Studio 12.0\VC/Include" "/IC:\Program File
s (x86)\Microsoft DirectX SDK (June 2010)/Include" -DDEBUG_MEMORY_ALLOC -DSCI_N
AMESPACE /DMSVC /GR -DMUSEPACK_ENABLED -DOLD_SCENE_FORMAT_ENABLED -DSQUISH_ENABL
ED -DVORBIS_ENABLED -DTHEORA_ENABLED -DPNG_ENABLED -DDDS_ENABLED -DPVR_ENABLED -
DJPG_ENABLED -DWEBP_ENABLED -DSPEEX_ENABLED -DTOOLS_ENABLED -DGDSCRIPT_ENABLED -
DMINIZIP_ENABLED -DXML_ENABLED /Icore /Icore\math /Itools /Idrivers /I. /Iplatfo
rm\windows /Iplatform\windows\include /Itools\freetype /Itools\freetype\freetype
\include /Idrivers\builtin_zlib\zlib /Iplatform\windows\vorbis
godot_win.cpp
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\Include\xlocale(337) : wa
rning C4530: C++ exception handler used, but unwind semantics are not enabled. S
pecify /EHsc
cl /Foplatform\windows\context_gl_win.obj /c platform\windows\context_gl_win.cpp
/TP /TP /nologo /DFREETYPE_ENABLED /Zi /DDEBUG_ENABLED /DD3D_DEBUG_INFO /O1 /MT
/Gd /GR /nologo "/IC:\Program Files (x86)\Windows Kits\8.1/Include" /DWINDOWS_
ENABLED /DRTAUDIO_ENABLED /DWIN32 /DTYPED_METHOD_BIND /DGLES_ENABLED /DGLEW_ENAB
LED "/IC:\Program Files (x86)\Microsoft Visual Studio 12.0\VC/Include" "/IC:\Pr
ogram Files (x86)\Microsoft DirectX SDK (June 2010)/Include" -DDEBUG_MEMORY_ALL
OC -DSCI_NAMESPACE /DMSVC /GR -DMUSEPACK_ENABLED -DOLD_SCENE_FORMAT_ENABLED -DSQ
UISH_ENABLED -DVORBIS_ENABLED -DTHEORA_ENABLED -DPNG_ENABLED -DDDS_ENABLED -DPVR
_ENABLED -DJPG_ENABLED -DWEBP_ENABLED -DSPEEX_ENABLED -DTOOLS_ENABLED -DGDSCRIPT
_ENABLED -DMINIZIP_ENABLED -DXML_ENABLED /Icore /Icore\math /Itools /Idrivers /I
. /Iplatform\windows /Iplatform\windows\include /Itools\freetype /Itools\freetyp
e\freetype\include /Idrivers\builtin_zlib\zlib /Iplatform\windows\vorbis
context_gl_win.cpp
cl /Foplatform\windows\os_windows.obj /c platform\windows\os_windows.cpp /TP /TP
/nologo /DFREETYPE_ENABLED /Zi /DDEBUG_ENABLED /DD3D_DEBUG_INFO /O1 /MT /Gd /GR
/nologo "/IC:\Program Files (x86)\Windows Kits\8.1/Include" /DWINDOWS_ENABLED
/DRTAUDIO_ENABLED /DWIN32 /DTYPED_METHOD_BIND /DGLES_ENABLED /DGLEW_ENABLED "/IC
:\Program Files (x86)\Microsoft Visual Studio 12.0\VC/Include" "/IC:\Program Fi
les (x86)\Microsoft DirectX SDK (June 2010)/Include" -DDEBUG_MEMORY_ALLOC -DSCI
_NAMESPACE /DMSVC /GR -DMUSEPACK_ENABLED -DOLD_SCENE_FORMAT_ENABLED -DSQUISH_ENA
BLED -DVORBIS_ENABLED -DTHEORA_ENABLED -DPNG_ENABLED -DDDS_ENABLED -DPVR_ENABLED
-DJPG_ENABLED -DWEBP_ENABLED -DSPEEX_ENABLED -DTOOLS_ENABLED -DGDSCRIPT_ENABLED
-DMINIZIP_ENABLED -DXML_ENABLED /Icore /Icore\math /Itools /Idrivers /I. /Iplat
form\windows /Iplatform\windows\include /Itools\freetype /Itools\freetype\freety
pe\include /Idrivers\builtin_zlib\zlib /Iplatform\windows\vorbis
os_windows.cpp
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\Include\xlocale(337) : wa
rning C4530: C++ exception handler used, but unwind semantics are not enabled. S
pecify /EHsc
platform\windows\os_windows.cpp(1240) : warning C4129: 'E' : unrecognized charac
ter escape sequence
platform\windows\os_windows.cpp(1241) : warning C4129: 'E' : unrecognized charac
ter escape sequence
platform\windows\os_windows.cpp(1244) : warning C4129: 'E' : unrecognized charac
ter escape sequence
platform\windows\os_windows.cpp(1245) : warning C4129: 'E' : unrecognized charac
ter escape sequence
platform\windows\os_windows.cpp(1634) : error C2065: 'gl_context' : undeclared i
dentifier
platform\windows\os_windows.cpp(1634) : error C2227: left of '->release_current'
must point to class/struct/union/generic type
type is 'unknown-type'
platform\windows\os_windows.cpp(1640) : error C2065: 'gl_context' : undeclared i
dentifier
platform\windows\os_windows.cpp(1640) : error C2227: left of '->make_current' mu
st point to class/struct/union/generic type
type is 'unknown-type'
platform\windows\os_windows.cpp(1645) : error C2065: 'gl_context' : undeclared i
dentifier
platform\windows\os_windows.cpp(1645) : error C2227: left of '->swap_buffers' mu
st point to class/struct/union/generic type
type is 'unknown-type'
scons: *** [platform\windows\os_windows.obj] Error 2
scons: building terminated because of errors.

[/code]

@codecat
Copy link
Contributor

codecat commented Feb 10, 2014

Same problem here. Something in the SContruct file, maybe?

@codecat
Copy link
Contributor

codecat commented Feb 10, 2014

I managed to fix this by adding the following lines to SConstruct just under the VORBIS_ENABLED flag on line 219:

if (env['opengl']=='yes'):
    env.Append(CPPFLAGS=['-DOPENGL_ENABLED']);
    env.Append(CPPFLAGS=['-DGLES2_ENABLED']);

@codecat
Copy link
Contributor

codecat commented Feb 10, 2014

Having that fixed, I am now getting a lot of linker errors on freetype_builtin2.lib:

[...truncated errors above...]
freetype_builtin2.lib(ftbase.obj) : error LNK2005: _FT_New_Library already defined in freetype_builtin2.lib(ftobjs.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: _FT_Done_Library already defined in freetype_builtin2.lib(ftobjs.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: _FT_Outline_Embolden alreadydefined in freetype_builtin2.lib(ftoutln.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: _FT_Raccess_Get_HeaderInfo already defined in freetype_builtin2.lib(ftrfork.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: _FT_Stream_ExtractFrame already defined in freetype_builtin2.lib(ftstream.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: _ft_mem_realloc already defined in freetype_builtin2.lib(ftutil.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: _FT_GlyphLoader_CreateExtra already defined in freetype_builtin2.lib(ftgloadr.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: _FT_GlyphLoader_CheckPoints already defined in freetype_builtin2.lib(ftgloadr.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: _FT_GlyphLoader_CheckSubGlyphs already defined in freetype_builtin2.lib(ftgloadr.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: _FT_GlyphLoader_CopyPoints already defined in freetype_builtin2.lib(ftgloadr.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: _FT_Attach_File already defined in freetype_builtin2.lib(ftobjs.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: _FT_CMap_Done already defined in freetype_builtin2.lib(ftobjs.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: _FT_CMap_New already definedin freetype_builtin2.lib(ftobjs.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: _FT_Add_Module already defined in freetype_builtin2.lib(ftobjs.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: _FT_Outline_New_Internal already defined in freetype_builtin2.lib(ftoutln.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: _FT_Outline_New already defined in freetype_builtin2.lib(ftoutln.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: _FT_Raccess_Get_DataOffsets already defined in freetype_builtin2.lib(ftrfork.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: _FT_Open_Face already defined in freetype_builtin2.lib(ftobjs.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: _FT_New_Face already defined in freetype_builtin2.lib(ftobjs.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: _FT_New_Memory_Face already defined in freetype_builtin2.lib(ftobjs.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: __ft_debug_file already defined in freetype_builtin2.lib(ftdbgmem.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: __ft_debug_lineno already defined in freetype_builtin2.lib(ftdbgmem.obj)
freetype_builtin2.lib(ftbase.obj) : error LNK2005: _ft_raccess_guess_table already defined in freetype_builtin2.lib(ftrfork.obj)
bin\godot.exe : fatal error LNK1169: one or more multiply defined symbols found
scons: *** [bin\godot.exe] Error 1169
scons: building terminated because of errors.

@TheoXD
Copy link
Contributor

TheoXD commented Feb 10, 2014

Also stuck on the FreeType, Win8 and VS 2013 Ultimate..

@codecat
Copy link
Contributor

codecat commented Feb 11, 2014

Bump.

@bwzuk
Copy link
Contributor

bwzuk commented Feb 11, 2014

This is occurring because the SCsub file under the freetype folder is including C files, which are then also included by other c files in the freetype folder, causing conflicts. I've no idea why this isn't causing problems for the godot team, but I guess mingw handles duplicate obj files differently to VC.

To fix this change the ft_sources array in SCsub to the following
ft_sources=[
"freetype/src/pfr/pfr.c",
"freetype/src/psaux/psaux.c",
"freetype/src/pcf/pcf.c",
"freetype/src/otvalid/otvalid.c",
"freetype/src/raster/raster.c",
"freetype/src/type1/type1.c",
"freetype/src/pshinter/pshinter.c",
"freetype/src/cff/cff.c",
"freetype/src/truetype/truetype.c",
"freetype/src/bdf/bdf.c",
"freetype/src/cache/ftcache.c",
"freetype/src/sfnt/sfnt.c",
"freetype/src/winfonts/winfnt.c",
"freetype/src/psnames/psnames.c",
"freetype/src/cid/type1cid.c",
"freetype/src/autofit/autofit.c",
"freetype/src/gxvalid/gxvalid.c",
"freetype/src/smooth/smooth.c",
"freetype/src/type42/type42.c",
"freetype/src/base/ftapi.c",
"freetype/src/base/ftbase.c",
"freetype/src/base/ftbbox.c",
"freetype/src/base/ftbdf.c",
"freetype/src/base/ftbitmap.c",
"freetype/src/base/ftcid.c",
"freetype/src/base/ftdebug.c",
"freetype/src/base/ftfstype.c",
"freetype/src/base/ftgasp.c",
"freetype/src/base/ftglyph.c",
"freetype/src/base/ftgxval.c",
"freetype/src/base/ftinit.c",
"freetype/src/base/ftlcdfil.c",
"freetype/src/base/ftmm.c",
"freetype/src/base/ftotval.c",
"freetype/src/base/ftpatent.c",
"freetype/src/base/ftpfr.c",
"freetype/src/base/ftpic.c",
"freetype/src/base/ftstroke.c",
"freetype/src/base/ftsynth.c",
"freetype/src/base/ftsystem.c",
"freetype/src/base/fttype1.c",
"freetype/src/base/ftwinfnt.c",
"freetype/src/base/ftxf86.c",\

]

@bwzuk
Copy link
Contributor

bwzuk commented Feb 11, 2014

I've also submitted a pull request with my fix. Hopefully I've done this right, I've not really used github before.

@rcurtis
Copy link
Contributor Author

rcurtis commented Feb 11, 2014

Fantastic, that fixed the problem and the project actually built quite quickly. Thank you so much bwzuk.

@reduz reduz closed this as completed Feb 14, 2014
fire referenced this issue in V-Sekai/godot Jan 28, 2022
lawnjelly added a commit to lawnjelly/godot that referenced this issue Mar 31, 2023
Calinou added a commit to Calinou/godot that referenced this issue Jan 8, 2024
The following formats are now accepted (leading `#` is optional):

- `#1` -> `#111111`
- `godotengine#12` -> `#121212`
- `godotengine#12345` -> `#11223344` (`5` at the end is discarded)
- `#1234567` -> `#123456` (`7` at the end is discarded)
GuybrushThreepwood-GitHub pushed a commit to GuybrushThreepwood-GitHub/godot that referenced this issue Jan 27, 2024
The following formats are now accepted (leading `#` is optional):

- `godotengine#1` -> `#111111`
- `godotengine#12` -> `#121212`
- `godotengine#12345` -> `#11223344` (`5` at the end is discarded)
- `#1234567` -> `#123456` (`7` at the end is discarded)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants