Difference between revisions of "Target Darwin"

From Lazarus wiki
Jump to navigationJump to search
m (Category Mac OS X added)
m (Tweak warning note)
 
(17 intermediate revisions by 2 users not shown)
Line 1: Line 1:
= Introduction =
+
{{Platform only|macOS}}
 +
{{Platform only|iOS}}
 +
{{LanguageBar}}
  
Darwin is the target for Mac OS X, both PowerPC and i386. Programs may also be run on a machine with only Darwin installed.
+
{{Warning2|In Lazarus 2.2.0/FPC 3.2.2 and later, the target for building iOS applications was changed from Darwin to iOS due to the advent of the Apple Silicon M1 (ARM64) processor in Mac computers.}}
  
= Installation =
+
== Introduction ==
  
There are two possibilities:
+
Darwin is the target for macOS and iOS, both PowerPC, ARM and ARM64, i386 and X86_64. Programs may also be run on a machine with only Darwin installed.
  
1) Download the disk image with the installer from the [http://www.freepascal.org/download.var download page].
+
== Installation ==
  
2) Use fink (http://fink.sourceforge.net)
+
See [[Installing Lazarus on macOS]].
  
 +
== Usage ==
  
In addition, daily snapshots of the development powerpc and i386 versions of fpc and lazarus are available at (usage at own risk):
+
1) [http://forum.lazarus.freepascal.org Lazarus IDE]
  
http://ftp.de.freepascal.org/pub/lazarus/
+
Lazarus is a Delphi-style RAD environment
  
http://ftp.hu.freepascal.org/pub/lazarus/
+
2) [http://www.ragnemalm.se/lightweight/ Lightweight IDE]
  
http://ftp.ca.freepascal.org/pub/lazarus/
+
A free IDE in the classic Mac style
  
http://michael-ep3.physik.uni-halle.de/Lazarus/
+
3) Any Editor (AlphaX, BBedit, ...) and command line (fpc your_pascal_program.pas)
  
= Usage =
+
== Universal binaries ==
  
1) Any Editor (AlphaX, BBedit, ...) and command line (fpc your_pascal_program.pas)
+
Normally for each processor - operating system combination there is one executable, but in macOS you can combine an aarch64 (ARM64) binary and an x86_64 binary into a so-called "universal binary" or "multi-architecture binary" that will run on both Apple ARM64 processors and Intel 64 bit processors. To do this the ARM64 and x86_64 executables have to be compiled separately and then combined using the <code>lipo</code> command line utility.
  
2) Xcode
+
It is also possible to combine a PowerPC binaries and an x86 binaries into a single combined binary using the <code>lipo</code> command line tool. You would need to first [https://sourceforge.net/projects/freepascal/files/Mac%20OS%20X/ download the PowerPC cross-compiler] so you only need to use <code>ppcppc</code> instead of <code>fpc</code> to build your project to generate the PowerPC binary. If you have a PowerPC computer, then the simplest solution is to build the x86 binary on a different computer with x86 architecture.
  
The FPC installer disk images contain installers with Xcode templates.
+
== See also ==
  
3) Lightweight IDE
+
* [[Portal:Mac|Mac Portal]].
 +
* [[macOS_Big_Sur_changes_for_developers#Creating_a_universal_binary_for_aarch64_and_x86_64| Creating a universal binary for aarch64 and x86_64]].
 +
* [[Target MacOS]] for PowerPC processors.
  
An free IDE in the classic Mac style: http://www.ragnemalm.se/lightweight/
+
[[Category:iOS]]
 
+
[[Category:macOS]]
4) PascalGladiator
 
 
 
A free graphical IDE for FPC and debugger front-end for GDB: http://www.thealchemistguild.org/pascalgladiator/
 
 
 
5) DOS-like IDE
 
 
 
A description of how to get the IDE running is here: [[How to get the fpc ide running under Mac OS X]]
 
 
 
6) Lazarus
 
 
 
Lazarus is a Delphi-style RAD environment: http://forum.lazarus.freepascal.org
 
 
 
= Universal binaries =
 
 
 
Normally for each processor - operating system combination there is one executable, but in Mac OS X you can combine a PowerPC and a x86 binary into a so called "Universal Binary". To do this the PowerPC and i386 executables have to be compiled separately and then combined using the ''lipo'' command line tool.
 
 
 
The Free Pascal installer for x86 already installs a PowerPC cross-compiler so you only need to use ppcppc instead of fpc to build your project to have the PowerPC binary. If have a PowerPC computer, then the simplest solution is to build the x86 binary in a different computer with x86 architecture, or use an emulator to run Mac OS X running in x86 architecture.
 
 
 
= More =
 
 
 
* Mac OS Pascal universal interfaces are part of the fpc packages: check packages/univint
 
 
 
*  IDE already works, except for some graphic glitches on the user output screen,
 
 
 
* can mouse events be supported with Terminal.app and X11.app? how?
 
** It is not possible to support the mouse in Terminal.app. In xterm (X11) it should be possible.
 
 
 
[[Category:Mac OS X]]
 

Latest revision as of 00:54, 29 March 2022

macOSlogo.png

This article applies to macOS only.

See also: Multiplatform Programming Guide

Apple iOS new.svg

This article applies to iOS only.

See also: Multiplatform Programming Guide

English (en)

<translate> Warning: </translate> Warning In Lazarus 2.2.0/FPC 3.2.2 and later, the target for building iOS applications was changed from Darwin to iOS due to the advent of the Apple Silicon M1 (ARM64) processor in Mac computers.

Introduction

Darwin is the target for macOS and iOS, both PowerPC, ARM and ARM64, i386 and X86_64. Programs may also be run on a machine with only Darwin installed.

Installation

See Installing Lazarus on macOS.

Usage

1) Lazarus IDE

Lazarus is a Delphi-style RAD environment

2) Lightweight IDE

A free IDE in the classic Mac style

3) Any Editor (AlphaX, BBedit, ...) and command line (fpc your_pascal_program.pas)

Universal binaries

Normally for each processor - operating system combination there is one executable, but in macOS you can combine an aarch64 (ARM64) binary and an x86_64 binary into a so-called "universal binary" or "multi-architecture binary" that will run on both Apple ARM64 processors and Intel 64 bit processors. To do this the ARM64 and x86_64 executables have to be compiled separately and then combined using the lipo command line utility.

It is also possible to combine a PowerPC binaries and an x86 binaries into a single combined binary using the lipo command line tool. You would need to first download the PowerPC cross-compiler so you only need to use ppcppc instead of fpc to build your project to generate the PowerPC binary. If you have a PowerPC computer, then the simplest solution is to build the x86 binary on a different computer with x86 architecture.

See also