Lazarus 1.8.0 Und Mac OS X 10.6 Exit Code 256?

Für Installationen unter MacOS u.a. Betriebssystemen
DOS
Beiträge: 18
Registriert: Mi 13. Dez 2017, 21:04
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Kontaktdaten:

Lazarus 1.8.0 Und Mac OS X 10.6 Exit Code 256?

Beitrag von DOS »

Mahlzeit, ich habe gestern endlich meinen ersten Mac bekommen und wollte natürlich auch gleich Lazarus mit installieren, leider ist dies unter Mac OS X nicht ganz so einfach wie unter Windows.

Ich habe mittlerweile xcode 4.0.2, fpc-3.0.4-intel, fpc-src-3.0.4 installiert.

Aber selbst wenn ich ein leeres Formular starten möchte erhalte ich nur die Meldung FCL 1.0.1: Exit Code 256, Fehler 1

Wieso und was bedeutet der genau?

Mfg. DOS

mischi
Beiträge: 206
Registriert: Di 10. Nov 2009, 18:49
OS, Lazarus, FPC: macOS, 10.13, lazarus 1.8.x, fpc 3.0.x
CPU-Target: 32Bit/64bit

Re: Lazarus 1.8.0 Und Mac OS X 10.6 Exit Code 256?

Beitrag von mischi »

Eine häufige Hürde ist 32bit/64 bit bei der carbon-version der lcl, die nur 32 bit ist. Ist die Voreinstellung des Compilers fpc 64 bit, kracht es. Schau mal nach, was im Terminal der Befehl 'fpc -iSP' ausgibt. Bei 32 bit liegt der Fehler noch irgendwo anders, kommt 64 bit, ist das schon einmal ein Problem. Als nächstes muss du mal bei Werkzeuge → Einstellungen nach schauen, was da als Pfade eingetragen ist. Das sollte zum Beispiel beim Compilerdateiname /usr/local/fpc stehen. An der Stelle kannst du es auch hart auf 32 bit stellen, in dem du /usr/local/ppc386 einträgst.

10.6 ist ja ganz schön betagt. Was für einen Prozessor hat denn der Mac?

MiSchi.
MiSchi macht die fink-Pakete

DOS
Beiträge: 18
Registriert: Mi 13. Dez 2017, 21:04
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Kontaktdaten:

Re: Lazarus 1.8.0 Und Mac OS X 10.6 Exit Code 256?

Beitrag von DOS »

mischi hat geschrieben:10.6 ist ja ganz schön betagt. Was für einen Prozessor hat denn der Mac?

MiSchi.


Nabend, Ja ist nen MacBook anfang 2008, habs heute noch auf 10,7 geupdatet, jetzt kommt beim start noch das mäckern über fehlendes make und gdb, wo bekomme ich das denn her?

/usr/local/bin/ppc386 ist beim Compiler eingestellt
und fpc -iSP
x86_64
hat das raus gebracht.


Bild

Gibt es irgendwo eine Step by Step anleitung zum einrichten und downloaden aller Programmie die man braucht um das ans laufen zu bekommen? Laut Lazarus sollte Mac OS 10.6 / 10.7 ja unterstützt werden.

Mfg. DOS

Warf
Beiträge: 1907
Registriert: Di 23. Sep 2014, 17:46
OS, Lazarus, FPC: Win10 | Linux
CPU-Target: x86_64

Re: Lazarus 1.8.0 Und Mac OS X 10.6 Exit Code 256?

Beitrag von Warf »

DOS hat geschrieben:Gibt es irgendwo eine Step by Step anleitung zum einrichten und downloaden aller Programmie die man braucht um das ans laufen zu bekommen? Laut Lazarus sollte Mac OS 10.6 / 10.7 ja unterstützt werden.

Mfg. DOS


Da der Debugger immernoch nicht richtig unter OSX funktioniert nimm lieber ne Linux VM.

Wenn dus unbedingt wissen willst, XCode commandline tools fehlen dir. Das tutorial findest du hier http://wiki.freepascal.org/Installing_Lazarus_on_MacOS_X

mischi
Beiträge: 206
Registriert: Di 10. Nov 2009, 18:49
OS, Lazarus, FPC: macOS, 10.13, lazarus 1.8.x, fpc 3.0.x
CPU-Target: 32Bit/64bit

Re: Lazarus 1.8.0 Und Mac OS X 10.6 Exit Code 256?

Beitrag von mischi »

Warf hat geschrieben:Da der Debugger immernoch nicht richtig unter OSX funktioniert nimm lieber ne Linux VM.

Bitte kein falscher Alarm. Der Debugger ist unter 10.7 noch recht einfach zum Laufen zu bringen. Die, wenn überhaupt, nur mühsam zu behebenden Probleme mit dem Debugger bestehen nur auf den neueren Versionen von macOS.
Warf hat geschrieben:Wenn dus unbedingt wissen willst, XCode commandline tools fehlen dir. Das tutorial findest du hier http://wiki.freepascal.org/Installing_Lazarus_on_MacOS_X

Stimme 100% zu. Wenn "make" nicht gefunden wird, liegt es höchstwahrscheinlich daran. Falls du Xcode installiert hast, fehlen immer noch die commandline tools. Das Kommando im Terminal "xcode-select --install" sollte das beheben. Ich hoffe, das ist es dann.

Läufst du aber in das Problem mit dem Fehler "invalid instruction mnemonic 'cvtsi2sdl'": https://bugs.freepascal.org/view.php?id=32324 oder etwas ähnliches, dann steht irgendwie immer noch auf 64bit und sollte durch eine Umstellung auf 32 bit zu beheben sein.

MiSchi.
MiSchi macht die fink-Pakete

DOS
Beiträge: 18
Registriert: Mi 13. Dez 2017, 21:04
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Kontaktdaten:

Re: Lazarus 1.8.0 Und Mac OS X 10.6 Exit Code 256?

Beitrag von DOS »

Ok, Xcode ist nun wieder installiert, das war unter Mac OS X 10.7 irgendwie ein Kampf nur Xcode 4.1 ließ sich installieren alle andeen brachen mit einem Unbekannten Fehler ab.

Nunja, wenn ich jetzt ein leeres Projekt erstelle und Starte habe ich immer noch Fehler.

Bild

Unter Projekteinstellungen -> Kunfiguration und Ziele -> Ziel CPU hab ich danach wieder auf i386 gestellt, wieder erster Fehler 256

Dafür das mir mal wer sagte Mac OS X sollte ein Dau-System sein mit dem jeder klar kommt macht es bei so einfachen sachen aber doch eine menge Probleme, oder liegt das ganze an Lazarus?

Was kann ich noch versuchen?

mischi
Beiträge: 206
Registriert: Di 10. Nov 2009, 18:49
OS, Lazarus, FPC: macOS, 10.13, lazarus 1.8.x, fpc 3.0.x
CPU-Target: 32Bit/64bit

Re: Lazarus 1.8.0 Und Mac OS X 10.6 Exit Code 256?

Beitrag von mischi »

DOS hat geschrieben:Ok, Xcode ist nun wieder installiert, das war unter Mac OS X 10.7 irgendwie ein Kampf nur Xcode 4.1 ließ sich installieren alle andeen brachen mit einem Unbekannten Fehler ab.

Irgendwie gefällt mir das nicht und da könnte noch etwas faul sein.
DOS hat geschrieben:Dafür das mir mal wer sagte Mac OS X sollte ein Dau-System sein mit dem jeder klar kommt macht es bei so einfachen sachen aber doch eine menge Probleme, oder liegt das ganze an Lazarus?

Leider ja. Lazarus kommt zum einen nicht ganz an die Qualität von üblichen Mac Programmen heran, zum anderen ist ein integriertes Entwicklungssystem (IDE) zum Programmieren auch eine andere Herausforderung als ein Program zur Berechnung des Body Mass Index. Eclipse für Java hat auch so seine Haken und Ösen.
DOS hat geschrieben:Was kann ich noch versuchen?

Es bleibt nichts anderes übrig, als Schritt für Schritt zu überprüfen, ob alles da ist. Mit mehr Erfahrung könnte man das vielleicht auch direkt aus der Fehlermeldung ablesen, aber mit meinem Kenntnissen ist das eher wie Kaffeesatz lesen.
-- Schritt 1 commandline tools:
Überprüfe zuerst noch einmal, ob die commandline tools tatsächlich vorhanden sind, insbesondere make, as und ld. "which make", "which as" und which "ld". Da sollte sowas wie /usr/bin/... kommen. Dann auch noch "make -v", "as -help" und "ld -v". Bei jedem Kommando sollten ein paar Zeilen sinnvolles ausgegeben werden.
-- Schritt 2 FreePascal:
"which fpc", "which ppc386" und auch "which ppcx64". Denn letzten brauchst du eigentlich nicht, aber es schadet ja nicht zu wissen, ob er da ist oder nicht. Auch hier wieder die entsprechenden "fpc -iSP", "ppc386 -iSP" und "ppcx64 -iSP".
-- Schritt 3 Allgemeine Einstellungen von Lazarus:
Menu: Werkzeuge → Einstellungen
Schau dir jeden Eintrag auf dieser Seite an und öffne die Pfade im Terminal, ob da auch tatsächlich vorhanden sind. Gängiger Fehler ist zum Beispiel, dass man vergessen hat, fpcsrc, den Quellcode von FreePascal, zu installieren. Eigentlich sollten auf der Seite Fehlermeldungen auftauchen, wenn etwas nicht da ist, aber es schadet ja nicht, selber nachzuschauen.
-- Schritt 4 Projekteinstellungen
Menu: Projekt → Projekteinstellung
a) Das Häkchen setzen bei "Anwendungs-Bundle für Start und Debug verwenden", falls bereits nicht gesetzt.
b) Den Button "Anwendungsbundle..." drücken.
c) Untermenu: Compilereinstellungen ... Konfiguration und Ziele
Da kannst du sicherheitshalber bei Ziel-CPU-Familie i386 auswählen. Bei den anderen kann Voreinstellung stehen bleiben. Bei LCL-Widgetset sollte carbon stehen.

Jetzt sollte es eigentlich gehen. Es fällt mir nur noch der Debugger ein, der rum zickt, aber wenn das der Fall sein sollte, kann ich dir sagen, wie man ihn einfach abstellt. Das macht das Arbeiten zwar sehr mühsam, aber zumindest hat man ein Setup, mit dem man aus fehlerfreiem Quellcode ein Programm, also ein App-Bundle zum Doppelklicken, für macOS erzeugen kann. So weit kommt man auf dem Mac auf jeden Fall, meistens weiter.

*** Werbung ***
Du bist mit deinen Problemen nicht der erste und einzige. Ich habe deshalb Paketbeschreibungen zu FreePascal und Lazarus für den Paketmanager fink erstellt. Die Einrichtung von fink ist eine Sache für sich, aber hat man die Hürde geschafft, reicht ein "fink install lazarus-aqua". qt4 und gtk2 Versionen von Lazarus und einige Crosscompiler sind gleich noch mit im Angebot. Allerdings muss ich ausdrücklich von einer gemischten Installation mit disk images (in /usr/local) und fink (in /sw) abraten. Bleibe also erstmal bei der Installation mit disk images.
*** Werbung ***

MiSchi
MiSchi macht die fink-Pakete

DOS
Beiträge: 18
Registriert: Mi 13. Dez 2017, 21:04
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Kontaktdaten:

Re: Lazarus 1.8.0 Und Mac OS X 10.6 Exit Code 256?

Beitrag von DOS »

Hui klasse, danke schonmal das du dir soviel mühe gibst, also ich habe die Befehle mal in die Console getippt und folgendes kam bei raus:

DOSs-MacBook:~ DOS$ which make
/usr/bin/make
DOSs-MacBook:~ DOS$ which as
/usr/bin/as
DOSs-MacBook:~ DOS$ which ld
/usr/bin/ld
DOSs-MacBook:~ DOS$ make -v
GNU Make 3.81
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.

This program built for i386-apple-darwin11.0

DOSs-MacBook:~ DOS$ ld -v
@(#)PROGRAM:ld PROJECT:ld64-123.2.1
llvm version 3.0svn, from Apple Clang 2.1 (build 163.7.1)

DOSs-MacBook:~ DOS$ as -help
FATAL:/usr/bin/../libexec/gcc/darwin/x86_64/as: I don't understand 'h' flag!

DOSs-MacBook:~ DOS$ which fpc
/usr/local/bin/fpc
DOSs-MacBook:~ DOS$ which ppc386
/usr/local/bin/ppc386
DOSs-MacBook:~ DOS$ which ppcx64
/usr/local/bin/ppcx64

DOSs-MacBook:~ DOS$ fpc -iSP
x86_64
DOSs-MacBook:~ DOS$ ppc386 -iSP
x86_64
DOSs-MacBook:~ DOS$ ppcx64 -iSP
x86_64


So, die Anleitung habe ich soweit durch, auch den Debugger hatte ich mal deaktiviert, der Fehler 256 bleibt leider immer noch.
Würde es was bringen eventuell mal eine frühere Lazarus version zu versuchen? Und wie lösch ich sauber die 3 Installierten Pakete wieder?

Gruß DOS

mischi
Beiträge: 206
Registriert: Di 10. Nov 2009, 18:49
OS, Lazarus, FPC: macOS, 10.13, lazarus 1.8.x, fpc 3.0.x
CPU-Target: 32Bit/64bit

Re: Lazarus 1.8.0 Und Mac OS X 10.6 Exit Code 256?

Beitrag von mischi »

DOSs-MacBook:~ DOS$ ppc386 -iSP
x86_64

Das kam mir zunächst seltsam vor, stimmt aber. Probier doch bitte noch "ppc386 -iTP". Das sollte i386 ausgeben. Wenn ja, ist zunächst mal alles in Ordnung. Der Fehler bei as ist nicht weiter bedeutsam. Offensichtlich hat der assembler mit xcode4 einige andere options, aber es ging ja nur darum, ob er da ist oder nicht.

Man kann natürlich immer eine Neuinstallation versuchen, aber macht auch Arbeit, weil man entweder alles von Hand machen muss oder ein Skript herunterladen und dann sicherheitshalber doch noch einmal nachschauen muss, ob alles weg ist. Das genau ist der Nachteil einer Installation von den disk images, weil es auf dem Mac keinen nativen Paketmanager gibt. Ich habe mein Pulver noch nicht völlig verschossen. Die Grundinstallation sieht ja soweit wirklich in Ordnung aus und ich denke, dass es lediglich an Einstellungen im Projekt oder allerhöchsten den generellen Einstellungen in Lazarus liegt und daran ändert eine Neuinstallation der commandline tools, fpc und fpcsrc ja überhaupt nichts.

Probiere doch bitte dein einfaches Projekt mit "lazbuild deinProjekt.lpi" zu übersetzen. Den gesamten log davon bitte auf pastebin.com oder einer ähnlichen Webseite hoch laden, so dass ich mir das anschauen kann. Das wäre doch gelacht, wenn diese Nuss nicht zu knacken ist.

Wenn du mit den Optionen von lazbuild rumspielen willst, kannst du dir mit "man lazbuild" anschauen, was es da alles gibt. --cpu=i386 und --compiler=ppc386 und --ws=carbon sollten eigentlich der Voreinstellung (Default) entsprechen und können nicht schaden, sondern setzen hart, was du brauchst.

Bei einem einfachen Projekt gibt es auch eine Chance, dass --ws=cocoa geht; in 32 bit UND 64 bit, also auch mit --cpu=x86_64 oder/oder --compiler=ppcx64.

MiSchi
MiSchi macht die fink-Pakete

DOS
Beiträge: 18
Registriert: Mi 13. Dez 2017, 21:04
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Kontaktdaten:

Re: Lazarus 1.8.0 Und Mac OS X 10.6 Exit Code 256?

Beitrag von DOS »

Danke dir, finde ich klasse das du dich so ins Zeug legst :)

Hier die gewünschten Daten:
DOSs-MacBook:share DOS$ ppc386 -iTP
i386


Ausgabe von lazbuild ist hier: https://pastebin.com/0VPn5CP9 und 64-Bit https://pastebin.com/NPi5yBn4

Gruß DOS

mischi
Beiträge: 206
Registriert: Di 10. Nov 2009, 18:49
OS, Lazarus, FPC: macOS, 10.13, lazarus 1.8.x, fpc 3.0.x
CPU-Target: 32Bit/64bit

Re: Lazarus 1.8.0 Und Mac OS X 10.6 Exit Code 256?

Beitrag von mischi »

DOS hat geschrieben:Ausgabe von lazbuild ist hier: https://pastebin.com/0VPn5CP9 und 64-Bit https://pastebin.com/NPi5yBn4

Gruß DOS

Da zeigt sich das Übel:
<stdin>:378:2: error: invalid instruction mnemonic 'fistpq'
fistpq -24(%rbp)

Leider ist das kein einfache Sache. Zunächst die Diagnose: fpc erstellt assembler code, der vom Assembler nicht verstanden wird, obwohl der Assembler-Befehl im Befehlssatz von i386 vorhanden ist. Wenigstens ist damit aber der Übeltäter klar. Abhilfe könnte eine neuere Version von Xcode sein, die einen neueren Assembler installiert. Das wäre das erste, was ich probieren würde. Wobei 4.2 zumindest mit 64bit auf 10.7 auch Ärger macht. Einen neueren Assembler aus sourcecode oder clang könnte man auch noch probieren. 10.8 oder gar 10.9 geht nicht mehr auf deinem Mac?

Wenn das nicht hilft, bleibt Lazarus 1.6.2 mit fpc 2.6.4.
MiSchi macht die fink-Pakete

Mathias
Beiträge: 6143
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Lazarus 1.8.0 Und Mac OS X 10.6 Exit Code 256?

Beitrag von Mathias »

Wenn das nicht hilft, bleibt Lazarus 1.6.2 mit fpc 2.6.4.

Vielleicht hilft dir fpcupdelux weiter, dort gibt es auch eine Mac-Version.

https://github.com/newpascal/fpcupdeluxe/releases
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

DOS
Beiträge: 18
Registriert: Mi 13. Dez 2017, 21:04
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
CPU-Target: xxBit
Kontaktdaten:

Re: Lazarus 1.8.0 Und Mac OS X 10.6 Exit Code 256?

Beitrag von DOS »

mischi hat geschrieben:Da zeigt sich das Übel:
<stdin>:378:2: error: invalid instruction mnemonic 'fistpq'
fistpq -24(%rbp)

Leider ist das kein einfache Sache. Zunächst die Diagnose: fpc erstellt assembler code, der vom Assembler nicht verstanden wird, obwohl der Assembler-Befehl im Befehlssatz von i386 vorhanden ist. Wenigstens ist damit aber der Übeltäter klar. Abhilfe könnte eine neuere Version von Xcode sein, die einen neueren Assembler installiert. Das wäre das erste, was ich probieren würde. Wobei 4.2 zumindest mit 64bit auf 10.7 auch Ärger macht. Einen neueren Assembler aus sourcecode oder clang könnte man auch noch probieren. 10.8 oder gar 10.9 geht nicht mehr auf deinem Mac?

Wenn das nicht hilft, bleibt Lazarus 1.6.2 mit fpc 2.6.4.


Ok Laut http://wiki.freepascal.org/Installing_L ... on_MacOS_X sollte 1.8.0 auch noch unter 10.6 laufen, die Informationen sollten dann eventuell mal korregiert werden.

Wie bekomme ich die 3 Pakete denn wieder sauber und restlos vom Mac entfernt das ich die 1.6x Installieren kann? Und Projekte die unter 1.8.0 erzegt wurden, lassen sich auch in 1.6 laden?

Mfg. DOS

mischi
Beiträge: 206
Registriert: Di 10. Nov 2009, 18:49
OS, Lazarus, FPC: macOS, 10.13, lazarus 1.8.x, fpc 3.0.x
CPU-Target: 32Bit/64bit

Re: Lazarus 1.8.0 Und Mac OS X 10.6 Exit Code 256?

Beitrag von mischi »

Ich verfolge im Moment noch die Fährte commandline tools, weil ich da selber Probleme habe. Was mich in dem Zusammenhang stört ist, dass du nur Xcode 4.0.2 hast, ob wohl Xcode 4.6.3 die letzte Version für 10.7 ist. Es ist nicht ganz einfach zu finden, aber auf https://developer.apple.com/download/more/ kannst du doch 4.6.3 herunter laden.

Für das Entfernen von fpc und lazarus gab es ein Skript. Such mal auf der wiki-seite von freepascal/lazarus.

MiSchi.
MiSchi macht die fink-Pakete

mischi
Beiträge: 206
Registriert: Di 10. Nov 2009, 18:49
OS, Lazarus, FPC: macOS, 10.13, lazarus 1.8.x, fpc 3.0.x
CPU-Target: 32Bit/64bit

Re: Lazarus 1.8.0 Und Mac OS X 10.6 Exit Code 256?

Beitrag von mischi »

Ich habe mir mal diverse Xcode Versionen und cctools angeschaut. Ich habe die nicht wirklich getestet, sondern nur die Version von as ausgeben lassen. Die bleibt wider Erwarten immer gleich, bei 1.38. Abgelöst wurde die dann durch die Verwendung des Assemblers von clang. Eine Variante ist, einen neueren Assembler statt aus den cctools von Apple aus den originalen binutils von gnu zu erstellen, die andere Variante, den Assembler aus clang zu verwenden. Das muss aber alles in meiner Freizeit geschehen, dauert also.

Lazarus und FreePascal entfernen ist hier beschreiben: http://wiki.freepascal.org/Installing_L ... ree_Pascal

MiSchi.
MiSchi macht die fink-Pakete

Antworten