tag 680058 pending
On Tue, 2012-07-03 at 11:23 +0200, Jakub Wilk wrote:
> Source: kyotocabinet
> Version: 1.2.76-2
> Severity: serious
> Justification: fails to build from source
>
> If gcc-multilib is installed on an i386 system, kyotocabinet FTBFS:
> | if uname -a | egrep -i 'SunOS' > /dev/null ; \
> | then \
> | g++ -m64 -g -O2 -fstack-protector --param=ssp-buffer-size=4
> -Wformat -Werror=format-security -Wall -fPIC -fsigned-char -g0 -O2
> -Wno-unused-but-set-variable -Wno-unused-but-set-parameter -shared
> -Wl,-G,-h,libkyotocabinet.so.16 -o libkyotocabinet.so.16.13.0 \
> | kcutil.o kcthread.o kcfile.o kccompress.o kccompare.o kcmap.o
> kcregex.o kcdb.o kcplantdb.o kcprotodb.o kcstashdb.o kccachedb.o kchashdb.o
> kcdirdb.o kctextdb.o kcpolydb.o kcdbext.o kclangc.o -Wl,-z,relro -L.
> -L/usr/lib/i386-linux-gnu -L/usr/local/lib
> -Wl,-rpath-link,.:/usr/local/lib:.:/usr/local/lib: -Wl,--as-needed -llzma
> -llzo2 -lz -lstdc++ -lrt -lpthread -lm -lc ; \
> | else \
> | g++ -m64 -g -O2 -fstack-protector --param=ssp-buffer-size=4
> -Wformat -Werror=format-security -Wall -fPIC -fsigned-char -g0 -O2
> -Wno-unused-but-set-variable -Wno-unused-but-set-parameter -shared
> -Wl,-soname,libkyotocabinet.so.16 -o libkyotocabinet.so.16.13.0 \
> | kcutil.o kcthread.o kcfile.o kccompress.o kccompare.o kcmap.o
> kcregex.o kcdb.o kcplantdb.o kcprotodb.o kcstashdb.o kccachedb.o kchashdb.o
> kcdirdb.o kctextdb.o kcpolydb.o kcdbext.o kclangc.o -Wl,-z,relro -L.
> -L/usr/lib/i386-linux-gnu -L/usr/local/lib
> -Wl,-rpath-link,.:/usr/local/lib:.:/usr/local/lib: -Wl,--as-needed -llzma
> -llzo2 -lz -lstdc++ -lrt -lpthread -lm -lc ; \
> | fi
> | /usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/liblzma.so when
> searching for -llzma
> | /usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/liblzma.a when
> searching for -llzma
> | /usr/bin/ld: cannot find -llzma
> | /usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/liblzo2.so when
> searching for -llzo2
> | /usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/liblzo2.a when
> searching for -llzo2
> | /usr/bin/ld: cannot find -llzo2
> | /usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/libz.so when
> searching for -lz
> | /usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/libz.a when
> searching for -lz
> | /usr/bin/ld: cannot find -lz
> | /usr/bin/ld: skipping incompatible
> /usr/lib/gcc/i486-linux-gnu/4.7/libstdc++.so when searching for -lstdc++
> | /usr/bin/ld: skipping incompatible
> /usr/lib/gcc/i486-linux-gnu/4.7/libstdc++.a when searching for -lstdc++
> | /usr/bin/ld: cannot find -lstdc++
> | /usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/librt.so when
> searching for -lrt
> | /usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/librt.a when
> searching for -lrt
> | /usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/libpthread.so
> when searching for -lpthread
> | /usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/libpthread.a
> when searching for -lpthread
> | collect2: error: ld returned 1 exit status
> | make[1]: *** [libkyotocabinet.so.16.13.0] Error 1
>
> It's apparently because the configure script assumes that if it's
> possible built a program using -m64, then it's the right thing to build
> the library using this option:
>
> | printf 'checking for 64-bit availability... '
> | if printf 'main() {}' | $CC -xc -m64 -o config.tmp - >config.tmp 2>&1
> | then
> | MYCFLAGS="-m64 $MYCFLAGS"
> | MYCXXFLAGS="-m64 $MYCXXFLAGS"
> | printf 'yes\n'
> | else
> | printf 'no\n'
> | fi
>
> This is of course flawed assumption.
>
I stared at this part of the control file so much I should have
understood the implications of that line. Thanks for doing some QA on my
package.
Anyways, I've uploaded to mentors a new version that fixes this.
kyotocabinet (1.2.76-4) unstable; urgency=low
* use breaks/replaces for smooth upgrades fallowing man page move -doc
--> -utils
* do not unconditionally use -m64 when available (Closes: #680058)
* obey DEB_BUILD_OPTIONS=noopt of Policy 4.9.1
-- Shawn Landden <[email protected]> Tue, 03 Jul 2012 08:54:59
-0700
--
-Shawn Landden
--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]