Changes between Version 44 and Version 45 of BuildMacApp
- Timestamp:
- Feb 13, 2013, 10:28:54 AM (12 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
BuildMacApp
v44 v45 32 32 '''Note:''' This issue applies mainly to Mac-specific APIs; support for standard UNIX functions rarely changes over different Mac OS versions. However, the version numbers of some UNIX libraries do change over time, and applications which dynamically link to them may fail to load on older systems if they are built on a newer system. If this happens, the best solution is to build a static version of the UNIX library yourself and static link it to your application. Most UNIX libraries are open source, so you can get the source files and build them yourself. Many are available from http://opensource.apple.com/. 33 33 34 You will also need to build the BOINC libraries on each platform and any other libraries your application needs. You can use the Makefiles supplied in the BOINC Subversion treeto build the BOINC libraries with this approach, or build them as Universal Binaries using the BOINC XCode project, as described later in this document.34 You will also need to build the BOINC libraries on each platform and any other libraries your application needs. You can use the Makefiles supplied in the BOINC source repository to build the BOINC libraries with this approach, or build them as Universal Binaries using the BOINC XCode project, as described later in this document. 35 35 36 36 == Cross-Platform Development == … … 67 67 These specify that the executable should be able to run on systems back to OS 10.4 and OS 10.5, respectively. 68 68 69 You can find examples in the following files in the BOINC SVN trunk:[[BR]] `boinc/mac_build/buildc-ares.sh`[[BR]] `boinc/mac_build/buildcurl.sh`[[BR]] `boinc/mac_build/buildopenssl.sh`[[BR]] `boinc/samples/example_app/MakeMacExample.sh`[[BR]] `boinc/samples/example_app/Makefile_mac2`[[BR]] `boinc/samples/example_app/Makefile_mac`[[BR]] `boinc/samples/wrapper/Makefile_mac`[[BR]] `boinc/samples/vboxwrapper/Makefile_mac`[[BR]] `boinc/samples/vboxwrapper/BuildMacVboxWrapper.sh`[[BR]] `boinc/samples/vboxwrapper/Makefile_mac`[[BR]]69 You can find examples in the following files in the [source:boinc BOINC sourcecode]:[[BR]] `boinc/mac_build/buildc-ares.sh`[[BR]] `boinc/mac_build/buildcurl.sh`[[BR]] `boinc/mac_build/buildopenssl.sh`[[BR]] `boinc/samples/example_app/MakeMacExample.sh`[[BR]] `boinc/samples/example_app/Makefile_mac2`[[BR]] `boinc/samples/example_app/Makefile_mac`[[BR]] `boinc/samples/wrapper/Makefile_mac`[[BR]] `boinc/samples/vboxwrapper/Makefile_mac`[[BR]] `boinc/samples/vboxwrapper/BuildMacVboxWrapper.sh`[[BR]] `boinc/samples/vboxwrapper/Makefile_mac`[[BR]] 70 70 71 71 == Preparing To Build == 72 72 Create a parent directory within which to work. In this description , we will call it BOINC_dev, but you can name it anything you wish. This parent directory will contain the BOINC source files, your application project, and any other library projects you will use. 73 73 74 Source files are now archived using Subversion. You can download svnX, a free GUI application for running Subversion from either [http://www.apple.com/downloads/macosx/development_tools/svnx.html] or [http://www.lachoseinteractive.net/en/community/subversion/svnx/]. 75 76 If you installed the developer command line (CLI) tools from Xcode, then a recent version of Subversion is already installed in `/usr/bin/`. To copy it into `/usr/local/bin/` (where svnX expects to find it), enter the following in the Terminal utility application: 77 78 {{{ 79 cd /usr/bin 80 sudo cp -p svn* /usr/local/bin 81 }}} 82 Get the BOINC source tree from SVN, and put it in the same BOINC_dev folder. To do this, type the following in Terminal: 74 Source files are archived in the [SourceCodeGit BOINC repository]. 75 76 Get the BOINC source from the repository, and put it in the same BOINC_dev folder. To do this, type the following in Terminal: 83 77 84 78 {{{ 85 79 cd {path}/BOINC_dev/ 86 svn co http://boinc.berkeley.edu/svn/trunk/boinc 87 }}} 88 (You may change the name of the boinc directory to anything you wish.) Hint: if you have trouble getting this to work, try using `https` instead of `http`. 89 90 The command above retrieves the source code from the HEAD or development branch of the SVN repository. See more information on [wiki:SourceCode getting the BOINC source code]. 80 git clone git://boinc.berkeley.edu/boinc.git boinc 81 }}} 82 (You may change the name of the boinc directory to anything you wish.) See more information on [SourceCode getting the BOINC source code]. 91 83 92 84 Build the BOINC libraries as follows: