1Blu: vServer: Packet-Management: Architekturkonfusion

polemon

New Member
Hi!

Ich habe einen vServer bei 1Blu. Ich weis, ist nicht der tollste Anbieter, etc, aber ich hab's nunmal und gut.

Leider ist bei den vServern absolute Architektur-Verwirrung angesagt:

Code:
# cat /etc/SuSE-release
SUSE LINUX 10.1 (X86-64)
VERSION = 10.1

Okay, ein x86_64 System. Laut /proc/cpuinfo stimmt das auch, es befinden sich in dem Server zwei AMD Opteron 248 CPUs, in denen x86_64 implementiert ist.

Code:
# arch
i686

ähm... Okay, der vServer auf der Maschine ist ein i686 System. Meinetwegen, aber welche Packete soll ich nun nehmen, x86_64 oder iX86?

Er ergibt sich folgendes Problem:

Ich wollte gcc nach installieren, da ausser YaST kein weiterer Packet-Manager installiert ist, nehmen wir doch erstmal den.
Dort müssen zunächst die Web-Repositories eingetragen werden, eine Liste gibts auf:
Package Repositories - openSUSE. (die Version kennen wir aus /etc/SuSe-release).
Oss, Non-oss und Update sind eingetragen, die suche beginnt.

gcc nachinstalliert, aber schon kommen die ersten Fehlermeldungen, dass etwas nicht stimmt:
Einige Dependencies kann ich zwar installieren, aber es kommt die Meldung "This would change architecture".
hmm. ok, whatever..

So, gcc ist installiert, dann wollen wir das gleich mal antesten:

test.c:
Code:
int main()
{
    return 0;
}

und dann:
Code:
# gcc -o test test.c
/tmp/ccKEE8Cb.s: Assembler messages:
/tmp/ccKEE8Cb.s:8: Error: suffix or operands invalid for `push'
/tmp/ccKEE8Cb.s:9: Error: suffix or operands invalid for `push'
/tmp/ccKEE8Cb.s:11: Error: suffix or operands invalid for `push'
/tmp/ccKEE8Cb.s:13: Error: suffix or operands invalid for `pop'
/tmp/ccKEE8Cb.s:14: Error: suffix or operands invalid for `pop'

Okay, offensichtlich macht der Assembler Terz, aber jetzt kommts:
Code:
# as --version
GNU assembler 2.16.91.0.5 20051219 (SUSE Linux)
Copyright 2005 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License.  This program has absolutely no warranty.
This assembler was configured for a target of `x86_64-suse-linux'.

Der Freund ist offensichtlich für x86_64 configuriert, aber meine Architektur ist ja i686...

WAS NUN?

gcc ist von den Repos installiert, und da '# arch' i686 zurückgibt, werden natürlich die iX86 packete installiert.

Die sache ist die: Wird es das Problem lösen, wenn ich einfach manuell, die x86_64 gcc binaries installiere?
Gibt es vielleicht bessere Lösungen für mein Problem?

Ohne Compiler bin ich recht machtlos, daher brauche ich erstmal dies als binary.

--polemon
 
Back
Top