0022827: Make non-CPP source files (CDLs, headers) to appear in MS VS project files...
[occt.git] / dox / dev_guides / building / xcode.md
1 Building with Xcode {#occt_dev_guides__building_xcode}
2 ===================
3
4 This file describes steps to build OCCT libraries from a complete source package
5 on Mac OS X with **Xcode**.
6
7 If you build OCCT from bare sources (as in Git repository) or do some 
8 changes affecting CDL files, you need to use WOK to re-generate header files
9 and build scripts / projects. See \ref occt_dev_guides__building_wok for instructions.
10
11 Before building OCCT, you need to install the required third-party libraries; see
12 paragraph 1 of \ref occt_dev_guides__building for details.
13
14 1. Add paths to the mandatory 3rd-party products (**Tcl/Tk** and **FreeType**) 
15    in file *custom.sh* located in <i>\<OCCT_ROOT_DIR\> </i>. For this:
16
17    1.1. Add paths to the includes in variable *CSF_OPT_INC*;
18
19    1.2. Add paths to the binary libraries in variable  *CSF_OPT_LIB64*;
20
21    All paths should be separated by ":" symbol. 
22
23 2. Add paths to the optional 3rd-party libraries (**TBB, gl2ps** and **FreeImage**) 
24    in the aforementioned environment variables *CSF_OPT_INC* and *CSF_OPT_LIB64* from file *custom.sh*.
25
26    If you want to build OCCT without the optional libraries perform the following steps:
27
28    2.1 Disable unnecessary library in *custom.sh* by setting the corresponding 
29        variable <i>HAVE_<LIBRARY_NAME></i> to *false*. 
30 ~~~~~
31        export HAVE_GL2PS=false
32 ~~~~~
33    2.2 Remove this library from Project navigator in Xcode for each project that 
34        uses it: choose the required project, right click on the unnecessary 
35        library and select **Delete** button.
36
37 3. Open Terminal application.
38
39 4. Enter <i>\<OCCT_ROOT_DIR\></i>:
40 ~~~~~
41    cd \<OCCT_ROOT_DIR\>
42 ~~~~~
43 5. To start **Xcode**, run command  <i>/xcode.sh</i>
44
45 6. To build a certain toolkit, select it in **Scheme** drop-down list in Xcode 
46    toolbar, press **Product** in the menu and click **Build** button. 
47
48    To build the entire OCCT, create a new empty project (select **File -> 
49    New -> Project -> "Empty project** in the menu. Input the project name, 
50    e.g. *OCCT*, click **Next** and **Create** buttons). Drag and drop the *OCCT* 
51    folder in the created *OCCT* project in the Project navigator. Select 
52    **File -> New -> Target -> Aggregate** in the menu. Enter the project name 
53    (e.g. <i>OCCT</i>) and click **Finish**. The **Build Phases** tab will open.  
54    Click "+" button to add the necessary toolkits to the target project. 
55    It is possible to select all toolkits by pressing **Command+A** combination. 
56
57 To start *DRAWEXE*, which has been built with Xcode on Mac OS X, perform the following steps:
58
59 1.Open Terminal application
60
61 2.Enter <i>\<OCCT_ROOT_DIR\></i>:
62 ~~~~~
63    cd \<OCCT_ROOT_DIR\>
64 ~~~~~
65
66 3.Run the script
67 ~~~~~
68    ./draw_cbp.sh xcd [d]
69 ~~~~~
70    Option *d* is used if OCCT has been built in **Debug** mode.