Einzelnen Beitrag anzeigen

Benutzerbild von JamesTKirk
JamesTKirk

Registriert seit: 9. Sep 2004
Ort: München
604 Beiträge
 
FreePascal / Lazarus
 
#3

AW: Cross fpc von i686 zu powerpc

  Alt 17. Sep 2012, 10:41
- fpc Source
- binutils (Da gibt verschiedene Packete ! Was ist für was? binutils-2.15-win32-i386-linux oder mingwcross, win32crossbinutils2005 etc.)
Hier brauchst du den Source der BinUtils, den du aber schon zu haben scheinst deiner Antwort weiter unten nach zu urteilen.

Zitat von daniel775:
Muss ich hier soetwas wie crossbinutils haben? Gibt es das überhaupt?
"crossbinutils" sind das gleich wie "binutils" nur, dass die Plattform auf dem sie laufen ungleich der Zielplattform ist...

Zitat von daniel775:
- bereits installierten Compiler z.B. gcc!? Ich habe einen fpc Compiler in der Version 2.4.0 über das PacketManagement installiert.
Für FPC brauchst du keinen GCC, aber zum kompilieren der BinUtils. Wenn GCC noch nicht installiert ist, dann lass einfach deinen Paketmanager das machen.

Ich würde dir übrigens empfehlen FPC 2.6.0 einzusetzen. 2.4.0 ist mittlerweile über 3 Jahre alt. Du kannst die DEB Pakete auf der SourceForge Seite von Free Pascal finden.

Zitat von daniel775:
Wie gehe ich grob vor?

cd /usr/src
sudo mkdir /usr/src/binutils-build
cd binutils-build
sudo ../binutils-2.22/configure --prefix=/usr/local/powerpc --target=powerpc --without-doc
...
sudo make
...
...
*** BFD does not support target powerpc-unknown-none.
*** Look in bfd/config.bfd for supported targets.

Sieht nicht gut aus !
1. Lege dir einen Ordner in deinem Home Verzeichnis an, wo du mit Quellcode rumhantierst, dann musst du nicht mit sudo arbeiten außer zum installieren (so sollte es nämlich sein!)
2. Du musst das richtige Target angeben. Du willst für powerpc-linux kompilieren, also würde ich dir "powerpc-linux" als Target empfehlen (steht übrigens auch hier).
3. Der Ablauf beim Erzeugen von Programmen unter Linux (bzw. Unix allgemein) ist normalerweise der folgende:

Code:
./configure PARAMETER
make all
sudo make install
Zitat von daniel775:
cd /usr/src/fpc-2.4.4_Source
make build OS_TARGET=linux CPU_TARGET=powerpc (Wie müssen hier der Parameter CROSSBINDIR und weitere aussehen?)
make install
Auch hier würde ich dir empfehlen den Quellcode in deinem Home-Verzeichnis zu lagern (hier empfehle ich dir auch den Quellcode von 2.6.0).

Die Parameter OS_TARGET und CPU_TARGET sind schonmal richtig, du brauchst nur noch CROSSBINDIR, welches das Verzeichnis ist, welches du bei den BinUtils als Prefix angegeben hast plus "/bin", also CROSSBINDIR=/usr/local/powerpc/bin". Eventuell musst du auch noch BINUTILSPREFIX angeben, falls die Programme in dem bin-Verzeichnis (as, ld, etc.) noch ein zusätzliches Präfix haben (z.B. powerpc-linux-as). In dem Fall musst du "BINUTILSPREFIX=powerpc-linux-" mit angeben.

Das sollte hoffentlich genügen. Da ich noch nie nach PowerPC übersetzen musste, kann ich es natürlich nicht bestätigen, jaber ich bin guter Dinge

Zitat von daniel775:
Fragen über Fragen und Fehler über Fehler
Ich hoffe ich konnte dir damit weiterhelfen.

Gruß,
Sven
Sven
[Free Pascal Compiler Entwickler]
this post is printed on 100% recycled electrons
  Mit Zitat antworten Zitat