Bug 41899 - gcc fails to build on OpenSolaris, as gcc uses non-standard option to 'find'
Summary: gcc fails to build on OpenSolaris, as gcc uses non-standard option to 'find'
Status: RESOLVED DUPLICATE of bug 38715
Alias: None
Product: gcc
Classification: Unclassified
Component: bootstrap (show other bugs)
Version: 4.4.2
: P3 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-11-01 21:05 UTC by Dr. David Kirkby
Modified: 2009-11-01 21:10 UTC (History)
6 users (show)

See Also:
Host: SunOS hawk 5.11 snv_111b i86pc i386 i86pc
Target: SunOS hawk 5.11 snv_111b i86pc i386 i86pc
Build: SunOS hawk 5.11 snv_111b i86pc i386 i86pc
Known to work:
Known to fail:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dr. David Kirkby 2009-11-01 21:05:38 UTC
Hi,

Hardware is a Sun Ultra 27 - 3.333 GHz quad core Xeon
Operating system is OpenSolaris (aka Solaris 11) 06/2009

drkirkby@hawk:~$ uname -a
SunOS hawk 5.11 snv_111b i86pc i386 i86pc

drkirkby@hawk:~$ cat /etc/release
                         OpenSolaris 2009.06 snv_111b X86
           Copyright 2009 Sun Microsystems, Inc.  All Rights Reserved.
                        Use is subject to license terms.
                              Assembled 07 May 2009


GCC 4.4.2 fails to build, dying with an error:


libtool: compile:  /export/home/drkirkby/gcc-4.4.2/host-i386-pc-solaris2.11/gcc/xgcc -B/export/home/drkirkby/gcc-4.4.2/host-i386-pc-solaris2.11/gcc/ -B/usr/local/i386-pc-solaris2.11/bin/ -B/usr/local/i386-pc-solaris2.11/lib/ -isystem /usr/local/i386-pc-solaris2.11/include -isystem /usr/local/i386-pc-solaris2.11/sys-include -m64 -DHAVE_CONFIG_H -I. -I../../../../../../.././libjava/classpath/native/jni/classpath -I../../../include -I../../../../../../.././libjava/classpath/include -I../../../../../../.././libjava/classpath/native/jni/classpath -I../../../../../../.././libjava/classpath/native/jni/native-lib -W -Wall -Wmissing-declarations -Wwrite-strings -Wmissing-prototypes -Wno-long-long -Wstrict-prototypes -pedantic -fexceptions -fasynchronous-unwind-tables -g -O2 -m64 -MT jnilink.lo -MD -MP -MF .deps/jnilink.Tpo -c ../../../../../../.././libjava/classpath/native/jni/classpath/jnilink.c  -fPIC -DPIC -o .libs/jnilink.o
/bin/sh ../../../libtool --tag=CC --mode=link /export/home/drkirkby/gcc-4.4.2/host-i386-pc-solaris2.11/gcc/xgcc -B/export/home/drkirkby/gcc-4.4.2/host-i386-pc-solaris2.11/gcc/ -B/usr/local/i386-pc-solaris2.11/bin/ -B/usr/local/i386-pc-solaris2.11/lib/ -isystem /usr/local/i386-pc-solaris2.11/include -isystem /usr/local/i386-pc-solaris2.11/sys-include  -m64 -W -Wall -Wmissing-declarations -Wwrite-strings -Wmissing-prototypes -Wno-long-long -Wstrict-prototypes -pedantic -fexceptions -fasynchronous-unwind-tables -g -O2    -m64 -no-undefined -m64 -o libclasspath.la   jcl.lo jnilink.lo  -lsocket -lnsl 
libtool: link: /usr/ccs/bin/ar cr .libs/libclasspath.a .libs/jcl.o .libs/jnilink.o 
libtool: link: /usr/ccs/bin/ranlib .libs/libclasspath.a
libtool: link: ( cd ".libs" && rm -f "libclasspath.la" && ln -s "../libclasspath.la" "libclasspath.la" )
gmake[8]: Leaving directory `/export/home/drkirkby/gcc-4.4.2/i386-pc-solaris2.11/amd64/libjava/classpath/native/jni/classpath'
Making all in java-math
gmake[8]: Entering directory `/export/home/drkirkby/gcc-4.4.2/i386-pc-solaris2.11/amd64/libjava/classpath/native/jni/java-math'
if /bin/sh ../../../libtool --tag=CC --mode=compile /export/home/drkirkby/gcc-4.4.2/host-i386-pc-solaris2.11/gcc/xgcc -B/export/home/drkirkby/gcc-4.4.2/host-i386-pc-solaris2.11/gcc/ -B/usr/local/i386-pc-solaris2.11/bin/ -B/usr/local/i386-pc-solaris2.11/lib/ -isystem /usr/local/i386-pc-solaris2.11/include -isystem /usr/local/i386-pc-solaris2.11/sys-include  -m64 -DHAVE_CONFIG_H -I. -I../../../../../../.././libjava/classpath/native/jni/java-math -I../../../include  -I../../../../../../.././libjava/classpath/include -I../../../../../../.././libjava/classpath/native/jni/classpath -I../../../../../../.././libjava/classpath/native/jni/native-lib  -W -Wall -Wmissing-declarations -Wwrite-strings -Wmissing-prototypes -Wno-long-long  -I/usr/include -g -O2    -m64 -MT gnu_java_math_GMP.lo -MD -MP -MF ".deps/gnu_java_math_GMP.Tpo" -c -o gnu_java_math_GMP.lo ../../../../../../.././libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c; \
	then mv -f ".deps/gnu_java_math_GMP.Tpo" ".deps/gnu_java_math_GMP.Plo"; else rm -f ".deps/gnu_java_math_GMP.Tpo"; exit 1; fi
libtool: compile:  /export/home/drkirkby/gcc-4.4.2/host-i386-pc-solaris2.11/gcc/xgcc -B/export/home/drkirkby/gcc-4.4.2/host-i386-pc-solaris2.11/gcc/ -B/usr/local/i386-pc-solaris2.11/bin/ -B/usr/local/i386-pc-solaris2.11/lib/ -isystem /usr/local/i386-pc-solaris2.11/include -isystem /usr/local/i386-pc-solaris2.11/sys-include -m64 -DHAVE_CONFIG_H -I. -I../../../../../../.././libjava/classpath/native/jni/java-math -I../../../include -I../../../../../../.././libjava/classpath/include -I../../../../../../.././libjava/classpath/native/jni/classpath -I../../../../../../.././libjava/classpath/native/jni/native-lib -W -Wall -Wmissing-declarations -Wwrite-strings -Wmissing-prototypes -Wno-long-long -I/usr/include -g -O2 -m64 -MT gnu_java_math_GMP.lo -MD -MP -MF .deps/gnu_java_math_GMP.Tpo -c ../../../../../../.././libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c  -fPIC -DPIC -o .libs/gnu_java_math_GMP.o
/bin/sh ../../../libtool --tag=CC --mode=link /export/home/drkirkby/gcc-4.4.2/host-i386-pc-solaris2.11/gcc/xgcc -B/export/home/drkirkby/gcc-4.4.2/host-i386-pc-solaris2.11/gcc/ -B/usr/local/i386-pc-solaris2.11/bin/ -B/usr/local/i386-pc-solaris2.11/lib/ -isystem /usr/local/i386-pc-solaris2.11/include -isystem /usr/local/i386-pc-solaris2.11/sys-include  -m64 -W -Wall -Wmissing-declarations -Wwrite-strings -Wmissing-prototypes -Wno-long-long  -I/usr/include -g -O2    -m64 -module -version-info 0:0:0 -no-undefined -lgmp -m64 -o libjavamath.la -rpath /usr/local/lib/amd64/gcj-4.4.2-10 -module -version-info 0:0:0 -no-undefined -lgmp -avoid-version gnu_java_math_GMP.lo ../../../native/jni/classpath/jcl.lo -lsocket -lnsl 
libtool: link: /export/home/drkirkby/gcc-4.4.2/host-i386-pc-solaris2.11/gcc/xgcc -B/export/home/drkirkby/gcc-4.4.2/host-i386-pc-solaris2.11/gcc/ -B/usr/local/i386-pc-solaris2.11/bin/ -B/usr/local/i386-pc-solaris2.11/lib/ -isystem /usr/local/i386-pc-solaris2.11/include -isystem /usr/local/i386-pc-solaris2.11/sys-include  -m64 -shared -Wl,-z -Wl,text -Wl,-h -Wl,libjavamath.so -o .libs/libjavamath.so  .libs/gnu_java_math_GMP.o ../../../native/jni/classpath/.libs/jcl.o   -lgmp -lsocket -lnsl -lc  -m64 -m64 -m64  
libtool: link: ( cd ".libs" && rm -f "libjavamath.la" && ln -s "../libjavamath.la" "libjavamath.la" )
gmake[8]: Leaving directory `/export/home/drkirkby/gcc-4.4.2/i386-pc-solaris2.11/amd64/libjava/classpath/native/jni/java-math'
gmake[8]: Entering directory `/export/home/drkirkby/gcc-4.4.2/i386-pc-solaris2.11/amd64/libjava/classpath/native/jni'
/bin/sh ../../scripts/check_jni_methods.sh
gmake[8]: Leaving directory `/export/home/drkirkby/gcc-4.4.2/i386-pc-solaris2.11/amd64/libjava/classpath/native/jni'
gmake[7]: Leaving directory `/export/home/drkirkby/gcc-4.4.2/i386-pc-solaris2.11/amd64/libjava/classpath/native/jni'
gmake[7]: Entering directory `/export/home/drkirkby/gcc-4.4.2/i386-pc-solaris2.11/amd64/libjava/classpath/native'
gmake[7]: Nothing to be done for `all-am'.
gmake[7]: Leaving directory `/export/home/drkirkby/gcc-4.4.2/i386-pc-solaris2.11/amd64/libjava/classpath/native'
gmake[6]: Leaving directory `/export/home/drkirkby/gcc-4.4.2/i386-pc-solaris2.11/amd64/libjava/classpath/native'
Making all in resource
gmake[6]: Entering directory `/export/home/drkirkby/gcc-4.4.2/i386-pc-solaris2.11/amd64/libjava/classpath/resource'
gmake[6]: Nothing to be done for `all'.
gmake[6]: Leaving directory `/export/home/drkirkby/gcc-4.4.2/i386-pc-solaris2.11/amd64/libjava/classpath/resource'
Making all in scripts
gmake[6]: Entering directory `/export/home/drkirkby/gcc-4.4.2/i386-pc-solaris2.11/amd64/libjava/classpath/scripts'
gmake[6]: Nothing to be done for `all'.
gmake[6]: Leaving directory `/export/home/drkirkby/gcc-4.4.2/i386-pc-solaris2.11/amd64/libjava/classpath/scripts'
Making all in tools
gmake[6]: Entering directory `/export/home/drkirkby/gcc-4.4.2/i386-pc-solaris2.11/amd64/libjava/classpath/tools'
Makefile:839: warning: overriding commands for target `gjdoc'
Makefile:774: warning: ignoring old commands for target `gjdoc'
find ../../../../.././libjava/classpath/tools/external/asm -name '*.java' -print > asm.lst
find ../../../../.././libjava/classpath/tools/gnu/classpath/tools \
	     ../../../../.././libjava/classpath/tools/com/sun/javadoc \
	     ../../../../.././libjava/classpath/tools/com/sun/tools/doclets \
	     ../../../../.././libjava/classpath/tools/com/sun/tools/javadoc \
	     ../../../../.././libjava/classpath/tools/com/sun/tools/javac \
	     ../../../../.././libjava/classpath/tools/com/sun/tools/javah \
	     ../../../../.././libjava/classpath/tools/sun/rmi/rmic \
	     -path '*gnu/classpath/tools/gjdoc' -prune -o -path '*gnu/classpath/tools/doclets' -prune -o -path '*gnu/classpath/tools/taglets' -prune -o -path '*com/sun/javadoc' -prune -o -path '*com/sun/tools/doclets' -prune -o -path '*com/sun/tools/javadoc' -prune -o \
	     -name '*.java' -print > classes.lst
find: bad option -path
find: [-H | -L] path-list predicate-list
gmake[6]: *** [tools.zip] Error 1
gmake[6]: Leaving directory `/export/home/drkirkby/gcc-4.4.2/i386-pc-solaris2.11/amd64/libjava/classpath/tools'
gmake[5]: *** [all-recursive] Error 1
gmake[5]: Leaving directory `/export/home/drkirkby/gcc-4.4.2/i386-pc-solaris2.11/amd64/libjava/classpath'
gmake[4]: *** [all-recursive] Error 1
gmake[4]: Leaving directory `/export/home/drkirkby/gcc-4.4.2/i386-pc-solaris2.11/amd64/libjava'
gmake[3]: *** [multi-do] Error 1
gmake[3]: Leaving directory `/export/home/drkirkby/gcc-4.4.2/i386-pc-solaris2.11/libjava'
gmake[2]: *** [all-multi] Error 2
gmake[2]: Leaving directory `/export/home/drkirkby/gcc-4.4.2/i386-pc-solaris2.11/libjava'
gmake[1]: *** [all-target-libjava] Error 2
gmake[1]: Leaving directory `/export/home/drkirkby/gcc-4.4.2'
gmake: *** [all] Error 2

There is no '-path' option on Sun's find. I just checked the both the 2004

http://www.opengroup.org/onlinepubs/009695399/
and 2008
http://www.opengroup.org/onlinepubs/9699919799/

POSIX standards, and see no mention of a -path option. Is this a GNUism that has slipped though the net? Is there any chance of it being removed, so making the gcc more portable? GCC is never easy to build on Solaris, but it will be more difficult if non-POSIX options are used to standard commands. 

PS, I'm never sure what is meant by the host/target/build triplet, but I guess you know what I mean here. I'm not cross-compiling. 

PPS, Since 'gcc' is used in the Sage maths project, if a *serious* gcc developer wants access to Sun hardware (both SPARC and x86), I can arrange this. Drop me a private email, telling me your role in gcc development. 

Dave
Comment 1 Andrew Pinski 2009-11-01 21:10:36 UTC

*** This bug has been marked as a duplicate of 38715 ***