MacBook Air (ab Ende 2020 M1 Arm64) & fpcupdeluxe

Für alles, was in den übrigen Lazarusthemen keinen Platz, aber mit Lazarus zutun hat.
Antworten
Benutzeravatar
six1
Beiträge: 782
Registriert: Do 1. Jul 2010, 19:01

MacBook Air (ab Ende 2020 M1 Arm64) & fpcupdeluxe

Beitrag von six1 »

Hi,
ich habe es getan... 8)
Ich habe mich immer von Apple ferngehalten.
Mein Sohn ist Softwareentwickler MoS und hat mich auf den neuen Prozessor im MacBook Air aufmerksam gemacht.
Nun habe ich so ein Teil mit 8GB/512GB hier liegen und wollte es für mich aufregender gestalten, indem ich "erst mal kurz Lazarus aufspiele"... so gehen Abenteuer immer los :lol:

Mit Rosetta kann man eine x86_64 Mac Version einspielen.
Ich habe das Umfeld mit Rosetta erst mal verstehen müssen (bin ja kein Apple Spezialist).
Begeistert war ich nicht, denn eigentlich wollte ich über fpcupdeluxe eine für meine Bedürfnisse angepasste Version mit CrossCompilern installieren.
Auch hatte ich einige Probleme mit der Installation und spätestens nach dem Einbinden meiner zig Komponenten und verschiedenen Problemen, war die "Rosetta" Variante vom Tisch. Ich wollte unbedingt fpcupdeluxe und MEINE Version von Lazarus.

Dieser Wunsch bringt aber erst die Probleme...
Ich habe mir vom fpcupdeluxe repo die Version "fpcupdeluxe_x86_64-darwin-cocoa" heruntergeladen.
Diese lies sich 1a starten, jedoch beim starten des Builds meiner Auswahl kam innerhalb einer Sekunde die Meldung, dass "svn" nicht verfügbar sei... irgend was ist immer :shock:

Kurz in Google gesucht und: svn gibts nicht mehr in "11.4 Big Sur", dem aktuellen Betriebssystem des MacBock Air.
Ok.. nachfolgend, um es abzukürzen, die Installation von subversion:

Code: Alles auswählen

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

export PATH=$PATH:/opt/homebrew/bin

brew options subversion

svn --version
svn ist an Bord!
fpcupdeluxe nochmal angeworfen; Ergebnis: cannot find "svn" :shock:
Derzeit also noch kein Build in der M1 Arm64 Technologie; klingt hart, is' aber so...

Ich sehe das als "Reise zur Erkenntnis" an; muss mich erst mal an die "fehlende Tasten Technologie" gewöhnen :lol:
Wenn ich mehr rausgefunden habe, schreibe ich das hier fort.

Wenn jemand mehr darüber weiß und das hier mitteilen möchte; nur zu, würde mich freuen an eurem Wissen Teil zu haben.

PS:
Was ich vorher vergessen habe mitzuteilen ist, dass das Teil Rattenschnell ist und nach 7 Stunden Laufzeit bei 77% Akku ist!
Also die Hardware ist auf jeden Fall grandios...

XCode und Command Line Utilities ist installiert (Voraussetzung für LAZ Installation!)
Zuletzt geändert von six1 am Do 8. Jul 2021, 17:46, insgesamt 3-mal geändert.
Gruß, Michael

Michl
Beiträge: 2505
Registriert: Di 19. Jun 2012, 12:54

Re: MacBook Air (ab Ende 2020 M1 Arm) & fpcupdeluxe

Beitrag von Michl »

Hab keine Ahnung vom Mac, aber evtl. ist ein Snapshot hilfreich?: https://sourceforge.net/projects/macos- ... snapshots/

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection; 

PascalDragon
Beiträge: 825
Registriert: Mi 3. Jun 2020, 07:18
OS, Lazarus, FPC: L 2.0.8, FPC Trunk, OS Win/Linux
CPU-Target: Aarch64 bis Z80 ;)
Wohnort: München

Re: MacBook Air (ab Ende 2020 M1 Arm) & fpcupdeluxe

Beitrag von PascalDragon »

six1 hat geschrieben:
Do 8. Jul 2021, 07:54
Wenn jemand mehr darüber weiß und das hier mitteilen möchte; nur zu, würde mich freuen an eurem Wissen Teil zu haben.
fpcupdeluxe schön und gut, du könntest aber auch erstmal mit dem Standard gehen: Du ladest dir von hier das Intel/ARM64 Release von FPC 3.2.2 runter, installierst das (Achtung: du musst sicherstellen, dass du XCode zusammen mit den Command Line Utilities vorher installiert hast). Für Lazarus hat der User trev vom internationalem Forum hier eine Anleitung zur Verwendung seiner Daily Builds bereitgestellt. Ansonsten sollte auch diese Wiki Seite sehr hilfreich sein, bis es ein offizielles Release gibt.
FPC Compiler Entwickler

Benutzeravatar
six1
Beiträge: 782
Registriert: Do 1. Jul 2010, 19:01

Re: MacBook Air (ab Ende 2020 M1 Arm) & fpcupdeluxe

Beitrag von six1 »

Danke @PascalDragon
XCode hatte ich vergessen zu erwähnen --> ist installiert
Dann probiere ich das erstmal nach Deinem Vorschlag :wink:
Gruß, Michael

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6198
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: MacBook Air (ab Ende 2020 M1 Arm) & fpcupdeluxe

Beitrag von af0815 »

Du kannst auch mal im internationalen Forum im fpcupdeluxe thread Alfred mal anpingen. Hier im deutschen Forum liest er auch mit, wenn es um fpcupdeluxe geht.

Das mit dem 'cannot find svn' wird sicher nur daher kommen, das auf der neuen Plattform die Suchpfade von fpcupdeluxe noch nicht ganz stimmen werden.

Hut ab, das du die Herausforderung mit dem angebissenen Obst annimmst :D
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Benutzeravatar
six1
Beiträge: 782
Registriert: Do 1. Jul 2010, 19:01

Re: MacBook Air (ab Ende 2020 M1 Arm) & fpcupdeluxe

Beitrag von six1 »

af0815 hat geschrieben:
Do 8. Jul 2021, 10:32
Hut ab, das du die Herausforderung mit dem angebissenen Obst annimmst :D
jaja... ich bin mir noch nicht sicher, ob das eine gute Idee war! :lol:

Zumindest habe ich so mein tägliches Zeug drauf über Browserlinks und auch Teamviewer, womit ich mich natürlich elegant mit meinem Entwicklungsserver verbinden kann und keine Not habe...
Aber das ist ja keine Herausforderung :lol:

Ich denke, Alfred liest das so und so; früher oder später...

hier noch die Ausgabe von svn --version

Code: Alles auswählen

svn --version
svn, Version 1.14.1 (r1886195)
   übersetzt am Jul  5 2021, um 10:03:29 auf arm-apple-darwin20.5.0

Copyright (C) 2021 The Apache Software Foundation.
This software consists of contributions made by many people;
see the NOTICE file for more information.
Subversion is open source software, see http://subversion.apache.org/

Die folgenden ZugriffsModule (ZM) für Projektarchive stehen zur Verfügung:

* ra_svn : Modul zum Zugriff auf ein Projektarchiv über das svn-Netzwerkprotokoll.
  - mit Cyrus-SASL-Authentifizierung
  - behandelt Schema »svn«
* ra_local : Modul zum Zugriff auf ein Projektarchiv auf der lokalen Festplatte
  - behandelt Schema »file«
* ra_serf : Module for accessing a repository via WebDAV protocol using serf.
  - using serf 1.3.9 (compiled with 1.3.9)
  - behandelt Schema »http«
  - behandelt Schema »https«

Die folgenden Speicherbereiche für Zugangsdaten sind verfügbar:

* Mac OS X Keychain
Gruß, Michael

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: MacBook Air (ab Ende 2020 M1 Arm) & fpcupdeluxe

Beitrag von mschnell »

six1 hat geschrieben:
Do 8. Jul 2021, 07:54
PS:
Was ich vorher vergessen habe mitzuteilen ist, dass das Teil Rattenschnell ist und nach 7 Stunden Laufzeit bei 77% Akku ist!
Also die Hardware ist auf jeden Fall grandios...
Gibt es bestimmt auch Linux für :twisted: :twisted: :twisted:
-> https://www.youtube.com/watch?v=nIQvbPw3IjA
-> https://www.youtube.com/watch?v=FzkLILpNGZw
-Michael

Benutzeravatar
six1
Beiträge: 782
Registriert: Do 1. Jul 2010, 19:01

Re: MacBook Air (ab Ende 2020 M1 Arm) & fpcupdeluxe

Beitrag von six1 »

hier stand Quatsch...
Die fpc-src findet man hier:
https://sourceforge.net/projects/freepa ... rce/3.2.2/
Zuletzt geändert von six1 am Do 8. Jul 2021, 17:28, insgesamt 1-mal geändert.
Gruß, Michael

Benutzeravatar
six1
Beiträge: 782
Registriert: Do 1. Jul 2010, 19:01

Re: MacBook Air (ab Ende 2020 M1 Arm) & fpcupdeluxe

Beitrag von six1 »

Diese Sourcen: https://sourceforge.net/projects/freepa ... p/download

Entpacken und Inhalt von entpacktem Ordner "fpc-3.2.2" nach "/usr/local/share/fpcsrc/3.2.2" kopieren.
( weitere Details hier nachlesen LINK )

Danach im Terminal die paar Zeilen reinkopieren und ausführen

Code: Alles auswählen

cd /usr/local/share/fpcsrc/3.2.2

make distclean

make FPC=ppcx64 OPT="-ap -FD/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin -XR/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk" CPU_TARGET=aarch64 -j 4 FPMAKEOPT="-T 4" all > build.log

Es wurde dabei ein Compiler erzeugt: /usr/local/share/fpcsrc/3.2.2/compiler/ppca64  Hurra!  8)

rm -f ppca64  ; cp compiler/ppca64 .

make distclean
make FPC=$PWD/ppca64 OPT="-ap -FD/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin -XR/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk" -j 4 FPMAKEOPT="-T 4" OVERRIDEVERSIONCHECK=1 all > build.log

sudo make FPC=$PWD/ppca64 OPT="-ap -FD/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin -XR/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk" install

sudo ln -sf /usr/local/lib/fpc/3.2.2/ppca64 /usr/local/bin
Damit ist alles bereit, die installierte Lazarus Version Lazarus-2.0.12-x86_64-macosx.pkg zu starten und "Werkzeuge" "Kompiliere Lazarus mit Profil..." zu starten, damit nun mit dem ppca64 Compiler die IDE nativ compiliert wird.
Das läuft bei mir an und werkelt eine Zeit lang, bis es dort aufhört:
photo_2021-07-08_17-09-17.jpg
photo_2021-07-08_17-09-17.jpg (130.68 KiB) 3708 mal betrachtet
photo_2021-07-08_17-35-00.jpg
photo_2021-07-08_17-35-00.jpg (51.59 KiB) 3703 mal betrachtet
immerhin, ein Teilerfolg :mrgreen:
Gruß, Michael

Benutzeravatar
six1
Beiträge: 782
Registriert: Do 1. Jul 2010, 19:01

Re: MacBook Air (ab Ende 2020 M1 Arm64) & fpcupdeluxe

Beitrag von six1 »

Nach vielen erfolglosen Versuchen fpc-src mit einem nativen System von Lazarus herzustellen, habe ich diesen Weg verworfen.
Ich konnte zwar einen Compiler ppca64 erstellen, jedoch Lazarus mit diesem zu compilieren scheiterte.
In der Hauptsache daran, das cocoautils einen Fehler meldete (s.o.), den ich nicht beheben konnte.
Man benötigt die Trunk Sourcen 2.3/3.3.1, wo der Fehler wohl behoben ist.

Ich habe dann eine fpcupdeluxe Version gefunden, welche nativ auf arm64 M1 läuft:
https://forum.lazarus.freepascal.org/in ... 27.30.html

Vielen, vielen Dank an MiR!

Mit dieser fpcupdeluxe version ist es möglich, lazarus nativ zu erstellen. (NUR die .git Einträge für LAZ und FPC verwenden!, da svn auf BigSur 11.x nicht vorhanden ist und die brew Inst. von svn von fpcupdeluxe nicht gefunden wird!)

Ich habe die Trunk.git Version für fpc und laz gewählt und geendet hat die fpcupdeluxe Installation mit:
Image2.jpg
Image2.jpg (97.57 KiB) 3619 mal betrachtet
Hurra 8)
Gruß, Michael

FPK
Beiträge: 65
Registriert: Mi 21. Mai 2008, 19:38
Wohnort: Erlangen

Re: MacBook Air (ab Ende 2020 M1 Arm64) & fpcupdeluxe

Beitrag von FPK »

Ich bin notebookseitig inzwischen auch auf ein M1 umgestiegen und ich verwende FPC 3.2.2 mit Lazarus-trunk: FPC 3.2.2 ganz normal mit dem Installer installieren, Lazarus trunk per git oder svn runterladen, lazarus mit make all bauen. startlazarus starten. Für den einfachen Anwendungsfall ist fpcdeluxe eigentlich nicht nötig.

Benutzeravatar
six1
Beiträge: 782
Registriert: Do 1. Jul 2010, 19:01

Re: MacBook Air (ab Ende 2020 M1 Arm64) & fpcupdeluxe

Beitrag von six1 »

@FPK
Du kompilierst dann Darwin/x86_64 ?

Ich habe ein Projekt, welches auf mysql zugreift.
Hierfür brauche ich die mysqldb oder mariadb lib.
Ich habe mit brew mariadb-connector-c eingespielt. Damit findet Zeosdb keine lib.
Lib über LibraryLocation in Zeos Connection direkt ausgewählt --> found, but could not be loaded

libmysqlclient.18.dylib für macOS x86_64 heruntergeladen und in ZConnection LibraryLocation ausgewählt --> found, but could not be loaded

Welche libmariadb.dylib muss ich verwenden?


Gelöst:
symlink erstellen auf macOS x86_64 lib

ln -s ./libmysqlclient.18.dylib ./libmysqlclient.dylib
Gruß, Michael

andies
Beiträge: 6
Registriert: Sa 15. Jan 2022, 15:25

Re: MacBook Air (ab Ende 2020 M1 Arm64) & fpcupdeluxe

Beitrag von andies »

six1 hat geschrieben:
Fr 9. Jul 2021, 08:43
Ich habe die Trunk.git Version für fpc und laz gewählt und geendet hat die fpcupdeluxe Installation mit:
Danke für den Tipp (aus viewtopic.php?f=9&t=14072), ich habe mal Deine Installation mit meiner verglichen. Ich habe Lazarus 2.2.0, bei Dir 2.3.0; ich habe fpc 3.2.2 und bei Dir 3.3.1. Insbesondere bei mir x86_64-darwin-cocoa, bei Dir aarch64-darwin-cocoa. Also das wäre einen Versuch wert.

Aber heißt das, dass ich alles selbst kompilieren muss? Und dann helfen mir doch die Wikieinträge nicht weiter, weil man da vorkompilierte binaries holt, oder? Wo kann ich da was nachlesen?

Benutzeravatar
six1
Beiträge: 782
Registriert: Do 1. Jul 2010, 19:01

Re: MacBook Air (ab Ende 2020 M1 Arm64) & fpcupdeluxe

Beitrag von six1 »

Hi Andies,
ja, mit fpcupdeluxe alles neu kompiliert!
Gruß, Michael

andies
Beiträge: 6
Registriert: Sa 15. Jan 2022, 15:25

Re: MacBook Air (ab Ende 2020 M1 Arm64) & fpcupdeluxe

Beitrag von andies »

OK, dann mache ich das mal. Ich habe auch gesehen, dass eine Fehlermeldung dahin zeigt. Wenn ich die Voreinstellungen so ändere, wie in dem anderen Post angegeben, kommt

Code: Alles auswählen

Compiler "/usr/local/bin/ppc386" unterstützt nicht das Ziel aarch64-darwin
Aber eigentlich sollte gar nicht ppc386 genutzt werden, sondern ppca64 (wenn ich das richtig verstehe).

Antworten