From: <mm...@us...> - 2003-07-09 03:40:52
|
Update of /cvsroot/bibdesk/bibdesk/DeveloperDocumentation In directory sc8-pr-cvs1:/tmp/cvs-serv18770/DeveloperDocumentation Added Files: build_instructions.tex Log Message: version on website as of July 2003 --- NEW FILE: build_instructions.tex --- %% Instructions for building Michael McCracken's Bibdesk from source. %% Adam Maxwell <ama...@ws...> is responsible for the initial revision of this document. %% 10 March 2003 1st draft %% \documentclass[11pt]{article} \textwidth = 6.5 in \textheight = 9 in \oddsidemargin = 0.0 in \evensidemargin = 0.0 in \topmargin = 0.0 in \headheight = 0.0 in \headsep = 0.0 in \parskip = 0.2in \parindent = 0.0in \begin{document} \section{Files} \begin{enumerate} \item Follow the directions for CVS at http://www.sf.net/projects/bibdesk/ to pull the source tree. \item Open the Bibdesk.pbproj file in Project Builder, and click on the ``Files'' tab. \item Open the Frameworks tree by clicking the triangle. You should see three frameworks listed at the bottom: \begin{enumerate} \item OmniAppKit.framework \item OmniBase.framework \item OmniFoundation.framework \end{enumerate} \item Some of these may be listed in red. If they are, you will have to install the frameworks on your system. They can be downloaded from http://www.omnigroup.com/ (look under Developer/Source Code) and need to be compiled. If you are going to do this, the following should help: \begin{enumerate} \item Compile and install OmniBase, OmniFoundation, and OmniAppKit \textbf{in that order}, since they depend on each other. \item You may install the frameworks anywhere, but you will have to tell each sucessive framework how to locate the previous ones. For example, suppose you compile OmniBase and install it in ~/Development/Frameworks/OmniBase.framework. To build OmniFoundation, you need to open its project, look under the ``Files'' tab, expand the Frameworks and Libraries folder, and right--click on the OmniBase.framework icon. \item Select ``Get Info'' and enter the path to the OmniBase.framework (I used absolute paths). I think there are multiple ways to do this, and your mileage may vary. \item Hopefully you have all the Omni frameworks compiled and installed at this point. This discussion on http://cocoadev.com/index.pl?IncludingFrameworksInApplications is helpful, if you want something beyond the quick--and--dirty steps I've given. \end{enumerate} \item At this point, we need to satisfy Bibdesk's dependencies on the Omni frameworks, just like the Omni frameworks depend on each other. Get info on each of the three Omni frameworks in the Bibdesk.pbproj project (right--click on their icons) and set the paths to those frameworks correctly for your system. Their names should change from red to black in color. I think you probably want them all to be the same version, so make sure the paths point to the frameworks you just installed. \end{enumerate} \section{Targets} \begin{enumerate} \item You can set various options here, e.g. Build Styles (Development vs. Deployment), and Optimization (under GCC Compiler Settings). \item You may want to remove /Users/mike/code/bibdesk entry under Search Paths, since it will give you a warning, but it's basically harmless. \item Build and run it. \item If there are errors, the log output is fairly descriptive. If ProjectBuilder can't find a file, it will list it in red, but you might have to start expanding the file tree or use the search. Much of what ProjectBuilder does is beyond my ken, so I usually just muddle around until I find something that looks broken. It is helpful to look at the Build Phases for the Bibdesk target, though, since that will usually give you a clue where things stopped. \item The Omni frameworks should be copied into Bibdesk.app/Contents/Frameworks automatically in the build process, so the resulting app can run on a machine that does not have them. You can check this by `otool -L Bibdesk.app/Contents/MacOS/Bibdesk` which should reference the Omni frameworks like this: \begin{verbatim} @executable_path/../Frameworks/OmniAppKit.framework/Versions/2001A/OmniA ppKit (compatibility version 1.0.0, current version 1.0.0)\end{verbatim} This tip is from the cocoadev article. \end{enumerate} \end{document} \end |