72c37458 |
1 | Building with Code::Blocks {#occt_dev_guides__building_code_blocks} |
2 | ========================== |
72b7576f |
3 | |
72c37458 |
4 | @tableofcontents |
72b7576f |
5 | |
72c37458 |
6 | @section build_codeblocks_intro General |
72b7576f |
7 | |
72c37458 |
8 | This file describes steps to build OCCT libraries from sources using **Code::Blocks**, a cross-platform IDE, using project files generated by OCCT legacy tool **genproj**. |
9 | It can be an alternative to use of CMake build system (see @ref occt_dev_guides__building_cmake) for all supported platforms. |
72b7576f |
10 | |
72c37458 |
11 | @section build_codeblocks_3rdparty Third-party libraries |
72b7576f |
12 | |
72c37458 |
13 | Before building OCCT, make sure to have all the needed third-party libraries installed, see @ref occt_dev_guides__building. |
72b7576f |
14 | |
72c37458 |
15 | @section build_codeblocks_conf Configuration |
72b7576f |
16 | |
72c37458 |
17 | Before building it is necessary to set up build environment. |
72b7576f |
18 | |
72c37458 |
19 | The environment is defined in the file *custom.sh* (on Linux and OS X) or *custom.bat* (on Windows) which can be edited directly: |
72b7576f |
20 | |
72c37458 |
21 | * Add paths to includes of used third-party libraries in variable *CSF_OPT_INC*. |
22 | * Add paths to their binary libraries in variable *CSF_OPT_LIB64*. |
23 | * Set variable *SHORTCUT_HEADERS* to "true" to have folder *inc* populated by short-cut files pointing to actual headers located in *src*; otherwise, header files will be copied to *inc*. |
24 | * For optional third-party libraries, set corresponding environment variable <i>HAVE_<LIBRARY_NAME></i> to either *false*, e.g.: |
25 | ~~~~~ |
26 | export HAVE_GL2PS=false |
576f8b11 |
27 | ~~~~~ |
72b7576f |
28 | |
72c37458 |
29 | Alternatively, or when *custom.sh* or *custom.bat* does not exist, you can launch **genconf** tool to configure environment interactively: |
72b7576f |
30 | |
72c37458 |
31 | @figure{/dev_guides/building/3rdparty/images/genconf_linux.png} |
72b7576f |
32 | |
72c37458 |
33 | Click "Save" to store the specified configuration in *custom.sh* or *custom.bat* file. |
34 | |
35 | @section build_codeblocks_gen Projects generation |
36 | |
37 | Launch **genproj** tool with option *-target=cbp* to update content of *inc* folder and generate project files after changes in OCCT code affecting layout or composition of source files: |
72b7576f |
38 | |
576f8b11 |
39 | ~~~~~ |
72c37458 |
40 | $ cd /dev/OCCT/opencascade-7.0.0 |
41 | $ ./genproj.sh -target=cbp |
576f8b11 |
42 | ~~~~~ |
72b7576f |
43 | |
72c37458 |
44 | The generated Code::Blocks project are placed into subfolder *adm/<OS>/cbp*. |
72b7576f |
45 | |
72c37458 |
46 | @note To use **genproj** and **genconf** tools you need to have Tcl installed and accessible by PATH. |
72b7576f |
47 | |
72c37458 |
48 | @section build_codeblocks_build Building |
72b7576f |
49 | |
72c37458 |
50 | To start **Code::Blocks**, launch script *codeblocks.sh*. |
72b7576f |
51 | |
72c37458 |
52 | To build all toolkits, click **Build->Build workspace** in the menu bar. |
72b7576f |
53 | |
72c37458 |
54 | To start *DRAWEXE*, which has been built with **Code::Blocks** on Mac OS X, run the script |
576f8b11 |
55 | ~~~~~ |
72b7576f |
56 | ./draw_cbp.sh cbp [d] |
576f8b11 |
57 | ~~~~~ |
72c37458 |
58 | Option *d* is used if OCCT has been built in **Debug** mode. |