Paul Pluzhnikov wrote: > "Paulo Matos" <[EMAIL PROTECTED]> writes: > > > Any ideas on how can I know if the code is linked as shared or as > > static? > > What's the link command line? > > Add to it '-Wl,--verbose' and you'll see which libraries the linker > is actually using. > > You can also easily verify my guess (that the objects you expect > aren't actually linked in): > > - edit one of the sources that "fails to register", add: > > void function_that_is_never_called() { } > > - rebuild > - run > > nm your_exe | grep function_that_is_never > > If the output is nothing, my guess is corect. > If you get > > <some-hex-number> T function_that_is... > > then my guess is wrong. >
Your guess is correct. Verbose output from linker is wierd: After the .o files: ttempt to open ../lib/bf/src/.libs/libbf.a succeeded attempt to open ../lib/ot/src/.libs/libot.a succeeded attempt to open ../lib/fm/src/.libs/libfm.a succeeded attempt to open ../lib/glpkinterface/src/.libs/libglpkinterface.a succeeded attempt to open /usr/i686-pc-linux-gnu/bin/libglpk.so failed attempt to open /usr/i686-pc-linux-gnu/bin/libglpk.a failed attempt to open /usr/i686-pc-linux-gnu/lib/libglpk.so failed attempt to open /usr/i686-pc-linux-gnu/lib/libglpk.a failed attempt to open /usr/lib/gcc/i686-pc-linux-gnu/../../../i686-pc-linux-gnu/lib/libglpk.so failed attempt to open /usr/lib/gcc/i686-pc-linux-gnu/../../../i686-pc-linux-gnu/lib/libglpk.a failed attempt to open /usr/lib/gcc/i686-pc-linux-gnu/4.0.2/libglpk.so failed attempt to open /usr/lib/gcc/i686-pc-linux-gnu/4.0.2/libglpk.a failed attempt to open /usr/lib/gcc/i686-pc-linux-gnu/4.0.2/libglpk.so failed attempt to open /usr/lib/gcc/i686-pc-linux-gnu/4.0.2/libglpk.a failed attempt to open /usr/lib/gcc/i686-pc-linux-gnu/4.0.2/../../../../i686-pc-linux-gnu/lib/libglpk.so faile attempt to open /usr/lib/gcc/i686-pc-linux-gnu/4.0.2/../../../../i686-pc-linux-gnu/lib/libglpk.a failed attempt to open /usr/lib/gcc/i686-pc-linux-gnu/4.0.2/../../../libglpk.so failed attempt to open /usr/lib/gcc/i686-pc-linux-gnu/4.0.2/../../../libglpk.a succeeded attempt to open ../lib/ncquest/src/.libs/libncquest.a succeeded attempt to open /usr/lib/gcc/i686-pc-linux-gnu/4.0.2/libstdc++.so succeeded /usr/lib/gcc/i686-pc-linux-gnu/4.0.2/libstdc++.so attempt to open /usr/lib/liblog4cpp.so succeeded /usr/lib/liblog4cpp.so .... and it goes on. The first lines are the libtool libraries that it should be linking and that doesn't seem to be happening... right? Why? I'm using the -static flag, what's the problem? Last lines before linker are: /bin/sh ../libtool --tag=CXX --mode=link g++ -ggdb -Wall -std=c++98 -static -Wl,--verbose -o extsat esatmathcluster.o esatmath.o esatmoduledispatcher.o esatstatistics.o esattrue.o esatvariable.o esatcoeflist.o esatfalse.o esatbooleanop.o esateqt.o esatbooleanvar.o esatineqsystem.o esatcodegen.o graph.o esatefficientcharstr.o graphdense.o vartable.o graphsparse.o esatstring.o esatsysutils.o esatargumentsparser.o esator.o esatequiv.o esatand.o esatboolite.o esatopcreate.o esatnot.o esatxor.o esatimplies.o esatenumerator.o smt-parser.o smt-lexer.o esatfile.o esatsolver.o esatmodel.o esatcluster.o extsat.o esatlogger.o ../lib/bf/src/libbf.la ../lib/ot/src/libot.la ../lib/fm/src/libfm.la ../lib/glpkinterface/src/libglpkinterface.la ../lib/ncquest/src/libncquest.la -lm -lnsl -llog4cpp mkdir .libs g++ -ggdb -Wall -std=c++98 -Wl,--verbose -o extsat esatmathcluster.o esatmath.o esatmoduledispatcher.o esatstatistics.o esattrue.o esatvariable.o esatcoeflist.o esatfalse.o esatbooleanop.o esateqt.o esatbooleanvar.o esatineqsystem.o esatcodegen.o graph.o esatefficientcharstr.o graphdense.o vartable.o graphsparse.o esatstring.o esatsysutils.o esatargumentsparser.o esator.o esatequiv.o esatand.o esatboolite.o esatopcreate.o esatnot.o esatxor.o esatimplies.o esatenumerator.o smt-parser.o smt-lexer.o esatfile.o esatsolver.o esatmodel.o esatcluster.o extsat.o esatlogger.o ../lib/bf/src/.libs/libbf.a -L/usr/i686-pc-linux-gnu/bin -L/usr/i686-pc-linux-gnu/lib -L/usr/lib/gcc/i686-pc-linux-gnu/../../../i686-pc-linux-gnu/lib ../lib/ot/src/.libs/libot.a ../lib/fm/src/.libs/libfm.a ../lib/glpkinterface/src/.libs/libglpkinterface.a -lglpk ../lib/ncquest/src/.libs/libncquest.a /usr/lib/gcc/i686-pc-linux-gnu/4.0.2/libstdc++.so -lm /usr/lib/liblog4cpp.so -lnsl Any ideas on where the problem might be? Thanks, Paulo Matos > Cheers, > -- > In order to understand recursion you must first understand recursion. > Remove /-nsp/ for email. _______________________________________________ help-gplusplus mailing list help-gplusplus@gnu.org http://lists.gnu.org/mailman/listinfo/help-gplusplus