compilation does not handle with-libdir correctly
mokraemer opened this issue · 7 comments
/usr/local is added:
./configure --host=x86_64-mageia-linux-gnu --build=x86_64-mageia-linux-gnu --program-prefix= --disable-dependency-tracking --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-libzstd --with-libdir=lib64 --enable-zstd=shared,/usr
results in
cc -shared -Wl,--as-needed .libs/zstd.o -Wl,--as-needed -Wl,-z -Wl,relro -Wl,-O1 -Wl,--build-id=sha1 -Wl,--enable-new-dtags -Wl,-rpath -Wl,/usr/local/lib -L/usr/local/lib -lzstd -Wl,-soname -Wl,zstd.so -o .libs/zstd.so creating zstd.la
and should be /usr/lib64.
Should not happen... last version rely on pkg-config and doesn't accept path anymore...
configure (using --with-libzstd):
checking whether to enable zstd support... yes, shared
checking whether to use system zstd library... yes
checking for pkg-config... (cached) /usr/bin/x86_64-redhat-linux-gnu-pkg-config
checking for libzstd... from pkgconfig: version 1.5.2
build:
libtool: link: cc -shared -fPIC -DPIC .libs/zstd.o -lzstd -O2 -flto=auto -g -grecord-gcc-switches -fstack-protector-strong -m64 -mtune=generic -Wl,-z -Wl,relro -Wl,--as-needed -Wl,-z -Wl,now -Wl,-soname -Wl,zstd.so -o .libs/zstd.so
yes it does use pkgconfig. but is wrong....
here is the output
compile.txt
Sorry, some patch was applied (removed it). But without that patch all builds go to
/usr/local
even though --prefix=/usr --exec-prefix=/usr are specified.
updated compilation, no patches!
check output of pkg-config libzstd --libs --cflags
even though --prefix=/usr --exec-prefix=/usr are specified.
This have no value for php extension (inherited from php itself)
hmm, it looks like libzstd gives the wrong linker flags. Ok, I'll have to look why this changed.
Thx.
I think I can go one from here.
Thanks for your help / time.