Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 484114

Summary: dev-db/sqlite-3.7.17 - ld: /usr/bin: file not recognized: Is a directory
Product: Gentoo Linux Reporter: Peter Fox <gentoo>
Component: [OLD] LibraryAssignee: Arfrever Frehtes Taifersar Arahesis <arfrever.fta>
Status: RESOLVED DUPLICATE    
Severity: normal CC: proxy-maint
Priority: Normal    
Version: unspecified   
Hardware: AMD64   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: sqlite build.log using internally generated libtool (fails to build)
sqlite build.log using system libtool (works)
emerge --info on the failing machine
sqlite internally generated libtool
sqlite environment using internally generated libtool (fails to build)

Description Peter Fox 2013-09-07 17:16:19 UTC
emerge sqlite fails due to the internally produced libtool on one of my machines only.

If I replace package's libtool with the system libtool the package compiles correctly:
cd /usr/portage/dev-db/sqlite
ebuild sqlite.7.17 configure
cd /var/tmp/portage/dev-db/sqlite-3.7.17/work/sqlite-autoconf-3071700
rm libtool
ln -s /usr/bin/libtool .
cd /usr/portage/dev-db/sqlite
ebuild sqlite.7.17 merge



Reproducible: Always

Steps to Reproduce:
1. emerge sqlite
2.
3.
Actual Results:  
Fails to build:
./libtool --mode=link x86_64-pc-linux-gnu-gcc  -DSQLITE_SOUNDEX  -march=nocona -O2 -pipe -DSQLITE_OS_UNIX=1 -I. -I./src -I./ext/rtree -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite -DNDEBUG  -I/usr/include -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_FTS4_UNICODE61 -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_ENABLE_ICU   -Wl,-O1 -Wl,--as-needed  -o libtclsqlite3.la tclsqlite.lo \
        libsqlite3.la -ltclstub8.5 -ldl -lpthread  -licui18n -licuuc \
        -rpath "/usr/lib64/sqlite-3.7.17" \
        -version-info "8:6:8" \
        -avoid-version
libtool: link: x86_64-pc-linux-gnu-gcc -shared  .libs/tclsqlite.o   -Wl,-rpath -Wl,/var/tmp/portage/dev-db/sqlite-3.7.17/work/sqlite-src-3071700/.libs ./.libs/libsqlite3.so /usr/bin /usr/sbin /bin /sbin -ltclstub8.5 -ldl -lpthread -licui18n -licuuc  -march=nocona -Wl,-O1 -Wl,--as-needed   -Wl,-soname -Wl,libtclsqlite3.so -o .libs/libtclsqlite3.so
libtool: link: x86_64-pc-linux-gnu-gcc -DSQLITE_SOUNDEX -march=nocona -O2 -pipe -DSQLITE_OS_UNIX=1 -I. -I./src -I./ext/rtree -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite -DNDEBUG -I/usr/include -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_FTS4_UNICODE61 -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_ENABLE_ICU -Wl,-O1 -Wl,--as-needed -DHAVE_READLINE=1 -I/usr/include/readline -o .libs/sqlite3 ./src/shell.c  ./.libs/libsqlite3.so -lreadline -lncurses -ldl -lpthread -licui18n -licuuc -Wl,-rpath -Wl,/usr/lib64
/usr/bin: file not recognized: Is a directory
collect2: ld returned 1 exit status
make: *** [libtclsqlite3.la] Error 1
make: *** Waiting for unfinished jobs....
 * ERROR: dev-db/sqlite-3.7.17 failed (compile phase):
 *   emake failed


Expected Results:  
Successful merge.

I'm installing a new 64 bit system on a core2 machine.
I shall attach the build.log for the package's libtool (fails) and the system libtool (works) as well as the faulty libtool and emerge --info
Comment 1 Peter Fox 2013-09-07 17:17:28 UTC
Created attachment 358190 [details]
sqlite build.log using internally generated libtool (fails to build)
Comment 2 Peter Fox 2013-09-07 17:18:15 UTC
Created attachment 358192 [details]
sqlite build.log using system libtool (works)
Comment 3 Peter Fox 2013-09-07 17:19:23 UTC
Created attachment 358194 [details]
emerge --info on the failing machine
Comment 4 Peter Fox 2013-09-07 17:20:23 UTC
Created attachment 358196 [details]
sqlite internally generated libtool
Comment 5 Peter Fox 2013-09-07 17:24:06 UTC
The previous version of sqlite (sqlite-3.7.16,2) did the same.

My other core2 machine is running x86 and is ok.

I have an AMD machine running 64 bit and it is also ok.

I have only seen the problem with intel 64 bit, which is based on stage3-amd64-20130822.tar.bz2, if that's relevant.
Comment 6 Arfrever Frehtes Taifersar Arahesis 2013-09-07 19:01:08 UTC
Attach /var/tmp/portage/dev-db/sqlite-3.7.17/temp/environment
Comment 7 Rafał Mużyło 2013-09-07 23:51:43 UTC
...could this be the standard SysRescueCD failure ?
You know, a dupe of bug 271942.
Comment 8 Peter Fox 2013-09-07 23:53:04 UTC
Created attachment 358224 [details]
sqlite environment using internally generated libtool (fails to build)

Emerging gnome, I find dev-cpp/glibmm-2.32.1 fails in a very similar way:

libtool: link: x86_64-pc-linux-gnu-g++ -shared -nostdlib /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.3/../../../../lib64/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.3/crtbeginS.o  .libs/action.o .libs/actiongroup.o .libs/actionmap.o .libs/applaunchcontext.o .libs/appinfo.o .libs/application.o .libs/applicationcommandline.o .libs/asyncinitable.o .libs/asyncresult.o .libs/bufferedinputstream.o .libs/bufferedoutputstream.o .libs/cancellable.o .libs/credentials.o .libs/datainputstream.o .libs/dataoutputstream.o .libs/dbusactiongroup.o .libs/dbusaddress.o .libs/dbusauthobserver.o .libs/dbusconnection.o .libs/dbuserror.o .libs/dbuserrorutils.o .libs/dbusinterface.o .libs/dbusinterfacevtable.o .libs/dbusintrospection.o .libs/dbusmenumodel.o .libs/dbusmessage.o .libs/dbusmethodinvocation.o .libs/dbusobject.o .libs/dbusownname.o .libs/dbusproxy.o .libs/dbusserver.o .libs/dbussubtreevtable.o .libs/dbusutils.o .libs/dbuswatchname.o .libs/drive.o .libs/emblem.o .libs/emblemedicon.o .libs/enums.o .libs/error.o .libs/file.o .libs/fileattributeinfo.o .libs/fileattributeinfolist.o .libs/fileenumerator.o .libs/fileicon.o .libs/fileinfo.o .libs/fileinputstream.o .libs/fileiostream.o .libs/filemonitor.o .libs/filenamecompleter.o .libs/fileoutputstream.o .libs/filterinputstream.o .libs/filteroutputstream.o .libs/icon.o .libs/inetaddress.o .libs/inetsocketaddress.o .libs/initable.o .libs/inputstream.o .libs/iostream.o .libs/loadableicon.o .libs/memoryinputstream.o .libs/memoryoutputstream.o .libs/menuattributeiter.o .libs/menulinkiter.o .libs/menu.o .libs/menuitem.o .libs/menumodel.o .libs/mount.o .libs/mountoperation.o .libs/networkaddress.o .libs/networkservice.o .libs/outputstream.o .libs/proxy.o .libs/proxyaddress.o .libs/proxyresolver.o .libs/remoteactiongroup.o .libs/resolver.o .libs/seekable.o .libs/settings.o .libs/simpleaction.o .libs/simpleactiongroup.o .libs/socket.o .libs/socketaddress.o .libs/socketaddressenumerator.o .libs/socketclient.o .libs/socketconnectable.o .libs/socketconnection.o .libs/socketcontrolmessage.o .libs/socketlistener.o .libs/socketservice.o .libs/srvtarget.o .libs/tcpconnection.o .libs/threadedsocketservice.o .libs/themedicon.o .libs/volume.o .libs/volumemonitor.o .libs/desktopappinfo.o .libs/unixconnection.o .libs/unixcredentialsmessage.o .libs/unixfdlist.o .libs/unixfdmessage.o .libs/unixinputstream.o .libs/unixoutputstream.o .libs/unixsocketaddress.o .libs/wrap_init.o .libs/contenttype.o .libs/init.o .libs/slot_async.o   -Wl,-rpath -Wl,/var/tmp/portage/dev-cpp/glibmm-2.32.1/work/glibmm-2.32.1/glib/glibmm/.libs -Wl,--as-needed -lgio-2.0 ../../glib/glibmm/.libs/libglibmm-2.4.so /usr/bin /usr/sbin /bin /sbin -lsigc-2.0 -lgobject-2.0 -lgmodule-2.0 -lrt -lglib-2.0 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.6.3 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.6.3/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.6.3/../../../../x86_64-pc-linux-gnu/lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.6.3/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.3/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.3/../../../../lib64/crtn.o  -march=nocona -Wl,-O1 -Wl,--export-dynamic -pthread   -pthread -Wl,-soname -Wl,libgiomm-2.4.so.1 -o .libs/libgiomm-2.4.so.1.3.0
/usr/bin: file not recognized: Is a directory
collect2: ld returned 1 exit status
make[2]: *** [libgiomm-2.4.la] Error 1
make[2]: Leaving directory `/var/tmp/portage/dev-cpp/glibmm-2.32.1/work/glibmm-2.32.1/gio/giomm'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/dev-cpp/glibmm-2.32.1/work/glibmm-2.32.1'
make: *** [all] Error 2
 * ERROR: dev-cpp/glibmm-2.32.1 failed (compile phase):
 *   emake failed

Do you want to look at this as well?
As part of this bug, or another?
Comment 9 Peter Fox 2013-09-07 23:59:17 UTC
It's interesting that you mention sysrescuecd: I'm building from systemrescuecd-x86-3.4.1.iso running on a usb key.

The other thing I noticed was that the package generated libtool would succeed if I remover the -rpath component of the command line, ie:

./libtool --mode=link x86_64-pc-linux-gnu-gcc  -DSQLITE_SOUNDEX  -march=nocona -O2 -pipe -DSQLITE_OS_UNIX=1 -I. -I./src -I./ext/rtree -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite -DNDEBUG  -I/usr/include -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_FTS4_UNICODE61 -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_ENABLE_ICU   -Wl,-O1 -Wl,--as-needed  -o libtclsqlite3.la tclsqlite.lo \
	libsqlite3.la -ltclstub8.5 -ldl -lpthread  -licui18n -licuuc \
	-version-info "8:6:8" \
	-avoid-version

instead of: 

./libtool --mode=link x86_64-pc-linux-gnu-gcc  -DSQLITE_SOUNDEX  -march=nocona -O2 -pipe -DSQLITE_OS_UNIX=1 -I. -I./src -I./ext/rtree -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite -DNDEBUG  -I/usr/include -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_FTS4_UNICODE61 -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_UNLOCK_NOTIFY -DSQLITE_ENABLE_ICU   -Wl,-O1 -Wl,--as-needed  -o libtclsqlite3.la tclsqlite.lo \
	libsqlite3.la -ltclstub8.5 -ldl -lpthread  -licui18n -licuuc \
	-rpath "/usr/lib64/sqlite-3.7.17" \
	-version-info "8:6:8" \
	-avoid-version
Comment 10 Peter Fox 2013-09-08 00:21:14 UTC
It is a dupe of bug 271942. If I chroot using the following commands it works:

chroot /mnt/gentoo /usr/bin/env -i /bin/bash
env-update
. /etc/profile
emerge sqlite

Perhaps the quick install guide 'Listing 2.14 chroot' and install guide ch6 'Listing 1.5 Chrooting into the new environment' could be updated to mention this when installing from a system rescue disk (and perhaps other non-gentoo boot images), as using a system rescue cd is widely suggested as a good route to installing gentoo?
Comment 11 Arfrever Frehtes Taifersar Arahesis 2013-09-08 11:23:11 UTC

*** This bug has been marked as a duplicate of bug 271942 ***