MySQL kompilieren

FreeBSD, Gentoo, openSUSE, CentOS, Ubuntu, Debian
Post Reply
core
Posts: 25
Joined: 2003-06-21 18:05
Location: Stadtilm
 

MySQL kompilieren

Post by core »

Tag,

ich bin vor kurzem auf Linux umgestiegen, konnte mich schnell damit anfreunden, deswegen möchte ich mein gesamte Serverumgebung für lokale Arbeit übertragen. Hab mir im Internet ne Anleitung zur manuellen LAMP Installation gesucht. Aber gleich der Anfang ging schief, weil ich irgendwie mySQL nicht richtig kompilieren kann. xdevel, flex, bison, libpng, tgetent (und ein zugehörige lib) und make sowie gcc 3.6 habe von der Standardinstallation aus schon nachinstalliert - OS ist SuSE Linux 8.1. Habe es mit MySQL 4.0 und 4.1 alpha probiert, bei beiden dasselbe Problem...daher liegts an mir oder am System. Habe Tarball ausgepackt und soll nun mit den configure und dem make Befehl fortfahren...

./configure --prefix=/usr/local/mysql/4.0.13 --localstatedir=/var/mysql/data
make
make install

configure läuft noch normal...am Ende von make bringt er schon nen "rekursive error" - leaving /usr/LAMP/mysql-4.0.13/(Bibliothek),
nach make install dasselbe, aber es stoppt nicht den Vorgang. Dann befindet sich in /usr/local/mysql nicht mehr als die Verzeichnisse info, lib (leer) und include. In letzteren sind *. Dateien drinne - Objektdateien ?
[ djthesound ]
Posts: 300
Joined: 2003-04-21 01:15
 

Re: MySQL kompilieren

Post by [ djthesound ] »

Bin zwar nicht der Kompilierprofi, aber hast du das Paket "gcc" bzw. "make installiert. Unter Debian ganz einfach zu instellieren:

Code: Select all

apt-get install gcc make binutils
Mehr kann ich dir leider auch nicht sagen, als diesen Tip! :roll:
thorsten
Posts: 561
Joined: 2003-02-01 13:14
Location: Fuldatal
 

Re: MySQL kompilieren

Post by thorsten »

noch einfacher unter debian:

Code: Select all

apt-get build-deps mysql
Dann wird alles nachgezogen, was benötigt wird.

Aber warum willst du mysql selbst kompilieren?
Saug dir doch eine statische Version (ist bis zu 11% schneller, als die shared library Version) von mysql.com
oxygen
Posts: 2138
Joined: 2002-12-15 00:10
Location: Bergheim
 

Re: MySQL kompilieren

Post by oxygen »

Könnt ihr nicht lesen? SuSE ist das OS. Warum selbst kompilieren? Weil's schneller ist. Du sagst du benutzt gcc 3.6, Stimmt das? (aktuell ist doch 3.3) Ich benutzt 2.95.3 und damit gehts. Du solltest mal die genaue Fehlermeldung posten.
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten
Contact:
 

Re: MySQL kompilieren

Post by captaincrunch »

gcc 3.6 muss erst noch geboren werden ... wenn du genauere Fehlermeldungen lieferst, fällt es um einiges einfacher, da etwas zu zu sagen ...
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
core
Posts: 25
Joined: 2003-06-21 18:05
Location: Stadtilm
 

Re: MySQL kompilieren

Post by core »

hab mich verlesen...ist gcc 3.2, welches standardmäßig in den Distri-Paketen von SuSE mit dabei war.
Fehlermeldung bei make:

libmysql.c: In function `mysql_real_connect':
libmysql.c:1731: warning: passing arg 5 of `gethostbyname_r' from incompatible pointer type
libmysql.c:1731: too few arguments to function `gethostbyname_r'
libmysql.c:1731: warning: assignment makes pointer from integer without a cast
make[2]: *** [libmysql.lo] Error 1
make[2]: Leaving directory `/usr/LAMP/mysql-4.0.13/libmysql'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/LAMP/mysql-4.0.13'
make: *** [all] Error 2

Fehlmeldungen bei make install:

libmysql.c: In function `mysql_real_connect':
libmysql.c:1731: warning: passing arg 5 of `gethostbyname_r' from incompatible pointer type
libmysql.c:1731: too few arguments to function `gethostbyname_r'
libmysql.c:1731: warning: assignment makes pointer from integer without a cast
make[1]: *** [libmysql.lo] Error 1
make[1]: Leaving directory `/usr/LAMP/mysql-4.0.13/libmysql'
make: *** [install-recursive] Error 1

Ich hatte auch bei der Download-Sektion von mySQL gelesen, dass gcc 2.9.5 empfohlen wird, leider weiß ich nich, woher man das kriegt geschweige denn, wie man es installiert.
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten
Contact:
 

Re: MySQL kompilieren

Post by captaincrunch »

Sofern der neuere gcc nicht unterstützt wird, würde ich an deiner Stelle lieber die vorgefertigten Pakete nutzen, ist einfach streßfreier. Den Unterschied wirst du jedenfalls nicht großartig bemerken ...
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
core
Posts: 25
Joined: 2003-06-21 18:05
Location: Stadtilm
 

Re: MySQL kompilieren

Post by core »

Komisch, komisch...ich habe aus reiner Intuition ein paar weitere Pakete, die in Verbindung mit gcc 3.2 standen installiert (Java, Objective), da gcc 2.9.5 bei der Installation immer in Konflikt mit gcc 3.2 stand kan und nun gehts auf einmal. make und make install verlaufen ohne Fehler (dauert auch erheblich länger).
Allerdings kommt jetzt, wenn ich mysql_install_db ausführen will, folgender Fehler:

dhcppc1:/usr/LAMP/mysql-4.0.13/scripts # ./mysql_install_db
Neither host 'dhcppc1' and 'localhost' could not be looked up with
/usr/local/mysql//bin/resolveip
Please configure the 'hostname' command to return a correct hostname.
If you want to solve this at a later stage, restart this script with
the --force option

Was hat der für Probleme mit dem Hostnamen?
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten
Contact:
 

Re: MySQL kompilieren

Post by captaincrunch »

Gute Frage ... wie schauen denn deine /etc/hostname und deine /etc/hosts aus ?
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
core
Posts: 25
Joined: 2003-06-21 18:05
Location: Stadtilm
 

Re: MySQL kompilieren

Post by core »

/etc/HOSTNAME:

localhost.local

/etc/hosts:

127.0.0.1 localhost

# special IPv6 addresses
::1 localhost ipv6-localhost ipv6-loopback

fe00::0 ipv6-localnet

ff00::0 ipv6-mcastprefix
ff02::1 ipv6-allnodes
ff02::2 ipv6-allrouters

ff02::3 ipv6-allhosts

127.0.0.2 localhost.local localhost

//edit: /usr/local/mysql//bin/resolveip geht dieser Pfad überhaupt?
Post Reply