Page MenuHome

New gettext and fftw3 for MinGW
Closed, ArchivedPublicPATCH



In IRC people often asks about error at Blender startup when it's compiled with MinGW. When I've got the same error after cross-compilation.
Source of this error is somewhere inside gnu_gettext library. I've compiled new gettext static library by MinGW and told scons to link with it. Now all is o-key.

Another problem with MinGW comes from fftw3 library. There is linking error with unresolved symbols like __alloca, __chkstk and others from msvcrt library. I've made static fftw3 library with MinGW and now I haven't got problems (I've tested by cross-compilation. I was unable to test native MinGW compilation yet).

I've attached new libraries and patch for scons scripts to this message.

NOTE: I haven't tested scons scripts by native MinGW, so mayb there are some typos in new SConstruct.

Event Timeline

Hi Sergey,

I'm reading your scons patch - greatly appreciate the effort - but
something in the patch looks 'wrong' to me. In line 13 of the patch
you add gnu_gettext.dll to dllsources, and then the next line
dllsources is set to a group of files. This would seem like it would
override your previous action.

for iconv it seems like you are now excluding win32-vc from getting
iconv added ?


Oh. Stupid mistakes.

At line 15 it shoudld be "+=" instead of "=". gnu_gettext.dll is necessary only if gnu_gettext.lib from lib/windows/gettext is used. But for MinGW static libintl.a is using. If I'm not mistake libintl.a is linked staticly to the iconv, so iconv.dll is unnecessary with new gettext lib. So at line 33 it is also stupid typo, It should be "!=" not "=".

P.S. Sorry for this very stupid typos. It was hard week..

I've tested this libraries on my virtual machine and made some typofixes to the patch. I've also tried to generate patch in svn-compatible format. I've got mingw's gcc and g++ version 3.4.5.

P.S. New libraries should be placed to the lib/windows/gcc folder.

Tom Musgrove (letterrip) changed the task status from Unknown Status to Unknown Status.Feb 26 2010, 6:59 AM