View previous topic :: View next topic |
Author |
Message |
LeeJunFan n00b
Joined: 19 Sep 2006 Posts: 21 Location: Holland
|
Posted: Thu Oct 31, 2013 9:42 am Post subject: gcc: "cannot find -lz cannot find -lcrypto" |
|
|
Hello,
I'm having a hard time getting some 'old' software compiled. To cut a long story short. GCC says "cannot find -lz" and "cannot find -lcrypto".
This happened to me before, but as far as I know, that was simply solved by emerging libcrypto.
But not anymore!
I re-emerged libcrypto++ (where is the normal libcrypto?),
I re-emerged libtool,
I re-emerged gcc,
I emerge zlib,
gcc-config is set to: x86_64-pc-linux-gnu-4.7.3
I added zlib to the USE-variables in /etc/portage/make.conf.
So far no success.
Anybody an idea how to solve this issue?
Thanks in advance... _________________ The great mistake is to anticipate the outcome of the engagement; Let nature take it's course, and your tools will strike at the right moment. |
|
Back to top |
|
|
eyoung100 Veteran
Joined: 23 Jan 2004 Posts: 1428
|
|
Back to top |
|
|
LeeJunFan n00b
Joined: 19 Sep 2006 Posts: 21 Location: Holland
|
Posted: Thu Oct 31, 2013 4:05 pm Post subject: |
|
|
Nope
Although I didn't say. Tried this already.
Now tried it again: Same error: "cannot find -lz" and "cannot find -lcrypto" _________________ The great mistake is to anticipate the outcome of the engagement; Let nature take it's course, and your tools will strike at the right moment. |
|
Back to top |
|
|
eyoung100 Veteran
Joined: 23 Jan 2004 Posts: 1428
|
Posted: Thu Oct 31, 2013 4:14 pm Post subject: |
|
|
LeeJunFan wrote: | Nope
Although I didn't say. Tried this already.
Now tried it again: Same error: "cannot find -lz" and "cannot find -lcrypto" |
What is the old software
If you emerge gentoolkit, it contains equery:
Code: | equery belongs /usr/lib/libcrypto.so*
dev-libs/openssl-1.0.1e-r1(/usr/lib64/libcrypto.so.1.0.0)
equery belongs /usr/lib/libz*
sys-libs/zlib-1.2.7 (/usr/lib64/libz.a)
sys-libs/zlib1.2.7(/usr/lib64/libz.so) |
You may need to manually edit the software's configure script to point to the new library location if the old software is not in portage _________________ The Birth and Growth of Science is the Death and Atrophy of Art -- Unknown
Registerd Linux User #363735
Adopt a Post | Strip Comments| Emerge Wrapper
Last edited by eyoung100 on Thu Oct 31, 2013 4:50 pm; edited 1 time in total |
|
Back to top |
|
|
VoidMage Watchman
Joined: 14 Oct 2006 Posts: 6196
|
Posted: Thu Oct 31, 2013 4:46 pm Post subject: |
|
|
How about putting a build log with such failure in a pastebin ? |
|
Back to top |
|
|
LeeJunFan n00b
Joined: 19 Sep 2006 Posts: 21 Location: Holland
|
Posted: Fri Nov 01, 2013 5:45 pm Post subject: |
|
|
@eyoung100
The software that I'm trying to compile is rdd-copy, version 2.0.7.
(http://sourceforge.net/projects/rdd/files/rdd/2.0.7/)
Then the equery-output:
Code: |
# equery belongs /usr/lib/libcrypto.so*
* Searching for /usr/lib/libcrypto.so,/usr/lib/libcrypto.so.1.0.0 ...
dev-libs/openssl-1.0.1e-r1 (/usr/lib64/libcrypto.so.1.0.0)
# equery belongs /usr/lib/libz*
* Searching for /usr/lib/libz.so,/usr/lib/libzip.so,/usr/lib/libzip.so.2,/usr/lib/libzip.so.2.1.0 ...
dev-libs/libzip-0.11.1 (/usr/lib64/libzip.so.2.1.0)
sys-libs/zlib-1.2.7 (/usr/lib64/libz.so)
|
BTW: The last line (sys-libs/zlib-1.2.7 (/usr/lib64/libz.so)) wasn't there in first instance. I emerged libzip. But unfortunately that also didn't solve my problem. Still the same message after make:
Code: |
...
make[2]: Entering directory `/install/rdd-2.0.7/src'
gcc -pedantic -Wno-long-long -g3 -Wall -Wmissing-prototypes -g -O2 -static -o rdd-copy rddcopy.o librdd.a -lm -lz -lcrypto
/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lz
/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lcrypto
...
|
@VoidMage
Quote: | How about putting a build log with such failure in a pastebin ? |
I'm sorry. I don't really know what you mean by that.
Do you mean the whole output of make? _________________ The great mistake is to anticipate the outcome of the engagement; Let nature take it's course, and your tools will strike at the right moment. |
|
Back to top |
|
|
eyoung100 Veteran
Joined: 23 Jan 2004 Posts: 1428
|
Posted: Fri Nov 01, 2013 6:09 pm Post subject: |
|
|
Why are you compiling from a tarball, when the package exists in portage
Code: | emerge -av app-forensics/rdd
[ebuild N ]sys-apps-fuse-2.9.2 USE="-static-libs" 547 kB
[ebuild N ]app-forensics/libewf-20130416:0/2 USE="fuse ssl unicode uuid zlib -debug -ewf -rawio -static-libs" 1,923 kB
[ebuild N ~]app-forensics/rdd-3.0.4-r1 USE="-debug -doc" 5,759 kB
Total: 3 Packages (3 new), Size of downloads: 8,228 kB
The following keyword changes are necessary to proceed:
(see "package.accept_keywords" in the portage(5) man page for more details)
#required by app-forensics/rdd (argument)
=app-forensics/rdd-3.0.4-r1 ~amd64
<snip> |
_________________ The Birth and Growth of Science is the Death and Atrophy of Art -- Unknown
Registerd Linux User #363735
Adopt a Post | Strip Comments| Emerge Wrapper |
|
Back to top |
|
|
LeeJunFan n00b
Joined: 19 Sep 2006 Posts: 21 Location: Holland
|
Posted: Fri Nov 01, 2013 8:28 pm Post subject: |
|
|
That's version 3.0.4-r1.
And I specifically need version 2.0.7.
BTW: I did check if rdd-3.0.4-r1 emerged correctly. And yes it did. _________________ The great mistake is to anticipate the outcome of the engagement; Let nature take it's course, and your tools will strike at the right moment. |
|
Back to top |
|
|
eyoung100 Veteran
Joined: 23 Jan 2004 Posts: 1428
|
Posted: Fri Nov 01, 2013 9:16 pm Post subject: |
|
|
The error your having maybe why 2.0.7 is no longer in the tree...
libcrypto-0.9.8 was merged into openssl awhile ago, which is why the linker cannot find the file. The linker is looking for libcrypt as if it weren't merged w/ openssl. Same thing goes for -lz
Why do you need 2.0.7 _________________ The Birth and Growth of Science is the Death and Atrophy of Art -- Unknown
Registerd Linux User #363735
Adopt a Post | Strip Comments| Emerge Wrapper |
|
Back to top |
|
|
LeeJunFan n00b
Joined: 19 Sep 2006 Posts: 21 Location: Holland
|
Posted: Fri Nov 01, 2013 10:06 pm Post subject: |
|
|
That's a long story.
I'm gonna try to explain briefly.
Basically it's for compatibility reasons. The syntax for calling rdd 3 differs quite a lot from calling rdd 2.
And since a part of our software is a wrapper around version 2, it stopped functioning with version 3.
At the end, it's not the end of the world; I do have a compiled version, 64bit, available, that is already working on my Gentoo machine.
But I just can't stand it, that it doesn't seem to compile on this platform anymore.
I remember those days, that it was the other way around: When CentOS, or even Debian, had troubles (by default) getting stuff compiled; It was always Gentoo that helped us out.
I'm getting old...
Thanks anyways everybody! _________________ The great mistake is to anticipate the outcome of the engagement; Let nature take it's course, and your tools will strike at the right moment. |
|
Back to top |
|
|
VoidMage Watchman
Joined: 14 Oct 2006 Posts: 6196
|
Posted: Sat Nov 02, 2013 1:11 am Post subject: |
|
|
Going by the line from the build log, you've quoted, for whatever silly reason that rdd-2.0.7 thing wants static libz and libcrypto.
Probably the sanest solution is to find the switch in the build system for that or to patch the dumb thing out. |
|
Back to top |
|
|
LeeJunFan n00b
Joined: 19 Sep 2006 Posts: 21 Location: Holland
|
Posted: Sat Nov 02, 2013 10:18 am Post subject: |
|
|
VoidMage wrote: | Going by the line from the build log, you've quoted, for whatever silly reason that rdd-2.0.7 thing wants static libz and libcrypto.
Probably the sanest solution is to find the switch in the build system for that or to patch the dumb thing out. |
But I guess, if I do want to patch this, I have to that in the Makefile or the configure-script right?
Too bad. That is a little bit too far away of my abilities. _________________ The great mistake is to anticipate the outcome of the engagement; Let nature take it's course, and your tools will strike at the right moment. |
|
Back to top |
|
|
lagalopex Guru
Joined: 16 Oct 2004 Posts: 562
|
Posted: Sat Nov 02, 2013 10:51 am Post subject: |
|
|
VoidMage wrote: | Going by the line from the build log, you've quoted, for whatever silly reason that rdd-2.0.7 thing wants static libz and libcrypto. |
Both libs (openssl and zlib) do have a "static-libs" use flags... |
|
Back to top |
|
|
VoidMage Watchman
Joined: 14 Oct 2006 Posts: 6196
|
Posted: Sat Nov 02, 2013 3:10 pm Post subject: |
|
|
lagalopex wrote: | VoidMage wrote: | Going by the line from the build log, you've quoted, for whatever silly reason that rdd-2.0.7 thing wants static libz and libcrypto. |
Both libs (openssl and zlib) do have a "static-libs" use flags... |
Likely so, but changing that setting in the build system is the better solution, IMHO. |
|
Back to top |
|
|
|