View previous topic :: View next topic |
Author |
Message |
vutrankien n00b
Joined: 01 Aug 2010 Posts: 4 Location: Ho Chi Minh - Viet Nam
|
Posted: Thu May 24, 2012 5:17 am Post subject: icecream-create-env not run corectly due to ldd strange beha |
|
|
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 |
|
|
vutrankien n00b
Joined: 01 Aug 2010 Posts: 4 Location: Ho Chi Minh - Viet Nam
|
Posted: Thu May 24, 2012 4:13 pm Post subject: strange ldd behaviour |
|
|
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 |
|
|
GreatEmerald n00b
Joined: 06 Jun 2012 Posts: 18
|
Posted: Sat Sep 01, 2012 7:51 pm Post subject: |
|
|
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 |
|
|
vutrankien n00b
Joined: 01 Aug 2010 Posts: 4 Location: Ho Chi Minh - Viet Nam
|
Posted: Tue Sep 04, 2012 4:39 am Post subject: |
|
|
right, I did the same thing but I still can't figure out why ldd cannot detect those libraries? |
|
Back to top |
|
|
GreatEmerald n00b
Joined: 06 Jun 2012 Posts: 18
|
Posted: Tue Sep 04, 2012 7:07 am Post subject: |
|
|
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 |
|
|
|