Difference between revisions of "Target Darwin"

From Lazarus wiki
Jump to navigationJump to search
(Remove out of date warning; More -> See also + add links)
(→‎See also: Add MacOS target page link)
Line 32: Line 32:
  
 
* [[Portal:Mac|Mac Portal]].
 
* [[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]]
+
* [[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.
  
 
[[Category:iOS]]
 
[[Category:iOS]]
 
[[Category:macOS]]
 
[[Category:macOS]]

Revision as of 06:05, 14 April 2021

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)

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