Editing Compiling
From BRL-CAD
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 6: | Line 6: | ||
== Step 1: Install Dev Tools == | == Step 1: Install Dev Tools == | ||
− | To build, you | + | To build, you need at least [https://cmake.org/download/ CMake] and a compiler. You will also want [https://git-scm.com/downloads/guis Git] to obtain the latest source code. |
− | * | + | * Windows: Install [https://gitforwindows.org Git], [https://cmake.org/download/ CMake], and [https://visualstudio.microsoft.com/vs/community/ Visual Studio Community]. VS Code should also work. |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | * Mac: Install [https://cmake.org/download/ CMake] and XCode or run this in Terminal: <pre>xcode-select --install</pre> | ||
− | * | + | * Linux: |
− | + | ** Debian/Ubuntu: <pre>aptitude install build-essential make cmake</pre> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | ** Debian/Ubuntu: <pre> | ||
− | |||
− | |||
** Fedora: <pre>yum install clang++ make cmake</pre> | ** Fedora: <pre>yum install clang++ make cmake</pre> | ||
Line 38: | Line 20: | ||
** CentOS: <pre>yum install python3-pip devtoolset-9</pre><pre>pip3 install cmake</pre><pre>scl enable devtoolset-9 bash</pre> | ** CentOS: <pre>yum install python3-pip devtoolset-9</pre><pre>pip3 install cmake</pre><pre>scl enable devtoolset-9 bash</pre> | ||
+ | * BSD: we assume you know what you're doing and can follow the gist | ||
− | |||
== Step 2: Install Dependencies == | == Step 2: Install Dependencies == | ||
− | + | You can skip this step if you're building on Windows or Mac. Linux and other package-managed systems may need to install a few more things: | |
− | |||
− | |||
− | * | + | ** Debian/Ubuntu: <pre>aptitude install sed byacc flex xsltproc libncursesw5-dev</pre><pre>aptitude install libfontconfig-dev xserver-xorg-dev libx11-dev libxi-dev<pre> |
− | ** | + | ** Fedora: <pre>yum install libx11-devel</pre> |
− | |||
== Step 3: Download BRL-CAD == | == Step 3: Download BRL-CAD == | ||
Line 57: | Line 36: | ||
We recommend obtaining BRL-CAD by forking or cloning our repository on [https://github.com/BRL-CAD/brlcad GitHub]. | We recommend obtaining BRL-CAD by forking or cloning our repository on [https://github.com/BRL-CAD/brlcad GitHub]. | ||
− | * | + | * Windows: Run the Git GUI specifying this as the repository to clone: <pre>https://github.com/BRL-CAD/brlcad.git</pre> |
− | * | + | * Mac: You can either run the Git GUI, or you can run this in Terminal: <pre>git clone https://github.com/BRL-CAD/brlcad.git</pre> |
− | * | + | * Linux: <pre>git clone https://github.com/BRL-CAD/brlcad.git</pre> |
− | + | If you run into trouble, snapshot source releases [https://sourceforge.net/projects/brlcad/files/BRL-CAD%20Source/ are available]. | |
Line 70: | Line 49: | ||
You can create a build folder anywhere, but it's typically named "build" and is in or near your "brlcad" source directory. | You can create a build folder anywhere, but it's typically named "build" and is in or near your "brlcad" source directory. | ||
− | * | + | * Windows: create a folder named "build" inside your "brlcad" folder |
− | * | + | * Mac, Linux: <pre>mkdir -p brlcad/build</pre> |
== Step 5: Configure == | == Step 5: Configure == | ||
− | + | Next, you'll get ready to compile by running CMake. For your first time, we recommend setting these CMake variables to avoid trivial errors: | |
− | |||
− | Next, you'll | ||
− | |||
− | CMake | ||
BRLCAD_ENABLE_STRICT=OFF | BRLCAD_ENABLE_STRICT=OFF | ||
− | + | BRLCAD_ENABLE_COMPIELR_WARNINGS=OFF | |
BRLCAD_BUNDLED_LIBS=ON | BRLCAD_BUNDLED_LIBS=ON | ||
+ | CMAKE_BUILD_TYPE=Release | ||
− | * | + | * Windows: you can use the CMake GUI where you specify your source dir, build dir, and variables. [[File:Running_cmake_on_windows.png|200px|thumb|right|Running CMake GUI on Windows]] |
− | * | + | * Mac: You can either run CMake GUI specifying your source dir, build dir, and the above variables, or you can follow the steps for Linux in Terminal. |
− | * | + | * Linux: <pre>cd brlcad/bulid</pre><pre>cmake .. -DBRLCAD_ENABLE_STRICT=NO -DBRLCAD_BUNDLED_LIBS=ON -DCMAKE_BUILD_TYPE=Release</pre> |
See [https://github.com/BRL-CAD/brlcad/blob/main/INSTALL INSTALL] for more CMake options. | See [https://github.com/BRL-CAD/brlcad/blob/main/INSTALL INSTALL] for more CMake options. | ||
− | If CMake was successful, there will be a summary of the build printed at the end | + | If CMake was successful, there will be a summary of the build printed at the end and it will have generated a build system for compiling BRL-CAD. |
− | |||
== Step 6: Compile == | == Step 6: Compile == | ||
− | + | Windows: navigate to your build directory and open the BRLCAD.sln file with Visual Studio. Compile the ALL_BUILD solution. | |
− | + | Mac, Linux: while still in the build directory from Step 4, run <pre>make</pre> | |
If the build fails, re-run while capturing all output to a log: make 2>&1 | tee build.log | If the build fails, re-run while capturing all output to a log: make 2>&1 | tee build.log | ||
Line 112: | Line 87: | ||
== Step 7: Run! == | == Step 7: Run! == | ||
− | You don't have to install to run BRL-CAD. You can run the binaries you just compiled as they are in the brlcad/build/bin directory. | + | You don't have to install to run BRL-CAD. You can run the binaries you just compiled as they are in the brlcad/build/bin directory. There are hundreds of tools in BRL-CAD. Here's a few to get started: |
<pre> | <pre> | ||
Line 125: | Line 100: | ||
The third command (archer) is BRL-CAD's newer graphical interface under development. | The third command (archer) is BRL-CAD's newer graphical interface under development. | ||
+ | |||
= What next? = | = What next? = |