On Thu, 17 Jan 2008, Moritz Lennert wrote:

On Thu, January 17, 2008 03:38, Paul Kelly wrote:
Hello Moritz

On Wed, 16 Jan 2008, Moritz Lennert wrote:

Hello,

I'm trying to compile 6.3RC4 on windows with internationalisation
support.
However, I'm already stumbling over configure:

checking whether to use NLS... yes
checking for gettext... no
checking for gettext in -lintl... no
configure: error: *** Unable to locate gettext() function.

Can you check config.log to see what exactly is the problem?

See attached gettext.log. It can't find the gettext() function. I guess
this means that it can't find the relevant headers. I'm not quite sure how
to tell configure where to find them (i.e. no --with-gettext-includes). I
tried copying the contents of gnuwin32\include to msys\include, but to no
avail...

I think these are the relevant lines:
configure:14319: checking for gettext in -lintl
configure:14336: gcc -o conftest.exe -g -O2     -I/c/grasslibs/include  
-Wl,--export-dynamic,--enable-runtime-pseudo-reloc  -L/c/grasslibs/lib conftest.c 
-lintl   1>&5
configure:14329: warning: conflicting types for built-in function 'gettext'
c:\mingw\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\mingw32\bin\ld.exe: cannot 
find -lintl
collect2: ld returned 1 exit status

i.e. "cannot find -lintl" seems to be what's stopping it.

I got it
working when doing a few tests over Christmas; unfortunately never got far
enough to properly document it all and publish hints for others to follow.
But one thing I stumbled over several times was the fact that many of the
gnuwin32 pre-compiled binaries have unexpected dependencies.

But normally, if you get the "Complete package" setup, this includes all
dependencies.

Have you also
got libiconv and libintl installed?

Yes. libintl is part of gettext and the package contains the libiconv dll.

For compiling with the gnuwin32 packages, I found that as well as the dll you generally also need the import library (.la) file - which probably comes in the libiconv-lib package (or called something very similar). (The libraries that I compiled myself though, mostly I got them to work so you could link directly against the .dll and didn't need the .la file.)

So the dll alone isn't enough for compiling - but also you don't need to distribute the .la file with a binary distribution either. It's just needed to help the linker find the dll and tell it what's inside it. As far as I can see it generally isn't needed any more (but used to be before some improvements to the MinGW ld?) but the gnuwin32 packages all use it still.

Hope you're able to get a bit further with it.

Paul

_______________________________________________
grass-dev mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/grass-dev

Reply via email to