Compiler Einstellungen für verschiedene OS

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Mokota
Beiträge: 60
Registriert: 26.04.2008 23:18
Kontaktdaten:

Compiler Einstellungen für verschiedene OS

Beitrag von Mokota »

Hallo meine Guten!

Ich habe da mal ne frage bezüglich des Compilers. Und zwar heißt es ja, dass die mit PB geschriebenen Programme systemunabhängig sind bzw. auf Windows, Linux und AmigaOS laufen. Nun frage ich mich ob man dafür verschiedene Versionen des eigenen Programmes compielieren muss und wie man dies im compiler einstellt; Oder ob man nur einmal compilieren muss und dies dann auf jedem System läuft. Bitte genau beschreiben was man im Compiler einstellen muss, kenne mich da noch garnicht aus!

Habe nach einer Antwort in diesem und anderen Foren gesucht, aber keine wirkliche gefunden. Achja, ich benutze momentan noch die Testversion von PB... weis nicht ob das einen Unterschied macht.

Schonmal vielen Dank für eure Antworten!
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Man mußt den Source auf dem jeweiligem OS kompilieren!

OS-Spezifische Sachen (API) kann man in Compilerdirektiven verpacken.

Code: Alles auswählen

CompilerSelect #PB_Compiler_OS
  CompilerCase #PB_OS_Linux
    ; linuxspezifisches
  CompilerCase #PB_OS_Windows
    ; windowsspezifisches
  CompilerCase #PB_OS_MacOS
    ; code für nen äpfelchen
CompilerEndSelect
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Mokota
Beiträge: 60
Registriert: 26.04.2008 23:18
Kontaktdaten:

Beitrag von Mokota »

Achso, dann kann man sein Programm also nur für ein OS fit machen, wenn man das besagte OS auf seinem Rechner hat. Das find ich ehrlichgesagt bissel sch****. Wäre besser wenn man das einfach in den Compileroptionen einstellen könnte.

Super... jetzt muss ich erstmal Linux installieren um meine proggies darauf lauffähig zu machen... obwohl ich es nie benutz... :roll:
Benutzeravatar
Vermilion
Beiträge: 1846
Registriert: 08.04.2006 16:00
Computerausstattung: Apple iMac (2010) & HP Notebook
Wohnort: Heidekreis

Beitrag von Vermilion »

Ein Tipp von mir wäre, hole dir die kostenlose Virtualisierungssoftware VirtualBox und erstelle eine virtuelle Maschine, in der du z.B. Ubuntu installierst, auf jener kannst du dann auch deine Programme kompilieren mit PureBasic. Dann brauchst du nicht extra deine Festplatten Formatierung ändern usw.
Benutzeravatar
Mokota
Beiträge: 60
Registriert: 26.04.2008 23:18
Kontaktdaten:

Beitrag von Mokota »

Danke für den Tip!
Werde ich morgen mal versuchen.
Benutzeravatar
Pelagio
Beiträge: 424
Registriert: 11.11.2004 17:52
Computerausstattung: AMD Ryzen 5 7600 6-Core Prozessor 3.80 GHz
16,0 GB Arbeitsspeicher
Windows 11 Pro Betriebssystem
Wohnort: Bremen

Beitrag von Pelagio »

Hallo leute,
ich habe mir die VirtualBox auf meinen PC installiert und in dieser Ubuntu. Habe aber einige Probleme damit, nichts Weltbewegendes aber doch ärgerlich. Die erste Frage die ich dazu habe, ich kann nur eine Bildschirmauflösung von 800*600 einstellen möchte ader doch gerne das gesamte Virtualboxfenster nutzen:
Ist dies überhaupt möglich?
Und wenn, wie?
Beim Proggen höre ich gerne Musik, aber Ubunto scheint keine CD's abspielen zu können, oder? (auf das DVD Laufwerk kann ich zugreifen)
Ich habe PB4.3 B3 installiert und bekomme aber grundsätzlich, wenn ich ein Programm lausfen lassen will, aus der IDE heraus, eine Unmenge von Fehlermeldungen wie z.B:

Code: Alles auswählen

If OpenWindow(0, 0, 0, 222, 200, "ButtonGadgets", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) And CreateGadgetList(WindowID(0))
    ButtonGadget(0, 10, 10, 200, 20, "Standard Button")
    ButtonGadget(1, 10, 40, 200, 20, "Left Button", #PB_Button_Left)
    ButtonGadget(2, 10, 70, 200, 20, "Right Button", #PB_Button_Right)
    ButtonGadget(3, 10,100, 200, 60, "Multiline Button  (längerer Text wird automatisch umgebrochen)", #PB_Button_MultiLine)
    ButtonGadget(4, 10,170, 200, 20, "Toggle Button", #PB_Button_Toggle)
    Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
  EndIf
  • Window.a(OpenWindow.o: infunction 'DestroyHandler':
    OpenWindow.c(.text+0x44): undefines reference to 'g_object_unref'
    ........
Wo liegt der fehler? :praise:
Ohne Zeit kein Fleiß
Auf neustem Stand zu sein ist eine Kunst die nicht jeder perfektioniert [Win11Pro; PB6.20 LTS]. :allright:
Benutzeravatar
Deluxe0321
Beiträge: 336
Registriert: 19.05.2006 00:31
Kontaktdaten:

Beitrag von Deluxe0321 »

>Beim Proggen höre ich gerne Musik, aber Ubunto scheint keine CD's abspielen zu können
öhm.. da du sowieso eine VM verwendest, warum spielst du keine CD mit dem Real laufenden System ab? Die schränken sich ja nicht gegenseitig ein
:wink:
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

@Pelagio
Handbuch aufschlagen, Gast-Additions für Linux Gast, installieren.
Ohne Gast-Additions macht eine VM keinerlei Spaß :mrgreen:
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Pelagio
Beiträge: 424
Registriert: 11.11.2004 17:52
Computerausstattung: AMD Ryzen 5 7600 6-Core Prozessor 3.80 GHz
16,0 GB Arbeitsspeicher
Windows 11 Pro Betriebssystem
Wohnort: Bremen

Beitrag von Pelagio »

@ts-soft
Handbuch? Deutsch?
Gast-Additions für Linux Gast?
????????
Ohne Zeit kein Fleiß
Auf neustem Stand zu sein ist eine Kunst die nicht jeder perfektioniert [Win11Pro; PB6.20 LTS]. :allright:
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

VirtualBox User Manual, findeste im Startmenü (englisch)
Punkt 4.3, ansonsten gibts auch ein Forum (teilweise deutsch)
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Antworten