Subject: pkg/37207: print/ghostscript fails to build on SPARC Solaris with gcc-4.2.2
To: None <pkg-manager@netbsd.org, gnats-admin@netbsd.org,>
From: None <raymond.meyer@rambler.ru>
List: pkgsrc-bugs
Date: 10/25/2007 13:05:01
>Number:         37207
>Category:       pkg
>Synopsis:       print/ghostscript fails to build on SPARC Solaris with gcc-4.2.2
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Oct 25 13:05:01 +0000 2007
>Originator:     raymond
>Release:        
>Organization:
>Environment:
SunOS ultra10 5.10 Generic_118833-33 sun4u sparc SUNW,Ultra-5_10
>Description:
The following error is produced

===> Building for ghostscript-8.60nb1
./obj/mkromfs -o ./obj/gsromfs.c -X .svn      -c -P ./lib/../Resource/ -d Resour
ce/ ColorSpace/ Decoding/ Font/ ProcSet/ IdiomSet/ CIDFont/ CMap/ -d lib/ -P ./o
bj/ gs_init.ps -P ./lib/ Fontmap cidfmap xlatmap FAPI FCOfontmap-PCLPS2 gs_cet.p
s
ld.so.1: mkromfs: fatal: libgcc_s.so.1: open failed: No such file or directory
gmake: *** [obj/gsromfs.c] Killed
*** Error code 2

Stop.
bmake: stopped in /opt/pkgsrc/print/ghostscript
*** Error code 1

>How-To-Repeat:

>Fix:
Link-editor cannot find libgcc_s.so.1 library when loading mkromfs executable, because this executable was compiled with the following command

gcc -DPNG_NO_ASSEMBLER_CODE -I/opt/pkg/include  -Wall -Wstrict-prototypes -Wmissing-declarations -Wmissing-prototypes -Wwrite-strings -Wno-strict-aliasing -fno-builtin -fno-common -DHAVE_STDINT_H -DGX_COLOR_INDEX_TYPE="unsigned long long" -O -DA4 -I/opt/pkg/include  -g -O -I./src -I./obj/ -Izlib ./src/mkromfs.c -o ./obj/mkromfs ./obj/compress.o ./obj/deflate.o ./obj/zutil.o ./obj/adler32.o ./obj/crc32.o ./obj/trees.o ./obj/gscdefs.o ./obj/gsmisc.o ./obj/gpmisc.o ./obj/gslibctx.o ./obj/gp_getnv.o ./obj/gp_unix.o ./obj/gp_unifs.o ./obj/gp_unifn.o ./obj/gp_stdia.o ./obj/gsutil.o -lm -ldl -lm  -lstdc++

Note that C (not C++) compiler is used and -lstdc++ library is linked. This is wrong, removing -lstdc++ from command arguments and rebuilding mkromfs fixes the problem