Difference between revisions of "Installing Code::Blocks from source on Mac OS X"
m |
|||
Line 29: | Line 29: | ||
== Build CodeBlocks from SVN == | == Build CodeBlocks from SVN == | ||
− | === | + | === Download the source code === |
https://www.codeblocks.org/source_code.shtml | https://www.codeblocks.org/source_code.shtml | ||
Line 35: | Line 35: | ||
=== Bootstrap with Autotools === | === Bootstrap with Autotools === | ||
− | === Configure and GNU Make === | + | === Configure and (GNU) Make === |
=== Install into Destination === | === Install into Destination === | ||
Line 48: | Line 48: | ||
The old resources are handy while developing, while bundles are more suitable for release. | The old resources are handy while developing, while bundles are more suitable for release. | ||
− | === 1. Mac OS (resource) === | + | === Way 1. Mac OS (resource) === |
Handy while developing, as you only need to add an icon. | Handy while developing, as you only need to add an icon. | ||
Line 88: | Line 88: | ||
− | === 2. NeXT (bundle) === | + | === Way 2. NeXT (bundle) === |
This does not involve resources, and is more relocatable. | This does not involve resources, and is more relocatable. |
Revision as of 20:08, 21 February 2006
Install Xcode Tools
http://developer.apple.com/tools/
This will install Apple versions of:
http://www.gnu.org/software/gcc/ http://www.gnu.org/software/gdb/ http://www.gnu.org/software/make/
Check Autotools versions
http://www.gnu.org/software/autoconf/ http://www.gnu.org/software/automake/ http://www.gnu.org/software/libtool/
Build wxWidgets 2.6
http://wxwidgets.org/dl_mac2.htm
Install Subversion client
Build CodeBlocks from SVN
Download the source code
https://www.codeblocks.org/source_code.shtml
Bootstrap with Autotools
Configure and (GNU) Make
Install into Destination
Bundle application for Mac
After building codeblocks in the regular Unix way, you need to bundle it with the icons and various other info that it needs to make a regular stand-alone Macintosh application.
There are two ways of accomplishing this, old Mac OS-style resource or NeXT-style bundle. The old resources are handy while developing, while bundles are more suitable for release.
Way 1. Mac OS (resource)
Handy while developing, as you only need to add an icon.
Files needed:
- http://www.algonet.se/~afb/wx/CodeBlocks.r.gz (Rez icon, gzipped)
First we install the program to the PREFIX directory of your choice:
$PREFIX/bin $PREFIX/lib $PREFIX/share/codeblocks
Add a custom icon to the application, and make it receive events:
gunzip CodeBlocks.r.gz sudo /Developer/Tools/Rez -d __DARWIN__ -t APPL -d __WXMAC__ \ CodeBlocks.r Carbon.r -o $PREFIX/bin/codeblocks sudo /Developer/Tools/SetFile -a C $PREFIX/bin/codeblocks
Without the icon part, this could also have be written as just:
sudo `wx-config --rezflags` $PREFIX/bin/codeblocks
Start the application with a small prefix shell wrapper like this:
DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:$PREFIX/lib export DYLD_LIBRARY_PATH $PREFIX/bin/codeblocks --prefix=$PREFIX
Way 2. NeXT (bundle)
This does not involve resources, and is more relocatable.
Files needed:
- http://www.algonet.se/~afb/wx/CodeBlocks.Info.plist
- http://www.algonet.se/~afb/wx/CodeBlocks.sh (shell wrapper)
- http://www.algonet.se/~afb/wx/CodeBlocks.icns (Mac OS X icon)
Traditionally it would involve Frameworks and Resources, but we'll just avoid those here and use "lib" and "share/codeblocks" instead. The MacOS program will be a shell wrapper that calls "bin/codeblocks", like above.
Setup a hierarchy like this, and copy the files from the regular build/install and the above file list to it:
CodeBlocks.app CodeBlocks.app/Contents/ CodeBlocks.app/Contents/Info.plist CodeBlocks.app/Contents/MacOS/ CodeBlocks.app/Contents/MacOS/CodeBlocks CodeBlocks.app/Contents/Resources/ CodeBlocks.app/Contents/Resources/CodeBlocks.icns CodeBlocks.app/Contents/bin/ CodeBlocks.app/Contents/lib/ CodeBlocks.app/Contents/share/codeblocks/
The CodeBlocks application can now be moved with the Finder, and started up like a regular Mac application.