[GRASS-dev] GRASS 7 not finding gettext

William Kyngesburye woklist at kyngchaos.com
Fri Apr 4 19:57:20 PDT 2014


I think you need to ignore the first error about the missing symbol for i386 - it's testing for gettext in the system library(s), not libintl, and that will fail on OS X, it's just odd that it didn't also report the error for x86_64.

The next error, where it can't find libintl, is more helpful.  This is testing for libintl in the system library paths.  I think in the past this has included /usr/local/lib, but it appears now it does not.  Maybe a change in a recent Xcode/clang update.

I think there is a general lib and include flag for GRASS configure, you could try adding /usr/local/lib and /usr/local/include to that.

On Apr 4, 2014, at 12:00 PM, Michael Barton <michael.barton at asu.edu> wrote:

> So here is a test that I ran for William that suggests that there are indeed 2 architectures compiled into gettext. 
> 
> Michael 
> ______________________________
> C. Michael Barton 
> Director, Center for Social Dynamics & Complexity
> Professor of Anthropology, School of Human Evolution & Social Change
> Head, Graduate Faculty in Complex Adaptive Systems Science
> Arizona State University
> Tempe, AZ  85287-2402
> USA
> 
> voice: 
> 480-965-6262 (SHESC), 480-965-8130/727-9746 (CSDC)
> fax:          480-965-7671(SHESC), 480-727-0709 (CSDC)
> www: 
> http://csdc.asu.edu, http://shesc.asu.edu
> http://www.public.asu.edu/~cmbarton
> 
> Begin forwarded message:
> 
>> From: Michael Barton <michael.barton at asu.edu>
>> Subject: Re: [SPAM?] Re: GRASS 7 not finding gettext
>> Date: April 3, 2014 at 5:16:02 PM MST
>> To: Kyngesburye William <kyngchaos at kyngchaos.com>
>> Cc: Markus Neteler <neteler at osgeo.org>
>> 
>> The following with my old installation and the new compilations of today:
>> 
>> /usr/local/lib/libintl.dylib: Mach-O universal binary with 2 architectures
>> /usr/local/lib/libintl.dylib (for architecture x86_64):
>> Mach-O 64-bit dynamically linked shared library x86_64
>> /usr/local/lib/libintl.dylib (for architecture i386):
>> Mach-O dynamically linked shared library i386
>> 
>> Michael
>> ______________________________
>> C. Michael Barton 
>> Director, Center for Social Dynamics & Complexity
>> Professor of Anthropology, School of Human Evolution & Social Change
>> Head, Graduate Faculty in Complex Adaptive Systems Science
>> Arizona State University
>> Tempe, AZ  85287-2402
>> USA
>> 
>> voice: 480-965-6262 (SHESC), 480-965-8130/727-9746 (CSDC)
>> fax:          480-965-7671(SHESC), 480-727-0709 (CSDC)
>> www: http://csdc.asu.edu, http://shesc.asu.edu
>> http://www.public.asu.edu/~cmbarton
>> 
>> On Apr 3, 2014, at 5:11 PM, William Kyngesburye <kyngchaos at kyngchaos.com> wrote:
>> 
>>> what doe you get with
>>> 
>>> file /usr/local/lib/libintl.dylib
>>> 
>>> On Apr 3, 2014, at 7:08 PM, Michael Barton <Michael.Barton at asu.edu> wrote:
>>> 
>>>> Hmm.
>>>> 
>>>> I had no problem with compiling GRASS when I last did it in February.
>>>> 
>>>> When I just now recompiled gettext (current version), I used the same setup I did before, except that I’ve limited it to OSX 10.7 and above.
>>>> 
>>>> ====================
>>>> 
>>>> export MACOSX_DEPLOYMENT_TARGET=10.7
>>>> 
>>>> ./configure --prefix=/usr/local --disable-dependency-tracking --disable-java --disable-libasprintf CFLAGS="-Os -arch x86_64 -arch i386 -fno-common -isysroot /Developer/SDKs/MacOSX10.7.sdk”
>>>> 
>>>> make
>>>> 
>>>> sudo make install
>>>> 
>>>> ==================
>>>> 
>>>> 
>>>> MIchael
>>>> 
>>>> ______________________________
>>>> C. Michael Barton 
>>>> Director, Center for Social Dynamics & Complexity
>>>> Professor of Anthropology, School of Human Evolution & Social Change
>>>> Head, Graduate Faculty in Complex Adaptive Systems Science
>>>> Arizona State University
>>>> Tempe, AZ  85287-2402
>>>> USA
>>>> 
>>>> voice: 480-965-6262 (SHESC), 480-965-8130/727-9746 (CSDC)
>>>> fax:          480-965-7671(SHESC), 480-727-0709 (CSDC)
>>>> www: http://csdc.asu.edu, http://shesc.asu.edu
>>>> http://www.public.asu.edu/~cmbarton
>>>> 
>>>> On Apr 3, 2014, at 4:48 PM, William Kyngesburye <kyngchaos at kyngchaos.com> wrote:
>>>> 
>>>>> It looks like your gettext/libintl is missing 32bit arch.
>>>>> 
>>>>> On Apr 3, 2014, at 4:16 PM, Michael Barton <michael.barton at asu.edu> wrote:
>>>>> 
>>>>>> I don’t know what has changed, but I just recompiled gettext and redid configure. It still does not find gettext.
>>>>>> 
>>>>>> The configure flag I’m using is --with-nls
>>>>>> 
>>>>>> That’s still correct, right?
>>>>>> 
>>>>>> Here is the error:
>>>>>> 
>>>>>> checking whether to use NLS... yes
>>>>>> checking for gettext... no
>>>>>> checking for gettext in -lintl... no
>>>>>> configure: error: *** Unable to locate gettext() function.
>>>>>> 
>>>>>> Here is what seems to be the right place from configure.log
>>>>>> 
>>>>>> ; return 0; }
>>>>>> configure:11940: checking whether to use FreeType
>>>>>> configure:11959: checking for location of FreeType includes
>>>>>> configure:11985: checking for ft2build.h
>>>>>> configure:11993: gcc -E  -I/Library/Frameworks/FreeType.framework/unix/include/freetype2 -I/Library/Frameworks/FreeType.framework/unix/include  conftest.c >/dev/null 2>conftest.out
>>>>>> configure:12027: checking for location of FreeType library
>>>>>> configure:12052: checking for FT_Init_FreeType in -lfreetype
>>>>>> configure:12069: gcc -o conftest -g -O2   -arch i386 -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.7.sdk   -L/Library/Frameworks/FreeType.framework/unix/lib   -arch i386 -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.7.sdk  conftest.c -lfreetype   1>&5
>>>>>> configure:12110: checking whether to use NLS
>>>>>> configure:12130: checking for gettext
>>>>>> configure:12156: gcc -o conftest -g -O2   -arch i386 -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.7.sdk    -arch i386 -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.7.sdk  conftest.c  1>&5
>>>>>> Undefined symbols for architecture i386:
>>>>>> "_gettext", referenced from:
>>>>>>  _main in conftest-qEjAiU.o
>>>>>> ld: symbol(s) not found for architecture i386
>>>>>> clang: error: linker command failed with exit code 1 (use -v to see invocation)
>>>>>> configure: failed program was:
>>>>>> #line 12133 "configure"
>>>>>> #include "confdefs.h"
>>>>>> /* System header to define __stub macros and hopefully few prototypes,
>>>>>> which can conflict with char gettext(); below.  */
>>>>>> #include <assert.h>
>>>>>> /* Override any gcc2 internal prototype to avoid an error.  */
>>>>>> /* We use char because int might match the return type of a gcc2
>>>>>> builtin and then its argument prototype would still apply.  */
>>>>>> char gettext();
>>>>>> 
>>>>>> int main() {
>>>>>> 
>>>>>> /* The GNU C library defines this for functions which it implements
>>>>>> to always fail with ENOSYS.  Some functions are actually named
>>>>>> something starting with __ and the normal name is an alias.  */
>>>>>> #if defined (__stub_gettext) || defined (__stub___gettext)
>>>>>> choke me
>>>>>> #else
>>>>>> gettext();
>>>>>> #endif
>>>>>> 
>>>>>> ; return 0; }
>>>>>> configure:12174: checking for gettext in -lintl
>>>>>> configure:12191: gcc -o conftest -g -O2   -arch i386 -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.7.sdk    -arch i386 -arch x86_64 -isysroot /Developer/SDKs/MacOSX10.7.sdk  conftest.c -lintl   1>&5
>>>>>> ld: library not found for -lintl
>>>>>> clang: error: linker command failed with exit code 1 (use -v to see invocation)
>>>>>> configure: failed program was:
>>>>>> #line 12180 "configure"
>>>>>> #include "confdefs.h"
>>>>>> /* Override any gcc2 internal prototype to avoid an error.  */
>>>>>> /* We use char because int might match the return type of a gcc2
>>>>>> builtin and then its argument prototype would still apply.  */
>>>>>> char gettext();
>>>>>> 
>>>>>> int main() {
>>>>>> gettext()
>>>>>> ; return 0; }
>>>>>> 

-----
William Kyngesburye <kyngchaos*at*kyngchaos*dot*com>
http://www.kyngchaos.com/

"The beast is actively interested only in now, and, as it is always now and always shall be, there is an eternity of time for the accomplishment of objects."

- the wisdom of Tarzan







More information about the grass-dev mailing list