Difference between revisions of "User:Marc"
Line 24: | Line 24: | ||
The most easy way to do it, is to follow step 0 of http://www.freepascal.org/xcode.html | The most easy way to do it, is to follow step 0 of http://www.freepascal.org/xcode.html | ||
− | This way the interfaces are patched to work with | + | This way the interfaces are patched to work with FPC. Side effect is that you need XCode. If everything went OK, you now have the Carbon interface sources in /Developer/Pascal/UPInterfaces |
TODO: document steps for Lazarus alone | TODO: document steps for Lazarus alone |
Revision as of 23:35, 7 September 2005
My Todo
LCL
- Make imagelist widgetset specific
- adjust Listviews for imagelists
- update toolbar
- update treeview
Carbon interface
- make initial interface so that a hello world would work
- Make a Ansistring based CFString (CFStringCreateWithCStringNoCopy, add refcount and release with contentsDeallocator)
Debugger
- Fix bugs
- Make native win32 debugger
Linux 64
- Make it work™
Spark
- Fix gtk scrollbars
Installing Carbon on OSX
Install Apples Universal PInterfaces
The most easy way to do it, is to follow step 0 of http://www.freepascal.org/xcode.html
This way the interfaces are patched to work with FPC. Side effect is that you need XCode. If everything went OK, you now have the Carbon interface sources in /Developer/Pascal/UPInterfaces
TODO: document steps for Lazarus alone
Compile the PInterfaces
The way the interfaces are setup look like they are compiled each time for your project. This is IMO not neccesary. You don't compile the LCL each time for your own app (or do you ?).
- Create a Units/powerpc-darwin subdir in the /Developer/Pascal/UPInterfaces dir
- Compile Carbon.p:
ppcppc Carbon.p -Mmacpas -FE/Developer/Pascal/UPInterfaces/Units/powerpc-darwin
- Now you have a compiled carbon interface, which only has to be recompiled as the interfaces changes.
- Edit the global /etc/fpc.cfg (or your local .fpc.cfg) and add the lines:
-Fu/Developer/Pascal/UPInterfaces/Units/$fpctarget
-k-framework Carbon
- eventually you can add:
-Fu<your_lazarus_dir>/lcl/units/$fpctarget
-Fu<your_lazarus_dir>/lcl/units/$fpctarget/carbon -Fu<your_lazarus_dir>/components/units/$fpctarget
Compile the LCL
Now we are ready to compile the LCL (from your lazarusdir):
make lcl LCL_PLATFORM=carbon
When you already have a running (and compiled) gtk interface, it can be easier. Go to the lcl/interfaces/carbon dir and type make.