Closed motognere closed 3 years ago
Hi,
The issue doesn't occur if building libconfig in normal Ubuntu 16.04 system, except when I'm trying to build and install it in a docker container.
make all-recursive make[1]: Entering directory '/libconfig-1.4.5' Making all in lib make[2]: Entering directory '/libconfig-1.4.5/lib' make all-am make[3]: Entering directory '/libconfig-1.4.5/lib' /bin/bash ../libtool --tag=CXX --mode=link g++ -g -O2 -Wall -Wshadow -version-info 9:4:0 -no-undefined -o libconfig++.la -rpath /usr/local/lib libconfig___la-libconfig.lo libconfig___la-scanner.lo libconfig___la-grammar.lo libconfig___la-scanctx.lo libconfig___la-strbuf.lo libconfig___la-libconfigcpp.lo libtool: link: g++ -shared -nostdlib /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/5/crtbeginS.o .libs/libconfig___la-libconfig.o .libs/libconfig___la-scanner.o .libs/libconfig___la-grammar.o .libs/libconfig___la-scanctx.o .libs/libconfig___la-strbuf.o .libs/libconfig___la-libconfigcpp.o -L/usr/lib/gcc/x86_64-linux-gnu/5 -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/5/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-linux-gnu/5/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crtn.o -Wl,-soname -Wl,libconfig++.so.9 -o .libs/libconfig++.so.9.0.4 /usr/bin/ld: .libs/libconfig___la-libconfigcpp.o: relocation R_X86_64_32 against `_ZTVN9libconfig14ParseExceptionE' can not be used when making a shared object; recompile with -fPIC .libs/libconfig___la-libconfigcpp.o: error adding symbols: Bad value collect2: error: ld returned 1 exit status Makefile:386: recipe for target 'libconfig++.la' failed make[3]: *** [libconfig++.la] Error 1 make[3]: Leaving directory '/libconfig-1.4.5/lib' Makefile:311: recipe for target 'all' failed make[2]: *** [all] Error 2 make[2]: Leaving directory '/libconfig-1.4.5/lib' Makefile:331: recipe for target 'all-recursive' failed make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory '/libconfig-1.4.5' Makefile:258: recipe for target 'all' failed make: *** [all] Error 2
I suppose there probably some dependency missing in the Ubuntu in docker container? Look forward to any help.
Thanks.
Originally posted by @motognere in https://github.com/hyperrealm/libconfig/issues/145#issuecomment-839395009
The issue was fixed simply by run make clean before make.
make clean
make
Hi,
The issue doesn't occur if building libconfig in normal Ubuntu 16.04 system, except when I'm trying to build and install it in a docker container.
I suppose there probably some dependency missing in the Ubuntu in docker container? Look forward to any help.
Thanks.
Originally posted by @motognere in https://github.com/hyperrealm/libconfig/issues/145#issuecomment-839395009