Rootserver - Problem mit zlib (Debian sarge 3.1 64bit, ohne Plesk)

FreeBSD, Gentoo, openSUSE, CentOS, Ubuntu, Debian
marvet
Posts: 36
Joined: 2006-07-11 10:44

Rootserver - Problem mit zlib (Debian sarge 3.1 64bit, ohne Plesk)

Post by marvet » 2006-07-11 11:02

Hallo zusammen,

seit einigen Tagen versuche mein neues System einzurichten, aber es scheitert stets an der gleichen Stelle.

System
- 1&1 Rootserver L64
- Debian sarge 3.1 64bit ohne Plesk
- Alle Pakete über apt-get upgrade auf dem neusten Stand
- Compiler alle auf dem neuesten Stand
- Applikationen (zlib, OpenSSL, Apache, mySql, PHP usw. aus dem Source kompiliert)
- Pfadangaben beim Kompilieren (--with-[NAME]=[PATH]) stimmen

Problem
Alle Applikationen (Apache 2.2.2, mySql 5.0.22, PHP 5.1.4) lassen sich in der neuesten Version problemlos installieren/kompilieren (alle aus dem Source). Nur bei Applikationen, welche die zlib benötigen bekomme ich stets das gleiche Problem bei der Kompilierung/Make. Der wohl wichtigste Teil der Fehlermeldung lautet

/usr/local/lib/zlib.a Error: Could not read symbols: Bad value

Dieser Fehler tritt u.a. auf, wenn ich PHP mit --with-zlib kompiliere. Auch die Erweiterung dieses Kommandos um eine Pfadangabe bringt mich leider nicht weiter. Andere Applikationen/Pakete die mit der gleichen Fehlermeldung abbrechen, wenn ich diese mit zlib-Unterstützung kompiliere sind beispielsweise libpng oder curl.

zlib-1.2.3 habe ich aus dem Source nach /usr/local/zlib kompiliert. Auch das ziehen des Debian Package über apt-get install zlib1g-dev hat leider nichts gebracht. Ebenso die führt auch die Nutzung einer älteren Version (zlib-1.2.2) zu keinem Ergebnis.

Stundenlanges Googlen hat leider auch nichts gebracht.

Der gleiche Fehler tritt auch auf, wenn ich das Paket curl mit der Option --with-ssl kompiliere. Dann lautet die Fehlermeldung entsprechend "/usr/local/lib/libssl.a Error: Could not read symbols: Bad value".

Kann es vielleicht sein, daß die Version von zlib.a, die bei einer Initialisierung des Servers installiert wird nicht mit einem 64bit System kompatibel ist?

Für Eure Ratschläge und Hilfe bedanke ich mich bereits im Voraus!

Beste Grüße,
Markus
Last edited by marvet on 2006-07-11 11:28, edited 1 time in total.

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: 1&1 Rootserver L64 - Problem mit zlib (Debian sarge 3.1 64bit, ohne Plesk)

Post by Roger Wilco » 2006-07-11 11:24

marvet wrote:Der wohl wichtigste Teil der Fehlermeldung lautet
Der wohl wichtigste Teil meiner Antwort lautet: Poste die ganze Fehlermeldung. Komplett. Nicht gekürzt oder sonstwas.
marvet wrote:zlib-1.2.3 habe ich aus dem Source nach /usr/local/zlib kompiliert. Auch das ziehen des Debian Package über apt-get install zlib1g-dev hat leider nichts gebracht.
Hast du dem configure-Skript jeweils gesagt, wo es die Header-Dateien finden kann?

So wie ich das sehe, treten die Meldungen erst beim linken auf, weil deine Header nicht zu den installierten Bibliotheken passen.

Hat es eigentlich einen Grund, dass du alles selbst kompilierst? Debian hat eigentlich ein schönes Paketmanagementsystem, das du so komplett umgehst...

marvet
Posts: 36
Joined: 2006-07-11 10:44

Re: 1&1 Rootserver L64 - Problem mit zlib (Debian sarge 3.1 64bit, ohne Plesk)

Post by marvet » 2006-07-11 11:44

Danke für die prompte Antwort!

Die komplette Fehlermeldung reiche ich gleich nach.
Roger Wilco wrote: Hat es eigentlich einen Grund, dass du alles selbst kompilierst? Debian hat eigentlich ein schönes Paketmanagementsystem, das du so komplett umgehst...
Ich kompiliere ausschließlich das LAMP und entsprechende Module/Pakete für PHP selbst, da ich öfter die ein oder andere Option mal hinzufüge oder wegnehme.

Für alles andere (Compiler, Mailer, FTP usw.) nutze ich das Paketmanagementsystem von Debian.
Last edited by marvet on 2006-07-11 13:37, edited 1 time in total.

marvet
Posts: 36
Joined: 2006-07-11 10:44

Ergänzende Informationen

Post by marvet » 2006-07-11 11:55

Ich habe den Server probehalber mit der 32bit Version von Debian sarge 3.1 initialisieren lassen und habe dann entsprechend versucht, curl-7.15.4 mit zlib-Unterstützung (zlib-1.2.3) zu kompilieren. Dieses funktionierte nun einwandfrei.

Es scheint also wirklich an der 64bit Version zu liegen.

Die vollständige Fehlermeldung aus der Kompilierung mit der 64bit Version reiche ich gleich noch nach.

zg0re
Posts: 104
Joined: 2003-06-04 15:33

Re: Rootserver - Problem mit zlib (Debian sarge 3.1 64bit, ohne Plesk)

Post by zg0re » 2006-07-11 12:02

Wenn du nicht >= 4 GB Ram hast, macht ein 64Bit OS eh nicht wirklich Sinn

marvet
Posts: 36
Joined: 2006-07-11 10:44

Re: Rootserver - Problem mit zlib (Debian sarge 3.1 64bit, ohne Plesk)

Post by marvet » 2006-07-11 13:16

zg0re wrote:Wenn du nicht >= 4 GB Ram hast, macht ein 64Bit OS eh nicht wirklich Sinn
Nicht? Warum?

Konfiguration
AMD Athlon 64 3000+
1.024 MB DDR-RAM
2 x 80 GB Festplatte (Software RAID1)

marvet
Posts: 36
Joined: 2006-07-11 10:44

Vollständige Fehlermeldung + Installationsprotokoll zlib

Post by marvet » 2006-07-11 13:36

Ich habe das System nun wieder mit Debian sarge 3.1 64bit initialisieren lassen. Ansonsten habe ich keinerlei Änderungen oder Aktualisierungen von Paketen laufen lassen. Lediglich für die Kompilierung der zlib musste ich über "apt-get install gcc" den GCC installieren.

Installation zlib (fehlerfrei)

Code: Select all

shell:/usr/local/src/zlib-1.2.3# ./configure
Checking for gcc...
Building static library libz.a version 1.2.3 with gcc.
Checking for unistd.h... Yes.
Checking whether to use vs[n]printf() or s[n]printf()... using vs[n]printf()
Checking for vsnprintf() in stdio.h... Yes.
Checking for return value of vsnprintf()... Yes.
Checking for errno.h... Yes.
Checking for mmap support... Yes.
shell:/usr/local/src/zlib-1.2.3# make
gcc -O3 -DUSE_MMAP   -c -o example.o example.c
gcc -O3 -DUSE_MMAP   -c -o adler32.o adler32.c
gcc -O3 -DUSE_MMAP   -c -o compress.o compress.c
gcc -O3 -DUSE_MMAP   -c -o crc32.o crc32.c
gcc -O3 -DUSE_MMAP   -c -o gzio.o gzio.c
gcc -O3 -DUSE_MMAP   -c -o uncompr.o uncompr.c
gcc -O3 -DUSE_MMAP   -c -o deflate.o deflate.c
gcc -O3 -DUSE_MMAP   -c -o trees.o trees.c
gcc -O3 -DUSE_MMAP   -c -o zutil.o zutil.c
gcc -O3 -DUSE_MMAP   -c -o inflate.o inflate.c
gcc -O3 -DUSE_MMAP   -c -o infback.o infback.c
gcc -O3 -DUSE_MMAP   -c -o inftrees.o inftrees.c
gcc -O3 -DUSE_MMAP   -c -o inffast.o inffast.c
ar rc libz.a adler32.o compress.o crc32.o gzio.o uncompr.o deflate.o trees.o zutil.o inflate.o infback.o inftrees.o inffast.o
gcc -O3 -DUSE_MMAP -o example example.o -L. libz.a
gcc -O3 -DUSE_MMAP   -c -o minigzip.o minigzip.c
gcc -O3 -DUSE_MMAP -o minigzip minigzip.o -L. libz.a
shell:/usr/local/src/zlib-1.2.3# make install
cp zlib.h zconf.h /usr/local/include
chmod 644 /usr/local/include/zlib.h /usr/local/include/zconf.h
cp libz.a /usr/local/lib
cd /usr/local/lib; chmod 755 libz.a
cd /usr/local/lib; if test -f libz.so.1.2.3; then 
  rm -f libz.so libz.so.1; 
  ln -s libz.so.1.2.3 libz.so; 
  ln -s libz.so.1.2.3 libz.so.1; 
  (ldconfig || true)  >/dev/null 2>&1; 
fi
cp zlib.3 /usr/local/share/man/man3
chmod 644 /usr/local/share/man/man3/zlib.3
Installation von curl (mit anfänglich genanntem Fehler)

Code: Select all

shell:/usr/local/src/curl-7.15.4# ./configure --with-zlib=/usr/local/include/

[configure -- OK]

shell:/usr/local/src/curl-7.15.4# make

[make -- ERROR]

/usr/bin/ld: /usr/local/lib/libz.a(zutil.o): relocation R_X86_64_32 can not be used when making a shared object; recompile with -fPIC
/usr/local/lib/libz.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[2]: *** [libcurl.la] Error 1
make[2]: Leaving directory `/usr/local/src/curl-7.15.4/lib'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/usr/local/src/curl-7.15.4/lib'
make: *** [all-recursive] Error 1
Vielen Dank für Eure Hilfe!

stefanpropehan
Posts: 335
Joined: 2002-12-17 22:25
Location: Berlin

Re: Rootserver - Problem mit zlib (Debian sarge 3.1 64bit, ohne Plesk)

Post by stefanpropehan » 2006-07-11 13:39

marvet wrote:Nicht? Warum?
Ist schon ausführlich in diesem Forum behandelt worden...

http://www.rootforum.org/forum/viewtop ... 938#248938
http://www.rootforum.org/forum/viewtopic.php?t=40373

--
Stefan

marvet
Posts: 36
Joined: 2006-07-11 10:44

Re: Rootserver - Problem mit zlib (Debian sarge 3.1 64bit, ohne Plesk)

Post by marvet » 2006-07-11 13:40

stefanpropehan wrote: Ist schon ausführlich in diesem Forum behandelt worden...
Danke für den Hinweis, werde ich mir gleich ansehen!

User avatar
daemotron
Administrator
Administrator
Posts: 2800
Joined: 2004-01-21 17:44

Re: Rootserver - Problem mit zlib (Debian sarge 3.1 64bit, ohne Plesk)

Post by daemotron » 2006-07-11 13:54

marvet wrote:Nicht? Warum?
Ein 64Bit-System ermöglicht es Dir im wesentlichen, Arbeitsspeicher > 4GB zu adressieren oder einem einzelnen Prozess mehr als 2 GB RAM zur Verfügung zu stellen. Den größeren Adressraum erkauft man sich aber auch mit entsprechend aufgeblähterem Binärcode - einfach mal SuFu benutzen, wurde hier öfter schon diskutiert (s.o.). Allerdings gibt es einige wenige Anwendungen, die von 64 Bit tatsächlich profitieren - allerdings nur, wenn die Anwendung schon entsprechend programmiert wurde (siehe z. B. hier.)

HTH
Last edited by daemotron on 2006-07-11 13:58, edited 1 time in total.

marvet
Posts: 36
Joined: 2006-07-11 10:44

64bit Version

Post by marvet » 2006-07-11 13:55

Naja, nachher ist man immer schlauer. Es wäre wohl besser gewesen, wenn ich mich vorher mal über die Vor-/Nachteile von 64bit Systemen informiert hätte. Ich werde nun doch das 32bit System installieren.

Falls jemand aber dennoch eine Lösung/Erklärung für mein ursprüngliches Problem hat, wäre ich dankbar.

Jedenfalls vielen vielen Dank für Eure Hilfe und Ratschläge!!!

Beste Grüße,
Markus

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: Vollständige Fehlermeldung + Installationsprotokoll zlib

Post by Roger Wilco » 2006-07-11 13:59

marvet wrote:

Code: Select all

Building static library libz.a version 1.2.3 with gcc.
Willst du das wirklich?
marvet wrote:

Code: Select all

shell:/usr/local/src/zlib-1.2.3# make
gcc -O3 -DUSE_MMAP   -c -o example.o example.c
...
Schau doch mal nach, für welche Rechnerarchitektur der GCC jetzt Code erstellt.
marvet wrote:

Code: Select all

/usr/bin/ld: /usr/local/lib/libz.a(zutil.o): relocation R_X86_64_32 can not be used when making a shared object; recompile with -fPIC
Mach doch einfach mal, was der gute Mann dir erzählt.

marvet
Posts: 36
Joined: 2006-07-11 10:44

Re: Vollständige Fehlermeldung + Installationsprotokoll zlib

Post by marvet » 2006-07-11 14:07

Roger Wilco wrote:

Code: Select all

Building static library libz.a version 1.2.3 with gcc.
Willst du das wirklich?
Mit einer Shared Library hat es auch nicht funktioniert.
Roger Wilco wrote:

Code: Select all

shell:/usr/local/src/zlib-1.2.3# make
gcc -O3 -DUSE_MMAP   -c -o example.o example.c
...
Schau doch mal nach, für welche Rechnerarchitektur der GCC jetzt Code erstellt.
Wie kann ich das machen? So sehr kenne ich mich leider nicht mit diesen Systemen aus.
Roger Wilco wrote:

Code: Select all

/usr/bin/ld: /usr/local/lib/libz.a(zutil.o): relocation R_X86_64_32 can not be used when making a shared object; recompile with -fPIC
Mach doch einfach mal, was der gute Mann dir erzählt.
Auch hierzu muss ich leider nachfragen, wie dieses denn geht.

Vielen Dank soweit!