View previous topic :: View next topic |
Author |
Message |
LinuxTom l33t
Joined: 26 Mar 2006 Posts: 798
|
Posted: Wed Jan 02, 2013 5:53 pm Post subject: Crossdev - Frage |
|
|
Hi Leute,
ich habe die Frage, wie ich am besten an das Problem herangehen kann. Ich habe eine AMD-CPU:
Code: | x86_64-pc-linux-gnu-4.5.4 |
Nun stelle ich bin-Packages her, für andere AMD-Rechner. Bspw. mit:
Code: | CFLAGS="-march=k8-sse3 -msahf -mtune=k8 -O2 -pipe" |
Nun ist ein Rechner kein AMD mehr, sondern ein Intel geworden:
Code: | CFLAGS="-O2 -pipe -march=core2 -mcx16 -msahf -maes -mpclmul -mpopcnt -mavx -mtune=core2" |
Wie kann ich nun Binaries entsprechend generieren lassen, so dass keine "ungültigen Maschinenbefehle" mehr generiert werden?
Das Cross-Dev-HowTo vielleicht? Doch das ist ja für unterschiedliche GCC's. Ich habe aber in beiden Fällen den x86_64-pc-linux-gnu. |
|
Back to top |
|
|
musv Advocate
Joined: 01 Dec 2002 Posts: 3337 Location: de
|
Posted: Wed Jan 02, 2013 10:50 pm Post subject: |
|
|
Ich hatte mal ein ähnliches Problem:
https://forums.gentoo.org/viewtopic-t-940088-highlight-.html
Kurzbeschreibung:
- Compilieren im Chroot
- Buildmaschine Intel Xeon, Target Intel Atom
- Ungültiger Maschinenbefehl: movbe des Atom - kann der Xeon nicht.
Ich hab trotz ewig langer Suche keine Möglichkeit gefunden, das zu bauen. Das Problem war bei mir nicht das Compilieren per gcc sondern das Ausführen diverser Tools, z.B. mime-update usw, die eben den movbe-Befehl auf dem Atom nutzen. Ich hab die Instruktion aus den CFlags des Atom rausgenommen. Prüf am besten bei Dir nach, bei welchen Instruktionen der Intel hat, die der AMD nicht mehr versteht. Willst du alle Instruktionen weiter nutzen, bleibt Dir vermutlich nur noch eine vollständige Emulation der CPU übrig. Probier evtl. mal, ob du das mit qemu-user irgendwie hinbekommst. Wenn ja, gibt mal bitte eine Anleitung. |
|
Back to top |
|
|
LinuxTom l33t
Joined: 26 Mar 2006 Posts: 798
|
Posted: Thu Jan 03, 2013 11:20 am Post subject: |
|
|
Bisher habe ich es auch so gemacht. Darum auch nur die gemeinsame Schnittmenge der Befehle meines "Atoms" zum Intel Core i7. Mal sehen was qemu (incl KVM?) sagt. Aber die Unterschiede werden leider immer mehr, darum wird sich auf Dauer qemu kaum vermeiden lassen. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|