View previous topic :: View next topic |
Author |
Message |
rubbish n00b

Joined: 29 Jan 2005 Posts: 26
|
Posted: Thu Jan 20, 2011 12:05 pm Post subject: OpenSSL 1.0.0c braucht GLIBC 2.7? |
|
|
Hallo zusammen
Ich habe ein Problem mit OpenSSL / GLIBC, und zwar ist mir das aufgefallen, als ich dev-perl/Net-SSLeay-1.36 installieren wollte (als Abhängigkeit). Dies hat nicht geklappt, weil OpenSSL Probleme hat:
Code: | # openssl -v
openssl: /usr/lib/libc.so.6: version `GLIBC_2.7' not found (required by openssl)
openssl: /usr/lib/libc.so.6: version `GLIBC_2.7' not found (required by /usr/lib/libcrypto.so.1.0.0)
|
Ich habe inzwischen gcc-config gesäubert, danach die GLIBC und OpenSSL neu gemerged und auch revdep-rebuild ausgeführt.
Code: | # emerge --info =dev-libs/openssl-1.0.0c
Portage 2.1.9.25 (default/linux/x86/10.0, gcc-4.4.4, glibc-2.11.2-r3, 2.6.31-gentoo-r10 i686)
=================================================================
System Settings
=================================================================
System uname: Linux-2.6.31-gentoo-r10-i686-Intel-R-_Celeron-R-_CPU_3.20GHz-with-gentoo-1.12.14
Timestamp of tree: Thu, 20 Jan 2011 05:45:03 +0000
app-shells/bash: 4.1_p7
dev-lang/python: 2.6.6-r1, 3.1.2-r4
dev-util/cmake: 2.8.1-r2
sys-apps/baselayout: 1.12.14-r1
sys-apps/sandbox: 2.4
sys-devel/autoconf: 2.65-r1
sys-devel/automake: 1.11.1
sys-devel/binutils: 2.20.1-r1
sys-devel/gcc: 4.4.4-r2
sys-devel/gcc-config: 1.4.1
sys-devel/libtool: 2.2.10
sys-devel/make: 3.81-r2
virtual/os-headers: 2.6.30-r1 (sys-kernel/linux-headers)
ACCEPT_KEYWORDS="x86"
ACCEPT_LICENSE="* -@EULA"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=i686 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/openvpn/easy-rsa /var/bind"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/php/apache2-php5.3/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -march=i686 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs distlocks fixlafiles fixpackages news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="ftp://mirror.switch.ch/mirror/gentoo/ ftp://ftp.solnet.ch/mirror/Gentoo"
LANG="de_CH.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="de en"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="acl apache2 berkdb bzip2 calendar cracklib crypt ctype cxx dri fortran gd gdbm gpm hal iconv jpeg latin1 maildirpng modules mudflap mysql mysqli ncurses nls nptl nptlonly openmp pam pcre
perl php png pppd python readline samba session ssl sysfs syslog tcpd tiff truetype unicode usb vhosts x86 xml xml2 xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cm
ipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dsh
are dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alia
s authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache e
nv expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CO
LLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom
oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd4
4780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de en" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="fbdev glint intel mach64 mga neomagic nouveau nv r128 radeon sav
age sis tdfx trident vesa via vmware dummy v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
=================================================================
Package Settings
=================================================================
dev-libs/openssl-1.0.0c was built with the following:
USE="zlib -bindist -gmp -kerberos -rfc3779 -sse2 -test"
CFLAGS="-O2 -march=i686 -pipe -fno-strict-aliasing -Wa,--noexecstack"
CXXFLAGS="-O2 -march=i686 -pipe -fno-strict-aliasing -Wa,--noexecstack"
|
Weiss jemand Rat?
Vielen Dank und liebe Grüsse
toby
Last edited by rubbish on Fri Jan 21, 2011 1:12 pm; edited 2 times in total |
|
Back to top |
|
 |
forrestfunk81 Guru


Joined: 07 Feb 2006 Posts: 498 Location: münchen.de
|
Posted: Thu Jan 20, 2011 1:33 pm Post subject: |
|
|
Ich hab hier glibc-2.12.2 und openssl-1.0.0c installiert. openssl -v funktioniert prima.
Hast du schon ein revdep-rebuild gestartet? _________________ # cd /pub/
# more beer |
|
Back to top |
|
 |
rubbish n00b

Joined: 29 Jan 2005 Posts: 26
|
Posted: Thu Jan 20, 2011 1:47 pm Post subject: |
|
|
Ja, habe ich. |
|
Back to top |
|
 |
Necoro Veteran


Joined: 18 Dec 2005 Posts: 1912 Location: München (Germany)
|
Posted: Thu Jan 20, 2011 2:16 pm Post subject: Re: OpenSSL 1.0.0c braucht GLIBC 2.7? |
|
|
rubbish wrote: | Hallo zusammen
Ich habe ein Problem mit OpenSSL / GLIBC, und zwar ist mir das aufgefallen, als ich dev-perl/Net-SSLeay-1.36 installieren wollte (als Abhängigkeit). Dies hat nicht geklappt, weil OpenSSL Probleme hat:
Code: | # openssl -v
openssl: /usr/lib/libc.so.6: version `GLIBC_2.7' not found (required by openssl)
openssl: /usr/lib/libc.so.6: version `GLIBC_2.7' not found (required by /usr/lib/libcrypto.so.1.0.0)
|
|
Also meine libc.so.6 liegt auch in /lib/ und nicht in /usr/lib. Hast du mal etwas lokal installiert was da vielleicht was hingelegt hat? _________________ Inter Deum Et Diabolum Semper Musica Est. |
|
Back to top |
|
 |
rubbish n00b

Joined: 29 Jan 2005 Posts: 26
|
Posted: Thu Jan 20, 2011 2:27 pm Post subject: |
|
|
hmm, wüsste nicht was...
hab grad gesehen, dass
Code: | /lib/libc.so.6 -> libc-2.11.2.so |
und
Code: | /usr/lib/libc.so.6 -> libc-2.6.1.so |
was hat das zu bedeuten? |
|
Back to top |
|
 |
Necoro Veteran


Joined: 18 Dec 2005 Posts: 1912 Location: München (Germany)
|
Posted: Thu Jan 20, 2011 2:30 pm Post subject: |
|
|
Mach mal ein
Code: | equery b /usr/lib/libc.so |
und
Code: | equery b /usr/lib/libc-2.6.1.so |
letztere gibts zu mindestens auf meinem System nicht...
(btw: equery ist Teil des Pakets gentoolkit, falls du dieses noch net installiert haben solltest)
/edit: Hoffentlich hat dir da nicht jemand versucht, eine gefakete glibc unterzuschieben  _________________ Inter Deum Et Diabolum Semper Musica Est. |
|
Back to top |
|
 |
rubbish n00b

Joined: 29 Jan 2005 Posts: 26
|
Posted: Thu Jan 20, 2011 5:07 pm Post subject: |
|
|
Hier:
Code: | # equery b /lib/libc.so.6
[ Searching for file(s) /lib/libc.so.6 in *... ]
sys-libs/glibc-2.11.2-r3 (/lib/libc.so.6 -> libc-2.11.2.so)
# equery b /usr/lib/libc.so.6
[ Searching for file(s) /usr/lib/libc.so.6 in *... ]
|
Das hoffe ich auch nicht... |
|
Back to top |
|
 |
Necoro Veteran


Joined: 18 Dec 2005 Posts: 1912 Location: München (Germany)
|
Posted: Thu Jan 20, 2011 5:18 pm Post subject: |
|
|
Du hast Code: | equery b /usr/lib/libc-2.6.1.so | vergessen
Aber auf jeden Fall gehört der libc.so.6-Link in /usr/lib ja schon mal zu keinem Paket, das über Portage installiert wurde. Also doch Drittsoftware oder selbstgebautes? _________________ Inter Deum Et Diabolum Semper Musica Est. |
|
Back to top |
|
 |
rubbish n00b

Joined: 29 Jan 2005 Posts: 26
|
Posted: Thu Jan 20, 2011 5:38 pm Post subject: |
|
|
Oooops..
Code: | # equery b /usr/lib/libc-2.6.1.so
[ Searching for file(s) /usr/lib/libc-2.6.1.so in *... ]
|
Ich kann mich nur nicht an etwas erinnern. Schaue mal nach was da sein könnte.
Aber wieso hat das openssl drin?
/edit:
Habe nichts gefunden... |
|
Back to top |
|
 |
Hollowman Guru

Joined: 19 Apr 2007 Posts: 584
|
Posted: Thu Jan 20, 2011 6:09 pm Post subject: |
|
|
Hallo
Mach doch bitte mal ein
ldd /usr/bin/openssl
Sebastian |
|
Back to top |
|
 |
Necoro Veteran


Joined: 18 Dec 2005 Posts: 1912 Location: München (Germany)
|
Posted: Thu Jan 20, 2011 6:14 pm Post subject: |
|
|
rubbish wrote: | Aber wieso hat das openssl drin? |
Wahrscheinlich weil "/usr/lib" vor "/lib" im Library Pfad kommt. Der Pfad der Bibliothek wird durch den Linker ja immer erst beim Start bestimmt. _________________ Inter Deum Et Diabolum Semper Musica Est. |
|
Back to top |
|
 |
rubbish n00b

Joined: 29 Jan 2005 Posts: 26
|
Posted: Fri Jan 21, 2011 7:48 am Post subject: |
|
|
Hey Sebastian
hier das Gewünschte:
Code: | # ldd /usr/bin/openssl
/usr/bin/openssl: /usr/lib/libc.so.6: version `GLIBC_2.7' not found (required by /usr/bin/openssl)
/usr/bin/openssl: /usr/lib/libc.so.6: version `GLIBC_2.7' not found (required by /usr/lib/libcrypto.so.1.0.0)
linux-gate.so.1 => (0xb777e000)
libssl.so.1.0.0 => /usr/lib/libssl.so.1.0.0 (0xb772b000)
libcrypto.so.1.0.0 => /usr/lib/libcrypto.so.1.0.0 (0xb75c5000)
libc.so.6 => /usr/lib/libc.so.6 (0xb7495000)
libdl.so.2 => /lib/libdl.so.2 (0xb748b000)
libz.so.1 => /lib/libz.so.1 (0xb7477000)
/lib/ld-linux.so.2 (0xb777f000)
|
|
|
Back to top |
|
 |
Hollowman Guru

Joined: 19 Apr 2007 Posts: 584
|
Posted: Fri Jan 21, 2011 8:16 am Post subject: |
|
|
Hi
Ich würde jetzt folgendes probieren:
mv /usr/lib/libc.so.6 /root/backup/libc.so.6 (alles andere was in /usr/lib noch libc.so heißt auch verschieben oder löschen)
revdep-rebuild (dabei sollte er openssl neu bauen)
ldd /usr/bin/openssl
Das ldd sollte dann so aussehen:
Code: |
# ldd /usr/bin/openssl
linux-vdso.so.1 => (0x00007fff841ff000)
libssl.so.1.0.0 => /usr/lib64/libssl.so.1.0.0 (0x00007f72ef0fc000)
libcrypto.so.1.0.0 => /usr/lib64/libcrypto.so.1.0.0 (0x00007f72eed53000)
libc.so.6 => /lib/libc.so.6 (0x00007f72ee9fa000)
libdl.so.2 => /lib/libdl.so.2 (0x00007f72ee7f6000)
libz.so.1 => /lib/libz.so.1 (0x00007f72ee5e1000)
/lib64/ld-linux-x86-64.so.2 (0x00007f72ef358000) |
Sebastian |
|
Back to top |
|
 |
Necoro Veteran


Joined: 18 Dec 2005 Posts: 1912 Location: München (Germany)
|
Posted: Fri Jan 21, 2011 10:37 am Post subject: |
|
|
Hollowman wrote: | revdep-rebuild (dabei sollte er openssl neu bauen) |
Würde ich bezweifeln - der Pfad wird erst zur Laufzeit ermittelt ...
siehe:
Code: | necoro@Zakarumiy ~ % ldd =openssl | grep libc.so
libc.so.6 => /lib/libc.so.6 (0xb747f000)
necoro@Zakarumiy ~ % cp /lib/libc.so.6 /usr/lib
necoro@Zakarumiy ~ % ldd =openssl | grep libc.so
libc.so.6 => /usr/lib/libc.so.6 (0xb740d000)
necoro@Zakarumiy ~ % rm /usr/lib/libc.so.6
necoro@Zakarumiy ~ % ldd =openssl | grep libc.so
libc.so.6 => /lib/libc.so.6 (0xb7438000) |
Fazit: Das verschieben sollte reichen. Revdep-Rebuild schadet aber nie  _________________ Inter Deum Et Diabolum Semper Musica Est. |
|
Back to top |
|
 |
rubbish n00b

Joined: 29 Jan 2005 Posts: 26
|
Posted: Fri Jan 21, 2011 12:54 pm Post subject: |
|
|
Das hat gereicht!
hab /usr/lib/libc.so.6 und /usr/lib/libc.so "gelöscht".
Jetzt funtzt alles wieder Danke vielmals für die Hilfe!
/edit:
es läuft doch nicht so wies sollte...
revdep-rebuild hatte nichts gefunden. Net-SSLeay konnte gemerged werden, jedoch bei sys-apps/file-5.04 erscheint folgender Fehler (Auszug config.log):
Code: | configure:2970: result: a.out
configure:2987: checking whether the C compiler works
configure:2997: ./a.out
./configure: line 2998: 4666 Segmentation fault ./$ac_file
configure:3000: $? = 139
configure:3009: error: cannot run C compiled programs.
If you meant to cross compile, use `--host'.
See `config.log' for more details.
|
Ein remerge von gcc endet auch in einem Fehler... _________________ Grüsse toby |
|
Back to top |
|
 |
Hollowman Guru

Joined: 19 Apr 2007 Posts: 584
|
Posted: Sat Jan 22, 2011 12:32 pm Post subject: |
|
|
Was sagt
gcc-config -l (kleines L)
Sebastian |
|
Back to top |
|
 |
rubbish n00b

Joined: 29 Jan 2005 Posts: 26
|
Posted: Sat Jan 22, 2011 12:46 pm Post subject: |
|
|
spuckt das aus:
Code: | # gcc-config -l
[1] i686-pc-linux-gnu-4.4.4 *
|
_________________ Grüsse toby |
|
Back to top |
|
 |
Necoro Veteran


Joined: 18 Dec 2005 Posts: 1912 Location: München (Germany)
|
Posted: Sat Jan 22, 2011 3:48 pm Post subject: |
|
|
Wahrscheinlich ist der GCC gegen die andere GlibC gebaut worden. Ich denke, du solltest folgendes tun:
1.) Funktionierenden GCC besorgen (zB von ner Gentoo Live CD)
2.) mit dem funktionierenden gcc deinen lokalen gcc neu bauen: emerge gcc
3.) glibc neu bauen (nur um sicherzugehen): emerge glibc
4.) um wirklich sicherzustellen, dass alles gegen die neue richtige glibc baut: emerge -e system[b] und [b]emerge -e world
Das letzte baut ALLES neu auf deinem System und mag daher ne Zeit dauern.
Der schwierigste Schritt ist der erste. Du kannst da folgendes versuchen:
Unter http://data.necoro.eu/packages/ hab ich dir ein Binärpaket vom gcc-4.3.4 für x86 hochgeladen (so dass durch einen anderen Slot der vorhandene nicht deinstalliert wird bei dir). Du machst da am besten folgendes:
1.) Du kopierst den kompletten Inhalt des Ordners in das $PKGDIR (/usr/portage/packages laut deinem emerge --info).
2.) Du installierst den älteren GCC per: emerge --usepkgonly "=gcc-4.3.4"
3.) Du sagst deinem System, dass er diesen verwenden soll: gcc-config i686-pc-linux-gnu-4.3.4
4.) (Evtl einmal aus und wieder einloggen)
5.) Schritt 2 von oben
6.) wieder auf den eben installierten GCC setzen: gcc-config i686-pc-linux-gnu-x.x.x wobei x.x.x durch die eben installierte Version zu ersetzen ist
Da der GCC den ich hochgeladen habe, evtl. für ein anderes System ist, kann es sein, dass das alles nicht funktioniert. Dann per emerge -C gcc:4.3 einfach de-installieren wieder . _________________ Inter Deum Et Diabolum Semper Musica Est. |
|
Back to top |
|
 |
rubbish n00b

Joined: 29 Jan 2005 Posts: 26
|
Posted: Mon Jan 24, 2011 6:06 pm Post subject: |
|
|
Hey Necoro
Hatte wieder Zeit deinen Lösungsansatz zu verfolgen, leider ohne Erfolg.
Gemacht habe ich folgendes:
Code: | # emerge --usepkgonly "=gcc-4.3.4"
# gcc-config i686-pc-linux-gnu-4.3.4
logout-login
# emerge gcc
|
Das hat nicht geklappt, also habe ich die libc.so-Files wieder nach /usr/lib zurückkopiert, dann hats geklappt.
Code: |
# gcc-config i686-pc-linux-gnu-4.4.4
# source /etc/profile
# emerge glibc
|
Da das auch nichts gebracht hat, habe ich wieder auf den gcc 4.3.4 umgeschaltet, um die glibc nochmals zu bauen. Dann habe ich auch openssl neu gebaut, doch die GLIBC_2.7-Meldungen kommen auch schon beim kompilieren.
Hast du sonst noch eine Idee? _________________ Grüsse toby |
|
Back to top |
|
 |
Necoro Veteran


Joined: 18 Dec 2005 Posts: 1912 Location: München (Germany)
|
Posted: Mon Jan 24, 2011 8:01 pm Post subject: |
|
|
rubbish wrote: |
Das hat nicht geklappt |
Was war denn der Fehler? Das gleiche wie oben bei file?
Kannst du mal die libc aus /usr/lib wieder entfernen und denn die Ausgaben von ldd /usr/bin/gcc und gcc --version schicken?
Quote: | also habe ich die libc.so-Files wieder nach /usr/lib zurückkopiert, dann hats geklappt. |
Ich denke, dass damit nix gekonnt ist... so lange die "falsche" libc.so in /usr/lib liegt, wird nix hinhauen am Ende.
Quote: | Hast du sonst noch eine Idee? |
Nein :-/ ... (außer Rechner neu aufsetzen) _________________ Inter Deum Et Diabolum Semper Musica Est. |
|
Back to top |
|
 |
rubbish n00b

Joined: 29 Jan 2005 Posts: 26
|
Posted: Tue Jan 25, 2011 1:37 pm Post subject: |
|
|
Necoro wrote: | rubbish wrote: |
Das hat nicht geklappt |
Was war denn der Fehler? Das gleiche wie oben bei file?
|
Ja war der gleiche.
Hier noch die ldd mit beiden Versionen:
Code: | 4.3.4:
# ldd /usr/bin/gcc
linux-gate.so.1 => (0xb7719000)
libc.so.6 => /lib/libc.so.6 (0xb75c8000)
/lib/ld-linux.so.2 (0xb771a000)
# gcc --version
gcc (Gentoo 4.3.4 p1.0, pie-10.1.5) 4.3.4
Copyright (C) 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
4.4.4:
# ldd /usr/bin/gcc
linux-gate.so.1 => (0xb778e000)
libc.so.6 => /lib/libc.so.6 (0xb763d000)
/lib/ld-linux.so.2 (0xb778f000)
# gcc --version
gcc (Gentoo 4.4.4-r2 p1.3, pie-0.4.5) 4.4.4
Copyright (C) 2010 Free Software Foundation, Inc.
Dies ist freie Software; die Kopierbedingungen stehen in den Quellen. Es
gibt KEINE Garantie; auch nicht für MARKTGÄNGIGKEIT oder FÜR SPEZIELLE ZWECKE.
|
Quote: | (außer Rechner neu aufsetzen) |
 _________________ Grüsse toby |
|
Back to top |
|
 |
|