DEUTSCHE VERSION |
|
Links | | | Forums | | | Comments | | | Report news |
Chat | | | Polls | | | Newsticker | | | Archive |
amiga-news.de Forum > Programmierung > AmigaOS m68k Cross Compiler für Ubuntu 22.04 einrichten (Anleitung) | [ - Search - New posts - Register - Login - ] |
-1- | [ - Post reply - ] |
2024-08-25, 21:35 h Zettmaster Posts: 722 User |
Kleine Schritt für Schritt Anleitung um auf Ubuntu 22.04 Programme für das AmigaOS zu erstellen. (Keine Gewähr oder Haftung!) 1.) Zuerst benötigt Ihr die Dateien von https://github.com/bebbo/amiga-gcc Einfach die heruntergeladene *.zip Datei entpacken an einen beliebigen Ort in eurem Home Verzeichnis. 2.) Terminal öffnen und vorab die Abhängigkeiten installieren. code:3.) Wechselt in das amiga-gcc Verzeichnis cd /pfad/zu/den/entpackten/Dateiensudo apt install make wget git gcc g++ lhasa libgmp-dev libmpfr-dev libmpc-dev flex bison gettext texinfo ncurses-dev autoconf rsync libreadline-dev code:3.) Nur ausführen wenn Ihr den GCC 13.1 (empfohlen) statt dem alten GCC 6.0.5 verwenden möchtet.make update code:ansonsten Schritt 3 auslassen und hier bei beiden Varianten weiter machen. -j steht für die Anzahl der genutzten Kerne. Der Prefix wurde in diesem Fallmake branch branch=amiga13.1 mod=gcc im eigenen Home Verzeichnis angelegt und ist somit im Bereich der eigenen Berechtigungen. Dieser kann aber beliebig gewählt werden. Es kann durchaus über 30 Minuten dauern, bis alles durchgelaufen ist. code:4.) öffnet einen Texteditor eurer Wahl. Sucht euch die Dateien .bashrc sowie .profile und fügt jeweils folgende Zeilen ein und macht einen Neustart.make -all -j8 PREFIX=~/local/amiga-gcc code:5.) öffnet ein Terminal und gebt folgendes ein.export AMIGA_GCC=~/local/amiga-gcc export PATH=$PATH:$AMIGA_GCC/bin code:Ihr solltet jetzt folgende Ausgabe, bei euch natürlich mit anderen Pfaden, sehen.m68k-amigaos-gcc -v Using built-in specs. COLLECT_GCC=m68k-amigaos-gcc COLLECT_LTO_WRAPPER=/home/zettmaster/local/amiga-gcc/libexec/gcc/m68k-amigaos/13.1.1/lto-wrapper Target: m68k-amigaos Configured with: /home/zettmaster/Entwicklung/amiga-gcc/projects/gcc/configure --prefix=/home/zettmaster/local/amiga-gcc --target=m68k-amigaos --enable-languages=c,c++,objc, --enable-version-specific-runtime-libs --disable-libssp --disable-nls --with-headers=/home/zettmaster/Entwicklung/amiga-gcc/projects/newlib-cygwin/newlib/libc/sys/amigaos/include/ --disable-shared --enable-threads=no --with-stage1-ldflags='-dynamic-libgcc -dynamic-libstdc++' --with-boot-ldflags='-dynamic-libgcc -dynamic-libstdc++' Thread model: single Supported LTO compression algorithms: zlib gcc version 13.1.1 20230426 (GCC) Herzlichen Glückwunsch! Ihr könnt nun AmigaOS Programme erstellen. Hier die einfache Methode um eine helloworld.c Datei mit folgendem Inhalt code:mittels#include <stdio.h> int main(int arc, char **argv) { printf("Hallo Amiganer! \n"); return 0; } code:zu übersetzen.m68k-amigaos-gcc -o helloworld ./helloworld.c Es geht aber auch mit einem Makefile (Beachtet bitte, keine Leerzeichen! Nur TABULATOREN verwenden!) makefile Bsp: code:um dieses wie folgt zu ÜbersetzenCC=m68k-amigaos-gcc CFLAGS= EXES=hallo all: $(EXES) clean: rm -r $(EXES) hallo: helloworld.c $(CC) $(CFLAGS) -o $@ $? code:Ihr könnt aber auch einfach "make" eingeben, funktioniert auch. Es erscheint die Datei "hallo". Viel Spaß beim Programmieren für euren Lieblingscomputer!make -f makefile Schreibt eure Meinungen, Verbesserungen oder Anregungen bitte in die Kommentare. Da ich bis Dato nur auf OS4.1 (Port von dunelegacy mit BigH) vor über 10 Jahren meine ersten Schritte getätigt habe, möchte ich nun bald ein Herzensprojekt koordinieren. Doch dazu später mehr... Viele Grüße Enrico -- 4x A1200, 2x PiStorm Pi4/2GB 1x PiStorm Pi3/1GB sowie einmal nackt mit Kick47.111 & OS3.2. Verwendete Betriebssysteme: Caffeine OS (3.9)+ Amikit PiStorm (3.2) [ Dieser Beitrag wurde von Zettmaster am 25.08.2024 um 21:41 Uhr geändert. ] [ - Answer - Quote - Direct link - ] |
2024-08-26, 09:59 h o1i Posts: 43 User |
@Zettmaster: Ich würde noch in den CFLAGS den Optimierungslevel einstellen (-O2) und zumindest alle Warnings einschalten (-Wall). Beim clean target würde rm -f mehr Sinn machen. [ - Answer - Quote - Direct link - ] |
2024-08-26, 11:32 h thomas Posts: 7718 User |
@Zettmaster: Das Hello World-Beispiel ist zur Überprüfung der Installation ungeeignet. Um ein ANSI-C-Programm zu kompilieren braucht es keine spezielle Umgebung. Um das Erstellen eines Amiga-Programms zu testen sollte das Beispiel so aussehen: code:#include <proto/dos.h> int main(int argc, char **argv) { Printf("Hallo Amiganer!\n"); return RETURN_OK; } oder wenn es unter Kick 1.3 laufen soll so: code:#include <proto/dos.h> int main(int argc, char **argv) { Write(Output(), "Hallo Amiganer!\n", 16); return RETURN_OK; } -- Email: thomas-rapp@web.de Home: thomas-rapp.homepage.t-online.de/ [ - Answer - Quote - Direct link - ] |
-1- | [ - Post reply - ] |
amiga-news.de Forum > Programmierung > AmigaOS m68k Cross Compiler für Ubuntu 22.04 einrichten (Anleitung) | [ - Search - New posts - Register - Login - ] |
Masthead |
Privacy policy |
Netiquette |
Advertising |
Contact
Copyright © 1998-2024 by amiga-news.de - all rights reserved. |