Difference between revisions of "Portal:Mac"

From Free Pascal wiki
Jump to navigationJump to search
m (Mac OS -> Mac OS Classic)
m (Add PowerPC reference)
 
(36 intermediate revisions by 2 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" |
[[File:Logo OSX.png|right]]
+
[[File:macOSlogo.png|right]]
This portal provides an overview of development for macOS (previously marketed as Mac OS and Mac OS X) 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.
 +
 
 +
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.
  
Development for macOS is easy with Lazarus using the Carbon widgetset. Other widgetsets like Qt or Cocoa (still being developed) are supported, too, but their usage requires additional efforts. Free Pascal can also be used to develop Software for Mac OS Classic and older versions of Mac OS X (before Tiger).
 
 
|-   
 
|-   
 
| valign="top" |
 
| valign="top" |
Line 13: Line 15:
  
 
{{Portal_Head2|87CEFA|'''Related topics'''}}
 
{{Portal_Head2|87CEFA|'''Related topics'''}}
'''Platform Portals:''' [[Portal:Android|Android]] - [[Portal:FreeBSD|FreeBSD]] - [[Portal:iOS|iOS]] - [[Portal:Linux|Linux]] - [[Portal:Mac|Mac]] - [[Portal:Windows|Windows]] - [[Portal:Web Development|Web Development]]
+
'''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 Classic|Mac OS Classic]]''' - '''[[:Category:Mac OS X|Mac OS X]]''' - '''[[:Category:OS X|OS X]]''' - '''[[:Category:macOS|macOS]]''' - [[:Category:Unix|Unix]] - [[:Category:Objective Pascal|Objective Pascal]]
+
'''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>
 
|}
 
|}
 +
 
<gallery>
 
<gallery>
File:Lazarus_Mac_OS_X.png
+
File:Screen Shot 2021-09-25 at 2.02.48 pm.jpg|Lazarus 2.2, macOS 12
File:Lazarusmac0.9.25.jpg
+
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
+
File:Lazarus 1.0.8 Mac OS X Leopard.png|Lazarus 1.0, macOS 10.5
File:MenuItems2.jpg
+
File:avmidiplayer2.png|Midi Player
File:codesigning.png
+
File:codesigning.png|Code signing
File:MenuItems4.jpg
 
 
</gallery>
 
</gallery>
<div style="float:left; width:60%;"> <!-- Both "width" values should add up to 100% -->
+
 
 +
</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" |
 +
{{{{FULLPAGENAME}}/Installation}}
 +
|}
 +
 
 +
{{Portal_Head|00a0cb|FAQs|dfe2eb|000000||Template:{{FULLPAGENAME}}/FAQs}}
 +
<!-- ------------------------ FAQS ---------------------------- -->
 +
{| width="100%" class = "wikitable"
 +
| valign="top" |
 +
{{{{FULLPAGENAME}}/FAQs}}
 +
|}
  
 
{{Portal_Head|00a0cb|Development Techniques|dfe2eb|000000||Template:{{FULLPAGENAME}}/Development_Techniques}}
 
{{Portal_Head|00a0cb|Development Techniques|dfe2eb|000000||Template:{{FULLPAGENAME}}/Development_Techniques}}
Line 34: Line 55:
 
{{{{FULLPAGENAME}}/Development_Techniques}}
 
{{{{FULLPAGENAME}}/Development_Techniques}}
 
|}
 
|}
<br/>
+
 
 
{{Portal_Head|00a0cb|APIs and Headers|dfe2eb|000000||Template:{{FULLPAGENAME}}/APIs and Headers}}
 
{{Portal_Head|00a0cb|APIs and Headers|dfe2eb|000000||Template:{{FULLPAGENAME}}/APIs and Headers}}
 
<!-- ------------------------ APIS AND HEADERS ---------------------------- -->
 
<!-- ------------------------ APIS AND HEADERS ---------------------------- -->
Line 42: Line 63:
 
|}
 
|}
  
{{Portal_Head|00a0cb|FAQs|dfe2eb|000000||Template:{{FULLPAGENAME}}/FAQs}}
 
<!-- ------------------------ FAQS ---------------------------- -->
 
{| width="100%" class = "wikitable"
 
| valign="top" |
 
{{{{FULLPAGENAME}}/FAQs}}
 
|}
 
 
</div>
 
</div>
<div style="float:right; width:39%"> <!-- Both "width" values should add up to 100% -->
 
  
{{Portal_Head|00a0cb|Installation|dfe2eb|000000||Template:{{FULLPAGENAME}}/Installation}}
+
<div style="float:right; width:46%;”> <!-- Both "width" values should add up to 100% -->
<!-- ------------------------ INSTALLATION ---------------------------- -->
+
 
 +
{{Portal_Head|00a0cb|Special Topics|dfe2eb|000000||Template:{{FULLPAGENAME}}/Special Topics}}
 +
<!-- ------------------------ SPECIAL TOPICS ---------------------------- -->
 
{| width="100%" class = "wikitable"
 
{| width="100%" class = "wikitable"
 
| valign="top" |
 
| valign="top" |
{{{{FULLPAGENAME}}/Installation}}
+
{{{{FULLPAGENAME}}/Special Topics}}
 
|}
 
|}
<br/>
+
 
{{Portal_Head|00a0cb|Special Topics|dfe2eb|000000||Template:{{FULLPAGENAME}}/Special Topics}}
+
{{Portal_Head|00a0cb|Legacy Information|dfe2eb|000000||Template:{{FULLPAGENAME}}/Legacy Information}}
<!-- ------------------------ SPECIAL TOPICS ---------------------------- -->
+
<!-- ------------------------ LEGACY INFORMATION ----------------------- -->
 
{| width="100%" class = "wikitable"
 
{| width="100%" class = "wikitable"
 
| valign="top" |
 
| valign="top" |
{{{{FULLPAGENAME}}/Special Topics}}
+
{{{{FULLPAGENAME}}/Legacy Information}}
 
|}
 
|}
 
<br/>
 
<br/>
 
 
</div>
 
</div>
  
[[Category:Mac OS|!Mac Portal]]
+
[[Category:macOS|!macOS Portal]]
[[Category:Mac OS X|!Mac Portal]]
+
[[Category:Mac OS Classic]]
[[Category:OS X|!Mac Portal]]
+
[[Category:Portals|macOS Portal]]
[[Category:Mac OS Classic|!Mac Portal]]
 
[[Category:macOS|!Mac Portal]]
 
[[Category:Portals|!Mac Portal]]
 

Latest revision as of 10: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.