On Aug 23 23:55:51, h...@stare.cz wrote: > > > cc [...] -o .libs/sox sox.o -L./.libs -lsox -L/usr/local/lib -lpng [...] > > > cc [...] -o .libs/sox sox.o -L/usr/local/lib -L./.libs -lsox -lpng [...] > > > > > > The first works, the second does not. > > > The only difference between the two is the place > > > where the extra -L/usr/local/lib gets added, > > > as described in the previous emails. > > And it seems libtool itself is the one who breaks it. > This is the failing line again: > > /bin/sh ../libtool --tag=CC --mode=link cc -g -O2 > -fstack-protector-strong -Wall -Wmissing-prototypes -Wstrict-prototypes > -avoid-version -module -L/usr/local/lib -Wl,--as-needed -o sox sox.o > libsox.la -lm > > Notice the "-L/usr/local/lib -Wl,--as-needed". > The "-L/usr/local/lib" part comes from the configure arg: > > ./configure CC=cc CPPFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib > > The "-Wl,--as-needed" comes from > > $ grep as-needed configure.ac > AX_APPEND_LINK_FLAGS([-Wl,--as-needed]) > > That results in the following line in src/Makefile: > > LDFLAGS = -L/usr/local/lib -Wl,--as-needed > > and that's what is passed in the above command line. Now, libtool > apparently preprocesses the line into something else; in particular, > it reorders the options. The very next command is: > > libtool: link: cc -g -O2 -fstack-protector-strong -Wall -Wmissing-prototypes > -Wstrict-prototypes -Wl,--as-needed -o .libs/sox sox.o -L/usr/local/lib > -L./.libs -lsox -lpng -lltdl -lao -lgsm -lmad -lmp3lame -ltwolame -lid3tag > -lz -lopusfile -lopus -lsndio -lvorbisfile -lwavpack -lcrypto -lsndfile > -lFLAC -lvorbisenc -lvorbis -logg -lm -Wl,-rpath,/usr/local/lib > > Notice where the -L/usr/local/lib has been moved. > As described previously, if it comes after -lsox > instead of before it, it links just fine.
That being said, the same problem is present in the master branch, but it works in 14.4.2, where the libtool line is bin/sh ../libtool --silent --tag=CC --silent --mode=link cc -Wtraditional-co nversion -g -O2 -fstack-protector -Wall -W -Wmissing-prototypes -Wstrict-protot ypes -pedantic -avoid-version -module -L/usr/local/lib -o sox sox.o libsox.la -lm which becomes (without 'silent') libtool: link: cc -Wtraditional-conversion -g -O2 -fstack-protector -Wall -W -Wmissing-prototypes -Wstrict-prototypes -pedantic -o .libs/sox sox.o -L/usr/local/lib -L./.libs -lsox -lltdl -lpng -lao -lgsm -lmad -lid3tag -lz -lmp3lame -ltwolame -lopusfile -lopus -lsndio -lvorbisfile -lwavpack -lcrypto -lsndfile -lFLAC -lvorbisenc -lvorbis -logg -lm -Wl,-rpath,/home/hans/lib -Wl,-rpath,/usr/local/lib _______________________________________________ SoX-devel mailing list SoX-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/sox-devel