[Clfs-dev] glib-2.18.3 build fails on ps3

John Frankish frankish at dubai.oilfield.slb.com
Thu Dec 11 22:56:48 PST 2008


At 06:41 12-12-08, you wrote:
>John Frankish wrote:
> > At 08:05 11-12-08, you wrote:
> >> John Frankish wrote:
> >> > hopefully this is the correct list for bclfs...
> >> >
> >> > the multi-lib build for glib-2.18.3 fails with the error
> >> > "...unexpected symbol near |" on a ps3
> >> >
> >> > google turns up the same error on macs, etc but no particular
> >> solution?
> >> Based on the information provided, I couldn't tell you anything. If I
> >> was to look at the glib source I would not be able to locate the
> >> offending line of code, or re-create the environment that compiled it
> >> because the compile command is missing.
> >> _______________________________________________
> >> sorry - more details below
> >
> > make (multi-lib 32-bit)
> > <snip>
>Also, after you run configure, could you please post the output of these
>two commands? They should be run in the top of the glib source dir.
>
>grep global_symbol_pipe= libtool
>grep export_symbols_cmds= libtool
>
>They should produce 3 lines that look something along the lines of:
>
>global_symbol_pipe="sed -n -e 's/^.*[ ]\\([ABCDGIRSTW][ABCDGIRSTW]*\\)[
>][ ]*\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2 \\2/p'"
>export_symbols_cmds="\$NM \$libobjs \$convenience | \$global_symbol_pipe
>| \$SED 's/.* //' | sort | uniq > \$export_symbols"
>export_symbols_cmds="\$NM \$libobjs \$convenience | \$global_symbol_pipe
>| \$SED 's/.* //' | sort | uniq > \$export_symbols"
>
>Note that this may vary, though It doesn't look like that much on linux.
>
>I started looking through configure. There's a case that states to only
>use global_symbol_pipe if it works.
>
>See configure line 12513 where it gets set and configure line 12615 for
>the line that blanks it out if it doesn't work. I also believe that
>configure line 12540 is where the test actually takes place.
>
>I'd also be interested in seeing the peice of config.log that is related
>to testing wether this variable works or not. You should beable to find
>the relevant information by searching in config.log for "checking
>command to parse "$NM" output from "$compiler" object..." When in doubt
>just attach the entire thing to a reply email.
>_______________________________________________

hopefully I got all the details:

USE_ARCH=32 CC="gcc ${BUILD32}" ./configure --prefix=/usr 
--host=${CLFS_TARGET32}
...
# grep global_symbol_pipe= libtool
global_symbol_pipe=""
# grep export_symbols_cmds= libtool
export_symbols_cmds="\$NM \$libobjs \$convenience | 
\$global_symbol_pipe | \$SED 's/.* //' | sort | uniq > \$export_symbols"
export_symbols_cmds="\$NM \$libobjs \$convenience | 
\$global_symbol_pipe | \$SED 's/.* //' | sort | uniq > \$export_symbols"

config.log
...
configure:12298: checking for ranlib
configure:12314: found /usr/bin/ranlib
configure:12325: result: ranlib
configure:12415: checking command to parse link -dump -symbols output 
from gcc -m32 object
configure:12533: gcc -m32 -c -g -O2 -mcpu=cell -mtune=cell  conftest.c >&5
configure:12536: $? = 0
configure:12540: link -dump -symbols conftest.o \| sed -n -e 
's/^.*[     ]\([BCDEGRST][BCDEGRST]*\)[     ][ 
]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' \> conftest.nm
link: invalid option -- 'd'
Try `link --help' for more information.
configure:12543: $? = 0
cannot run sed -n -e 
's/^.*[     ]\([BCDEGRST][BCDEGRST]*\)[     ][ 
]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'
configure:12533: gcc -m32 -c -g -O2 -mcpu=cell -mtune=cell  conftest.c >&5
configure:12536: $? = 0
configure:12540: link -dump -symbols conftest.o \| sed -n -e 
's/^.*[     ]\([BCDEGRST][BCDEGRST]*\)[     ][ 
]*_\([_A-Za-z][_A-Za-z0-9]*\)$/\1 _\2 \2/p' \> conftest.nm
link: invalid option -- 'd'
Try `link --help' for more information.
configure:12543: $? = 0
cannot run sed -n -e 
's/^.*[     ]\([BCDEGRST][BCDEGRST]*\)[     ][ 
]*_\([_A-Za-z][_A-Za-z0-9]*\)$/\1 _\2 \2/p'
configure:12635: result: failed
configure:12733: gcc -m32 -c -g -O2 -mcpu=cell -mtune=cell  conftest.c >&5
configure:12736: $? = 0
configure:13503: checking for dlfcn.h
configure:13524: gcc -m32 -c -g -O2 -mcpu=cell -mtune=cell  conftest.c >&5
configure:13531: $? = 0
configure:13548: result: yes
configure:13675: checking for C++ compiler version
configure:13683: c++ --version >&5
c++ (GCC) 4.3.2
...

make
...
mv -f .deps/giounix.Tpo .deps/giounix.Plo
/bin/sh ../libtool --tag=CC   --mode=compile gcc -m32 -DHAVE_CONFIG_H 
-I. -I..  -I..  -DG_LOG_DOMAIN=\"GLib\" -DG_DISABLE_CAST_CHECKS 
-DG_DISABLE_DEPRECATED -DGLIB_COMPILATION -DPCRE_STATIC 
-DG_DISABLE_SINGLE_INCLUDES -pthread  -g -O2 -mcpu=cell -mtune=cell 
-Wall -MT gspawn.lo -MD -MP -MF .deps/gspawn.Tpo -c -o gspawn.lo gspawn.c
libtool: compile:  gcc -m32 -DHAVE_CONFIG_H -I. -I.. -I.. 
-DG_LOG_DOMAIN=\"GLib\" -DG_DISABLE_CAST_CHECKS 
-DG_DISABLE_DEPRECATED -DGLIB_COMPILATION -DPCRE_STATIC 
-DG_DISABLE_SINGLE_INCLUDES -pthread -g -O2 -mcpu=cell -mtune=cell 
-Wall -MT gspawn.lo -MD -MP -MF .deps/gspawn.Tpo -c gspawn.c  -fPIC 
-DPIC -o .libs/gspawn.o
mv -f .deps/gspawn.Tpo .deps/gspawn.Plo
/bin/sh ../libtool --tag=CC   --mode=link gcc -m32  -g -O2 -mcpu=cell 
-mtune=cell -Wall  -version-info 1800:3:1800 
-export-dynamic  -export-symbols-regex "^g.*"  -o libglib-2.0.la 
-rpath /usr/lib garray.lo gasyncqueue.lo gatomic.lo gbacktrace.lo 
gbase64.lo gbookmarkfile.lo gcache.lo gchecksum.lo gcompletion.lo 
gconvert.lo gdataset.lo gdate.lo gdir.lo gerror.lo gfileutils.lo 
ghash.lo ghook.lo giochannel.lo gkeyfile.lo glist.lo gmain.lo 
gmappedfile.lo gmarkup.lo gmem.lo gmessages.lo gnode.lo goption.lo 
gpattern.lo gprimes.lo gqsort.lo gqueue.lo grel.lo grand.lo gregex.lo 
gscanner.lo gsequence.lo gshell.lo gslice.lo gslist.lo gstdio.lo 
gstrfuncs.lo gstring.lo gtestutils.lo gthread.lo gthreadpool.lo 
gtimer.lo gtree.lo guniprop.lo gutf8.lo gunibreak.lo gunicollate.lo 
gunidecomp.lo gurifuncs.lo
gutils.lo gprintf.lo libcharset/libcharset.la  giounix.lo 
gspawn.lo    pcre/libpcre.la
libtool: link: link -dump -symbols  .libs/garray.o 
.libs/gasyncqueue.o .libs/gatomic.o .libs/gbacktrace.o 
.libs/gbase64.o .libs/gbookmarkfile.o .libs/gcache.o 
.libs/gchecksum.o .libs/gcompletion.o .libs/gconvert.o 
.libs/gdataset.o .libs/gdate.o .libs/gdir.o .libs/gerror.o 
.libs/gfileutils.o .libs/ghash.o .libs/ghook.o .libs/giochannel.o 
.libs/gkeyfile.o .libs/glist.o .libs/gmain.o .libs/gmappedfile.o 
.libs/gmarkup.o .libs/gmem.o .libs/gmessages.o .libs/gnode.o 
.libs/goption.o .libs/gpattern.o .libs/gprimes.o .libs/gqsort.o 
.libs/gqueue.o .libs/grel.o .libs/grand.o .libs/gregex.o 
.libs/gscanner.o .libs/gsequence.o .libs/gshell.o .libs/gslice.o 
.libs/gslist.o .libs/gstdio.o .libs/gstrfuncs.o .libs/gstring.o 
.libs/gtestutils.o .libs/gthread.o .libs/gthreadpool.o .libs/gtimer.o 
.libs/gtree.o .libs/guniprop.o .libs/gutf8.o .libs/gunibreak.o 
.libs/gunicollate.o .libs/gunidecomp.o .libs/gurifuncs.o 
.libs/gutils.o .libs/gprintf.o .libs/giounix.o 
.libs/gspawn.o   libcharset/.libs/libcharset.a pcre/.libs/libpcre.a 
|  | /bin/sed 's/.* //' | sort | uniq > .libs/libglib-2.0.exp
../libtool: eval: line 964: syntax error near unexpected token `|'
../libtool: eval: line 964: `link -dump -symbols  .libs/garray.o 
.libs/gasyncqueue.o .libs/gatomic.o .libs/gbacktrace.o 
.libs/gbase64.o .libs/gbookmarkfile.o .libs/gcache.o 
.libs/gchecksum.o .libs/gcompletion.o .libs/gconvert.o 
.libs/gdataset.o .libs/gdate.o .libs/gdir.o .libs/gerror.o 
.libs/gfileutils.o .libs/ghash.o .libs/ghook.o .libs/giochannel.o 
.libs/gkeyfile.o .libs/glist.o .libs/gmain.o .libs/gmappedfile.o 
.libs/gmarkup.o .libs/gmem.o .libs/gmessages.o .libs/gnode.o 
.libs/goption.o .libs/gpattern.o .libs/gprimes.o .libs/gqsort.o 
.libs/gqueue.o .libs/grel.o .libs/grand.o .libs/gregex.o 
.libs/gscanner.o .libs/gsequence.o .libs/gshell.o .libs/gslice.o 
.libs/gslist.o .libs/gstdio.o .libs/gstrfuncs.o .libs/gstring.o 
.libs/gtestutils.o .libs/gthread.o .libs/gthreadpool.o .libs/gtimer.o 
.libs/gtree.o .libs/guniprop.o .libs/gutf8.o .libs/gunibreak.o 
.libs/gunicollate.o .libs/gunidecomp.o .libs/gurifuncs.o 
.libs/gutils.o .libs/gprintf.o .libs/giounix.o 
.libs/gspawn.o   libcharset/.libs/libcharset.a pcre/.libs/libpcre.a 
|  | /bin/sed 's/.* //' | sort | uniq > .libs/libglib-2.0.exp'
make[4]: *** [libglib-2.0.la] Error 1
make[4]: Leaving directory `/sources/glib-2.18.3/glib'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/sources/glib-2.18.3/glib'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/sources/glib-2.18.3/glib'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/sources/glib-2.18.3'
make: *** [all] Error 2






More information about the Clfs-dev mailing list