Difference between revisions of "Portal:Mac"

From Free Pascal wiki
Jump to navigationJump to search
m (Add PowerPC reference)
(79 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
{{Index-Portal}}
 
{{Index-Portal}}
 
 
{{Portal_Head2|00a0cb|<big>{{PAGENAME}}</big>|dfe2eb|000000}}
 
{{Portal_Head2|00a0cb|<big>{{PAGENAME}}</big>|dfe2eb|000000}}
{| width="100%" class = "wikitable">
+
{| width="100%" class = "wikitable"
 
| valign="top" |
 
| valign="top" |
<div style="float:left;margin-right:0.9em">
+
[[File:macOSlogo.png|right]]
This portal provides an overview of development for Mac OS with Lazarus and Free Pascal.
+
This portal provides an overview of development for '''Apple Silicon M1 Macs and Intel Macs''' running macOS (previously marketed as Mac OS X until 2012 and OS X until 2016) with Lazarus and Free Pascal.
</div>
+
 
 +
Development of macOS software is easy with Lazarus using the Cocoa (64 bit) widgetset. The Carbon (32 bit) widgetset is also available but only for 32 bit software and only up to macOS 10.14 Mojave. Apple removed the Carbon framework from macOS 10.15 Catalina (2019) - that operating system and future versions no longer run any 32 bit software. Other widgetsets like Qt are also supported, but their use requires additional effort.
 +
 
 +
Free Pascal can also be used to develop software for PowerPC Macs, Mac OS Classic and older versions of macOS (before Tiger). Refer to the Legacy Information section at the bottom of this page.
 +
 
 
|-   
 
|-   
 
| valign="top" |
 
| valign="top" |
 
<div style="margin-left:1em">
 
<div style="margin-left:1em">
 +
 
{{Portal_Head2|87CEFA|'''Related topics'''}}
 
{{Portal_Head2|87CEFA|'''Related topics'''}}
'''Portals:''' [[Portal:iOS|iOS]] - [[Portal:Linux|Linux]]
+
'''Platform Portals:''' [[Portal:Android|Android]] - [[Portal:Embedded|Embedded]] - [[Portal:FreeBSD|FreeBSD]] - [[Portal:iOS|iOS]] - [[Portal:Linux|Linux]] - [[Portal:Mac|Mac]] - [[Portal:WinCE|WinCE]] - [[Portal:Windows|Windows]]
  
'''Categories:''' '''[[:Category:Mac OS|Mac OS]]''' - '''[[:Category:Mac OS X|Mac OS X]]''' - [[:Category:Unix|Unix]]
+
'''Topic Portals:''' [[Portal:New Users|<font color=green>'''New Users'''</font>]] - [[Portal:Databases|Database Development]] - [[Portal:Game Development|Game Development]] - [[Portal:Hardware and Robotics|Hardware and Robotics]] - [[Portal:HowTo Demos|HowTo Demos]] - [[Portal:SciTech|Science and Technology]] - [[Portal:Web Development|Web Development]]
  
 +
'''Categories:''' '''[[:Category:Mac OS Classic|Mac OS Classic]]''' - '''[[:Category:macOS|macOS]]''' - '''[[:Category:Unix|Unix]]''' - '''[[:Category:Objective Pascal|Objective Pascal]]''' - '''[[:Category:Objective-C|Objective C]]'''
 
</div>
 
</div>
 
|}
 
|}
<br/>
 
<div style="float:left; width:60%;"> <!-- Both "width" values should add up to 100% -->
 
  
{{Portal_Head2|00a0cb|Development Techniques|dfe2eb|000000}}
+
<gallery>
{| width="100%" class = "wikitable">
+
File:Screen Shot 2021-09-25 at 2.02.48 pm.jpg|Lazarus 2.2, macOS 12
 +
File:Lazarus_v2.1_macOS_10_14_6.png|Lazarus 2.1, macOS 10.14
 +
File:Lazarus 1.0.8 Mac OS X Leopard.png|Lazarus 1.0, macOS 10.5
 +
File:avmidiplayer2.png|Midi Player
 +
File:codesigning.png|Code signing
 +
</gallery>
 +
 
 +
</div>
 +
 
 +
<div style="float:left; width:53%;”> <!-- Both "width" values should add up to 100% -->
 +
 
 +
{{Portal_Head|00a0cb|'''Start here'''|dfe2eb|000000||Template:{{FULLPAGENAME}}/Installation}}
 +
<!-- ------------------------ START HERE ---------------------- -->
 +
{| width="100%" class = "wikitable"
 
| valign="top" |
 
| valign="top" |
Basic development techniques with Lazarus and Free Pascal are described here, as well as hints for special optimization approaches.
+
{{{{FULLPAGENAME}}/Installation}}
 +
|}
  
* [[OS X Programming Tips]]
+
{{Portal_Head|00a0cb|FAQs|dfe2eb|000000||Template:{{FULLPAGENAME}}/FAQs}}
* [[Porting from Mac Pascal]]
+
<!-- ------------------------ FAQS ---------------------------- -->
*[[Cross compiling OSX on Linux]]
+
{| width="100%" class = "wikitable"
<div style="float:left;margin-right:0.9em">
+
| valign="top" |
 +
{{{{FULLPAGENAME}}/FAQs}}
 +
|}
  
</div>
+
{{Portal_Head|00a0cb|Development Techniques|dfe2eb|000000||Template:{{FULLPAGENAME}}/Development_Techniques}}
 +
<!-- ------------------------ DEVELOPMENT TECHNIQUES ---------------------------- -->
 +
{| width="100%" class = "wikitable"
 +
| valign="top" |
 +
{{{{FULLPAGENAME}}/Development_Techniques}}
 
|}
 
|}
<br/>
+
 
{{Portal_Head2|00a0cb|APIs and Headers|dfe2eb|000000}}
+
{{Portal_Head|00a0cb|APIs and Headers|dfe2eb|000000||Template:{{FULLPAGENAME}}/APIs and Headers}}
{| width="100%" class = "wikitable">
+
<!-- ------------------------ APIS AND HEADERS ---------------------------- -->
 +
{| width="100%" class = "wikitable"
 
| valign="top" |
 
| valign="top" |
FPC supports several APIs on Mac OS and Mac OS X.
+
{{{{FULLPAGENAME}}/APIs and Headers}}
 
 
*[[Carbon Interface]]
 
*[[FPC and Carbon]]
 
*[[Carbon interface internals]]
 
*[[Cocoa Interface]]
 
*[[FPC PasCocoa]]
 
*[[Qt Interface Mac]]
 
*[[Target Darwin|Target Darwin: Development for all Darwin-based Mac OS flavours (OS X, iOS and Darwin)]]
 
*[[Target MacOS|Target MacOS: Development for Mac OS Classic]]
 
*[[MPW]]
 
 
|}
 
|}
  
 
</div>
 
</div>
<div style="float:right; width:39%"> <!-- Both "width" values should add up to 100% -->
 
  
{{Portal_Head2|00a0cb|Installation|dfe2eb|000000}}
+
<div style="float:right; width:46%;”> <!-- Both "width" values should add up to 100% -->
{| width="100%" class = "wikitable">
+
 
 +
{{Portal_Head|00a0cb|Special Topics|dfe2eb|000000||Template:{{FULLPAGENAME}}/Special Topics}}
 +
<!-- ------------------------ SPECIAL TOPICS ---------------------------- -->
 +
{| width="100%" class = "wikitable"
 
| valign="top" |
 
| valign="top" |
This box describes installation of Lazarus and Free Pascal.
+
{{{{FULLPAGENAME}}/Special Topics}}
*[[Installing Lazarus on MacOS X]]
+
|}
  
|}
+
{{Portal_Head|00a0cb|Legacy Information|dfe2eb|000000||Template:{{FULLPAGENAME}}/Legacy Information}}
<br/>
+
<!-- ------------------------ LEGACY INFORMATION ----------------------- -->
{{Portal_Head2|00a0cb|Special topics|dfe2eb|000000}}
+
{| width="100%" class = "wikitable"
{| width="100%" class = "wikitable">
 
 
| valign="top" |
 
| valign="top" |
*[[Application Bundle]]
+
{{{{FULLPAGENAME}}/Legacy Information}}
*[[FPC PasCocoa/Differences]]
 
*[[objectivepascal]]
 
*[[ObjCParser]]
 
*[[MPW debugging]]
 
*[[Link on target]]
 
*[[univint]]
 
 
 
 
|}
 
|}
 
<br/>
 
<br/>
{{Portal_Head2|00a0cb|FAQs|dfe2eb|000000}}
 
{| width="100%" class = "wikitable">
 
| valign="top" |
 
*[[Carbon interface FAQ]]
 
 
|}
 
 
</div>
 
</div>
  
[[Category:Mac OS|!Mac Portal]]
+
[[Category:macOS|!macOS Portal]]
[[Category:Portals|Mac Portal]]
+
[[Category:Mac OS Classic]]
 +
[[Category:Portals|macOS Portal]]

Revision as of 11:05, 2 June 2022

< Lookup < Portals < Portal:Mac
Portal:Mac
macOSlogo.png

This portal provides an overview of development for Apple Silicon M1 Macs and Intel Macs running macOS (previously marketed as Mac OS X until 2012 and OS X until 2016) with Lazarus and Free Pascal.

Development of macOS software is easy with Lazarus using the Cocoa (64 bit) widgetset. The Carbon (32 bit) widgetset is also available but only for 32 bit software and only up to macOS 10.14 Mojave. Apple removed the Carbon framework from macOS 10.15 Catalina (2019) - that operating system and future versions no longer run any 32 bit software. Other widgetsets like Qt are also supported, but their use requires additional effort.

Free Pascal can also be used to develop software for PowerPC Macs, Mac OS Classic and older versions of macOS (before Tiger). Refer to the Legacy Information section at the bottom of this page.

Start hereedit

This box describes the installation and use of Lazarus and Free Pascal.

FAQsedit
Development Techniquesedit

Basic development techniques with Lazarus and Free Pascal are described here, as well as hints for special optimization approaches.

APIs and Headersedit
Special Topicsedit
Legacy Informationedit
  • macOS Legacy Information Carbon Interface, MacIntosh Programmers Workshop, GDB, Mac Pascal, Objective Pascal, Porting from Mac Pascal, Mode MacPas, Mac OS Classic etc.