<div dir="ltr"><div><div><div><div><div><div>I'm compiling on Solaris with the SunStudio 12.3 compilers.<br><br></div>The recipie is:<br><br> cd /var/tmp<br> rm -rf pixman-0.30.2<br> untgz /usr/local/src/graphics/pixman-0.30.2.tar.gz<br>
cd pixman-0.30.2<br> ./configure --prefix=/usr/local \<br> --disable-mmx \<br> --disable-vmx \<br> --disable-sse2 \<br> --disable-silent-rules \<br> --disable-gcc-inline-asm<br> gmake<br>
<br></div>What happens is these errors show up:<br><br>DEPDIR=.deps depmode=none /bin/sh ../depcomp \<br>cc -DHAVE_CONFIG_H -I. -I.. -I../pixman -I../pixman -I/usr/local/include/libpng16 -xopenmp -O -g -xldscope=hidden -c prng-test.c<br>
/bin/sh ../libtool --tag=CC --mode=link cc -xopenmp -O -g -xldscope=hidden -xopenmp -o prng-test prng-test.o <a href="http://libutils.la">libutils.la</a> ../pixman/<a href="http://libpixman-1.la">libpixman-1.la</a> -lm -L/usr/local/lib -lpng16 -lm <br>
libtool: link: cc -xopenmp -O -g -xldscope=hidden -xopenmp -o .libs/prng-test prng-test.o ./.libs/libutils.a ../pixman/.libs/libpixman-1.so -L/usr/local/lib /usr/local/lib/libpng16.so -lz -lcurses -lm -xopenmp -R/usr/local/lib<br>
Undefined first referenced<br> symbol in file<br>global_implementation prng-test.o<br>_pixman_choose_implementation prng-test.o<br>ld: fatal: symbol referencing errors. No output written to .libs/prng-test<br>
gmake[2]: *** [prng-test] Error 2<br>gmake[2]: Leaving directory `/var/tmp/pixman-0.30.2/test'<br>gmake[1]: *** [all-recursive] Error 1<br>gmake[1]: Leaving directory `/var/tmp/pixman-0.30.2'<br>gmake: *** [all] Error 2<br>
<br><br></div>because of this library symbol being local, not global:<br><br>host:/var/tmp/pixman-0.30.2/pixman/.libs root# nm -g libpixman-1.so.0.30.2 | grep global<br>host:/var/tmp/pixman-0.30.2/pixman/.libs root# nm libpixman-1.so.0.30.2 | grep global<br>
[59] | 577936| 4|OBJT |LOCL |2 |25 |global_implementation<br><br><br></div>Removing hidden symbol flags before running configure results in a clean compile.<br><br> perl -pe 's#-xldscope=hidden##' -i configure<br>
<br></div>Is pixman just too zealous with limiting the symbol scope?<br><br></div>ta,<br>Mark.<br></div>