Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
icecream-create-env not run corectly due to ldd strange beha
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Other Things Gentoo
View previous topic :: View next topic  
Author Message
vutrankien
n00b
n00b


Joined: 01 Aug 2010
Posts: 4
Location: Ho Chi Minh - Viet Nam

PostPosted: Thu May 24, 2012 5:17 am    Post subject: icecream-create-env not run corectly due to ldd strange beha Reply with quote

First thing happened: emerge a package failed with error in build.log:
Code:
gcc cannot create executable.

Looking deeper in config.log:
Code:
cc1: error while loading shared libraries: libmpc.so.2: cannot open shared object file: No such file or directory

That's only happened when somefile compile on other host with icecc.

After that I ran: icecream-create-env and it failed with:
Code:
Testing icecc environment...
cc1: error while loading shared libraries: libmpc.so.2: cannot open shared object file: No such file or directory

Creating icecc environment failed. Please see error message(s) above! The temporary directory is: /tmp/tmp.FHo7nsyEo1/

same as above.

Looking deeper in the directory I found that: ldd /tmp/tmp.FHo7nsyEo1/usr/bin/cc1 gives:
Code:
   linux-vdso.so.1 =>  (0x00007fff0c7f4000)
   libmpc.so.2 => /usr/lib64/libmpc.so.2 (0x00007fb3905ce000)
   libmpfr.so.4 => /usr/lib64/libmpfr.so.4 (0x00007fb390378000)
   libgmp.so.10 => /usr/lib64/libgmp.so.10 (0x00007fb390108000)
   libdl.so.2 => /lib64/libdl.so.2 (0x00007fb38ff04000)
   libz.so.1 => /lib64/libz.so.1 (0x00007fb38fcec000)
   libc.so.6 => /lib64/libc.so.6 (0x00007fb38f95e000)
   /lib64/ld-linux-x86-64.so.2 (0x00007fb3907e2000)


But running ldd /usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/cc1 gives:
Code:
not a dynamic executable

Hell, that makes icecream-create-env failed, because it rely on ldd to copy libraries.
So to figure out what's the two cc1 different, I ran cmp /tmp/tmp.FHo7nsyEo1/usr/bin/cc1 /usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/cc1 to see:
Code:
/tmp/tmp.FHo7nsyEo1/usr/bin/cc1 /usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/cc1 differ: char 15, line 1

Looking deeper with vimdiff, I saw that there's only one byte differ from eachother, like this:
http://farm8.staticflickr.com/7093/7260052594_0ec73658cb_b.jpg

Till then my head is about to smash the wall, from where do the 2 cc1 differ? And why they differ only 1 byte? May be somewhere in /usr/sbin/icecream-create-env or /usr/lib/icecc/icecream-create-env, but my ability is not enough...

Any idea guys?
Back to top
View user's profile Send private message
vutrankien
n00b
n00b


Joined: 01 Aug 2010
Posts: 4
Location: Ho Chi Minh - Viet Nam

PostPosted: Thu May 24, 2012 4:13 pm    Post subject: strange ldd behaviour Reply with quote

My question is: why does ldd say /usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/cc1 is not dynamic executable while obviously:
Code:
$ file /usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/cc1
/usr/libexec/gcc/x86_64-pc-linux-gnu/4.5.3/cc1: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped
Back to top
View user's profile Send private message
GreatEmerald
n00b
n00b


Joined: 06 Jun 2012
Posts: 16

PostPosted: Sat Sep 01, 2012 7:51 pm    Post subject: Reply with quote

I ran into the same problem on a i686 machine. Running "icecream-create-env", while root, results in:
Code:
cc1: error while loading shared libraries: libmpc.so.2: cannot open shared object file: No such file or directory


The error message is right, there is no libmpc.so.2 in the resulting .tar.gz file. I think that it would work if they were simply copied in, however.
Back to top
View user's profile Send private message
vutrankien
n00b
n00b


Joined: 01 Aug 2010
Posts: 4
Location: Ho Chi Minh - Viet Nam

PostPosted: Tue Sep 04, 2012 4:39 am    Post subject: Reply with quote

right, I did the same thing but I still can't figure out why ldd cannot detect those libraries?
Back to top
View user's profile Send private message
GreatEmerald
n00b
n00b


Joined: 06 Jun 2012
Posts: 16

PostPosted: Tue Sep 04, 2012 7:07 am    Post subject: Reply with quote

ldd can and does detect them, it's icecream-create-env that doesn't pack it in for some reason. So I think it's a bug in Gentoo's icecream package.
Also, copying in the missing files doesn't really do a whole lot, since when launched, iceccd insists on repacking the tarball, even if it's already defined in ICECC_VERSION, and once again fails in doing so. Sounds like another bug.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Other Things Gentoo All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum