gcc 4.1.0 installieren

chapchap

New Member
Guten morgen zusammen :)

Ich muss auf meinem Rootserver gcc 4.1.0 installieren bzw auf diese Version upgraden (Aktuelle Version 3.3.5)
Wieso? Weil ich VMWare Server installieren will und da mein Kernel (S4U) mit der Version 4.1.0 kompiliert wurde verlangt er auch bei der VMWare Installation nach dieser Version.

Leider weiß ich nicht genau wie ich das machen soll.

OS: Suse 9.3

Weitere Infos dazu:

Habe mal ein neues Thema aufgemacht damit das alte nicht zu unübersichtlich wird.
 
Vielen Dank für deine Antwort :)

Habe mir nun die Version 4.1.0 dort gezogen und soweit entpackt.
Wenn ich nun in den entpackten Ordner gehe und "make install" eintippe kommt allerdings folgendes:

make: *** No rule to make target `install'. Stop.
 
Hey also habe es nun installiert (glaube ich^^) bin so vorgegangen:

- In den entpackten Ordner rein und
./configure
gestartet.
- make && make install

Nun ist er fertig durchgelaufen aber wie kann ich überprüfen ob die neue Version nun drauf ist?
 
Nun ist er fertig durchgelaufen aber wie kann ich überprüfen ob die neue Version nun drauf ist?

Tippe mal in der Console:
gcc --version

Dann gibt er dir die Version der aktuellen GCC Software aus. Der Weg war aber schon mal soweit eigentlich ganz richtig, wie dus gemacht hast :)
 
Hallo auch dir erstmal vielen Dank für die schnelle Antwort.
Ich habe mal nachgeschaut und siehe da
gcc (GCC) 4.1.0
Copyright (C) 2006 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.

Also die 4.1.0 ist nun drauf. Muss ich dem System aber noch irgendwie mitteilen WO es installiert ist (irgendwelche Variablen die definiert müssen oder so)?

Wenn ich eine Installationsroutine starte (VMware Server z.B.) und dann nach gcc verlangt wird sagt er mir, dass er kein gcc finden konnte und ich den Pfad manuell eingeben soll.
Ich hatte gcc in den folgenden Ordner entpackt
/gcc-4.1.0
und von dort aus auch die Befehle zum installieren eingegeben.
Wenn ich nun den Pfad manuell eingebe /gcc-4.1.0, dann sagt er mir:
The answer "/gcc-4.1.0" is invalid. It must be the complete name of a binary file.

Welchen Pfad soll ich da nun angeben?
Vielen Dank schonmal habe heute einiges dazugelernt :)
 
Hallo,

Normalerweise macht das mit den Varriablen die Installation selbst....kannst aber zur Vorsicht noch mal in die Doku von gcc auf deren Homepage reinschauen. Der Pfad zu GCC ist jedoch nicht der Pfad wohin du es entpackt hast.

Entpackt hast du nur den Sourcecode. Jetzt hast du den Sourcecode zu etwas "funktionierendem" berechnen lassen durch deinen Rechner und anschließend mit "make install" an die richtigen Orte auf deinem Server installieren lassen.

Jetzt kannst du den Ordner /gcc-4.1.0 getrost löschen. Er wird nicht mehr gebraucht.

Geb einmal ein: whereis gcc
Das zeigt dir den kompletten Pfad zu der GCC-Programmdatei.
Bei mir ergibt diese Abfrage:
Code:
gcc: /usr/bin/gcc /usr/share/man/man1/gcc.1.gz
So...Wir sehen: 2 Pfade...aber "man" bedeutet Manual...also ist: gcc.1.gz nur die Beschreibung zu gcc. Demnach: /usr/bin/gcc wäre in meinem System der Pfad zu GCC (den deine VM Ware Installation gerne wissen würde). Bei dir kann der etwas anders sein, muss aber nicht.
Diesen Pfad musst du bei der Installation von VMWare angeben und dann sollte es funktionieren.
 
Last edited by a moderator:
Nochmals ein dickes Dankeschön an Dich :D

Diesen Wert nimmt er nun an.
Jetzt kommt aber schon die nächste Frage und zwar:
What is the location of the directory of C header files that match your running kernel?

Kannst du mir da auch weiterhelfen?
 
VM Würde gern wissen wo die C Header sind.
Dafür musst du die Kernelquellen installieren. Das machst du in "yast" => Software installieren oder löschen => Nach 'kernel-source' suchen und falls nicht installiert, nach installieren....wenn doch installiert bzw nach der Installation:
Code:
/usr/src/linux
als Pfad angeben.
 
ei ei ei

ich habe nun kernel-source installiert, allerdings ist der von dir genannte Pfad leer :(

dann habe ich einfach mal als Pfad /usr/src angegeben und dann kommt folgende Meldung:
What is the location of the directory of C header files that match your running
kernel? [/usr/src/linux/include] /usr/src

The path "/usr/src" is a kernel header file directory, but it does not contain
the file "linux/version.h" as expected. This can happen if the kernel has
never been built, or if you have invoked the "make mrproper" command in your
kernel directory. In any case, you may want to rebuild your kernel.

What is the location of the directory of C header files that match your running
kernel?

...menno ich weiß nicht mehr weiter :( :( :(
 
Hallo,

Ich hab nochmal ein bisschen nachgelesen...
Nachdem du die kernel-sourcen installiert hast...solltest du:
Code:
cd /usr/src/linux
und dann
Code:
make cloneconfig; make prepare-all
Das sollte die version.h bringen :)
 
Hi,

also es hat nun alles soweit geklappt er nimmt die Pfade nun an allerdings erscheint dann folgendes:
What is the location of the directory of C header files that match your running
kernel? [/usr/src/linux-2.6.15-20060112174634/include]

Extracting the sources of the vmmon module.

Building the vmmon module.

Building for VMware Server 1.0.0.
Using 2.6.x kernel build system.
make: Entering directory `/tmp/vmware-config1/vmmon-only'
make -C /usr/src/linux-2.6.15-20060112174634/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
/usr/src/linux-2.6.15-20060112174634/scripts/gcc-version.sh: line 11: gcc: command not found
/usr/src/linux-2.6.15-20060112174634/scripts/gcc-version.sh: line 12: gcc: command not found
make[1]: gcc: Command not found
make[1]: Entering directory `/usr/src/linux-2.6.15-20060112174634'

WARNING: Symbol version dump /usr/src/linux-2.6.15-20060112174634/Module.symvers
is missing; modules will have no dependencies and modversions.

make[2]: gcc: Command not found
/tmp/vmware-config1/vmmon-only/Makefile:127: *** Inappropriate build environment: you wanted to use gcc version 4.1.0 while kernel attempts to use gcc version .
/tmp/vmware-config1/vmmon-only/Makefile:129: *** For proper build you'll have to replace gcc with symbolic link to /usr/local/bin/gcc. Stop.
make[1]: *** [_module_/tmp/vmware-config1/vmmon-only] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.15-20060112174634'
make: *** [vmmon.ko] Error 2
make: Leaving directory `/tmp/vmware-config1/vmmon-only'
Unable to build the vmmon module.

For more information on how to troubleshoot module-related problems, please
visit our Web site at "http://www.vmware.com/download/modules/modules.html" and
"http://www.vmware.com/support/reference/linux/prebuilt_modules_linux.html".

Execution aborted.

Also ich lese da raus das er gcc NICHT findet. Aber es ist doch da ?
Ein paar Stellen vorher im Installtionsskript sagt er ja sogar nocht:
Using compiler "/usr/local/bin/gcc". Use environment variable CC to override.
 
Last edited by a moderator:
Hallo,

Erstelle einmal einen Symbolic-Link, wie es dort steht:
Code:
ln -s /usr/bin/gcc /usr/local/bin/gcc
 
Ah...ok..da liegt sehr wahrscheinlich noch die alte GCC Version.

Mach folgendes:
Code:
cd /usr/local/bin
mv gcc gccOLD
ln -s /usr/bin/gcc /usr/local/bin/gcc
Und dann noch mal alles auf Anfang ;)

Sollte das nicht klappen:
Code:
 cd /usr/local/bin
rm gcc
mv gccOLD gcc
cd /usr/bin
mv gcc gccOLD
ln -s /usr/local/bin/lgcc /usr/bin/gcc

Und sollte das auch nicht klappen:
Code:
cd /usr/bin
rm gcc
mv gccOLD gcc
 
Last edited by a moderator:
Hmm leider hat dies auch nicht funktioniert bzw keine Änderung gebracht.

Ich habe in einem anderen Forum etwas erfahren was ich dir hiermit mal mitteilen möchte.

Code:
[B]KevinG:[/B]Post the output from 'uname -a '

Post the directories listed under /usr/src 

[B]chapchap:[/B]output of uname -a:

Linux alpha961 2.6.15-20060112174634-smp #1 SMP Thu Jan 12 17:46:34 UTC 2006 i686 athlon i386 GNU/Linux

files and directories in /usr/src:

-rw-r--r-- 1 root root 18641945 Feb 17 2006 kernel-smp-2.6.15-20060112174634.i586.rpm
-rw-r--r-- 1 root root 43771566 Feb 17 2006 kernel-source-2.6.15-20060112174634.i586.rpm
-rw-r--r-- 1 root root 43546665 Feb 17 2006 kernel-source-2.6.15-20060112174634.src.rpm
lrwxrwxrwx 1 root root 27 Oct 31 19:31 linux -> linux-2.6.15-20060112174634
drwxr-xr-x 3 root root 4096 Oct 31 19:01 linux-2.6.11.4-20a
drwxr-xr-x 3 root root 4096 Mar 23 2005 linux-2.6.11.4-20a-obj
drwxr-xr-x 20 root root 4096 Nov 2 13:46 linux-2.6.15-20060112174634
drwxr-xr-x 3 root root 4096 Jan 12 2006 linux-2.6.15-20060112174634-obj
lrwxrwxrwx 1 root root 31 Oct 31 19:31 linux-obj -> linux-2.6.15-20060112174634-obj
drwxr-xr-x 7 root root 4096 Sep 29 10:30 packages 

[B]KevinG:[/B]You need to install the kernel-headers and/or kernel-sources for 2.6.15-20060112174634-smp ; also it looks like i686 kernel is installed but all sources appear to be i586 ones.

sieht ganz so aus als ob mein kernel i686 ist aber die sources die dort liegen für i586 sind oder was denkst du?
Habe mal bei meinem Anbieter die Kernel Sources für i686 angeforder mal schauen...
 
Back
Top