Daniel Rossberg said:
I posted my method of building brlcad multiple times here, for example:
Run these commands in a Visual Studio 2019 command prompt. (Scroll down to see the discussion of issues during the build there.)
Thank You @Daniel Rossberg .
I have one doubt regarding :
okay,got it
That really helped.
Good Afternoon,
I have initiated with local setup of BRL-CAD:
1.mkdir brlcad/build
2.cmake .. -DBRLCAD_ENABLE_STRICT=OFF -DBRLCAD_ENABLE_COMPILER_WARNINGS=OFF -DBRLCAD_BUNDLED_LIBS=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="D:\Downloads\brlcad_install"
but for the second command it is taking way more time to complete this command ,like near about 1 hour to just barely complete the command , i have to rerun this command twice to complete the build
should i share the terminal logs here to get the clear picture so that you can help me in figuring it out
Sorry for the delay,caught with other things,
but here i am uploading the text file having the complete log when i ran this second command
BRLCAD_build-log.txt
@Abhishek, if you build brlcad this way, cmake doesn't just configure the brlcad build, but builds all the bext stuff too. To separate this and work around some issues, it is recommended to build bext first end configure brlcad with -DBRLCAD_EXT_DIR set to the bext build dirtectory.
If you like to try this all-in-one build, it is recommended to clone with recursive option, e.g. git clone --recursive https://github.com/BRL-CAD/brlcad.git.
This seems to have been worked a year ago.
The externals are no longer a submodule in the main repo so recursive shouldn’t do anything different. Recursive on bext is enormous (more than the default options as that includes Appleseed and ospray deps) but should work.
@Daniel Rossberg correct me if wrong,so here is how should i proceed.
1.Build Bext locally first - as per the bext Readme
- mkdir bext_build
cd bext_build
- cmake ../bext -DENABLE_ALL=ON -DCMAKE_BUILD_TYPE=Release
- cmake --build . --config Release --parallel 8
ps: i didnt understand this way of building BRL-CAD link
2.Then proceed to build BRL-CAD
Do i have to build BRLCAD in the parent folder(bext) and then proceed to BRLCAD build ?
Instead of Bext i just turn this flag on = -DBRLCAD_BUNDLED_LIBS=ON in the brlcad build only.
@Abhishek yes, you're on the right track -- you build all of bext which just builds all of the 3rd party dependencies. This is not building BRL-CAD. This is building the dependencies that BRL-CAD requires like libpng, tcl/tk, opencv, zlib, and 60+ other deps. Once you build "bext", THEN you follow the instructions in that link you didn't understand to actually build BRL-CAD itself.
You'll specify BRLCAD_EXT_DIR in your "brlcad" clone'd repo cmake to tell it where you built the "bext" dependencies.
As for where you build, that part doesn't matter much so long as you specify the right paths later.
Sean said:
Abhishek yes, you're on the right track -- you build all of bext which just builds all of the 3rd party dependencies. This is not building BRL-CAD. This is building the dependencies that BRL-CAD requires like libpng, tcl/tk, opencv, zlib, and 60+ other deps. Once you build "bext", THEN you follow the instructions in that link you didn't understand to actually build BRL-CAD itself.
You'll specify BRLCAD_EXT_DIR in your "brlcad" clone'd repo cmake to tell it where you built the "bext" dependencies.
As for where you build, that part doesn't matter much so long as you specify the right paths later.
Thanks @Sean
Correct me if wrong after successfully building the bext,
i can add the bext build path to BRLCAD cmake while building it, and then continue with the mentioned steps.
Yup that’s exactly how it’s supposed to work. You specify BRLCAD_EXT_DIR to the man cmake with the path the to bext’s build dir
please help me install brlcad on arch linux
"Hi @Sean and @Erik,
I am [Nilesh vishwakarma], a student developer interested in the project 'Production-Ready PBR: Integrating BRL-CAD geometry ray tracing with Appleseed rendering'. I have a strong background in C++ and I am fascinated by Path Tracing and Physically-Based Rendering.
I have already started exploring the BRL-CAD source code, specifically the art utility. I am currently setting up the build environment. I would love to contribute a small patch or fix a 'Good First Issue' to get started with the codebase.
Looking forward to your guidance on how I can better align my proposal with the project goals."
i just used aur, the readme file is too complicated
no, its not work
@Володимир, I don't know about Arch Linux, but I found this: https://aur.archlinux.org/packages/brlcad
I don't know if this helps.
Regarding compilation in general, I wrote down some hints (unfortunately, our wiki is still offline, therefore I used GitHub): https://drossberg.github.io/BRL-CAD/compiling.html
@Nilesh Vishwakarma thanks for the intro and your interest on a project that is very important to BRL-CAD. Getting "art" compiled and running, even the old status, is a challenge as it requires a lot of 3rd party dependencies and most of them were last tested a long time ago (so they're out of date now). Updating art's deps is also tricky because there have since been some changes in things like OSL that make it hard to tell if things are working. A great first issue is probably to just see if you can get it compiled and report back your experience (even if you can't get it to successfully compile), share a rendering if successful.
This might also help @Володимир https://brl-cad.github.io/wiki/doc/Compiling/
or you can share the steps you ran, the outputs you saw, and any error messages.
Hi :wave:
Sorry, due to health reasons was not able to work on further,but i am starting it over.
@Aaditya, here you find the discussions about building BRL-CAD.
In your clone of the brlcad repository, you can create a subdirectory build, open a shell in this directory and type cmake .. -DBRLCAD_ENABLE_STRICT=OFF -DCMAKE_BUILD_TYPE=Debug. However, I recommend to set the CMAKE_INSTALL_PREFIX too. It eases the installation.
Hello everyone,
My name is Laith, I'm new to brl-cad, ,
I’ve been following the build steps, but I’m running into an issue during configuration.
I have tried configureation from Cmake Gui and from visual studio pwershell which I run as adminstrator
The error I’m getting repeatedly is:
'nmakehlp' is not recognized as an internal or external command, operable program or batch file.
C:\gsoc\brlcad\build\bext_build\tcl\TCL_BLD-prefix\src\TCL_BLD\win\rules.vc(1077)
CUSTOMBUILD : fatal error U1023: syntax error in expression [C:\gsoc\brlcad\build\bext_build\tk\TK_BLD-install.vcxproj] Stop.
CMake Error at misc/CMake/BRLCAD_Util.cmake:102 (_message):
Unable to successfully build bext dependency repository
Call Stack (most recent call first):
misc/CMake/BRLCAD_EXT_Setup.cmake:442 (message)
misc/CMake/BRLCAD_ExternalDeps.cmake:529 (brlcad_ext_setup)
CMakeLists.txt:2114 (brlcad_bext_process)
If anyone has encountered this before or can point me in the right direction, I’d really appreciate your help.
Thanks in advance
Hi @Laith Aldaeef, there is no need, to run the Visual Studio command line as administrator. However, the Visual Studio command line is the right start point for building BRL-CAD on Windows. I wrote a short page summarizing the main steps: https://drossberg.github.io/BRL-CAD/compiling.html
The problem with bext is that it contains many repositories/programs, which may require different VS versions. If I remember correctly, TK needs an old version, e.g. 2019, and Qt a current one. But, thas may have changed.
What I did last time, was to do the basic configuration with the command line from VS 2019, then opened the CMake GUI and switched off the Qt build.
Hi Daniel,
I recently managed to build BRL-CAD on my system following your recommendation, and I’ve started exploring the k-g converter.
I’ve been going through the code and trying to understand how the conversion from LS-DYNA files is handled.
I hope I’m not too late to reach out — I’d really appreciate any guidance or pointers you can share.
Thanks a lot!
You should rather ask this @Louis Googl. To see what happened last year, you can look at #Google Summer of Code > k-g.
Hi @Laith Aldaeef there are only few days to submit the proposal, since now you have a working version of brlcad and you have reached out to mentors you are mid way for your proposal to be consdiered. the essentials for a proposal to be considered is reaching out and providing a pull request contining a meaningfull change to the code base, it can be a bug fix or a feature development . the disadvantage of reaching out late is we might not have time to give you feedback to improve your proposal. I will give you some pointers in the project channel. you can also check this post by @Daniel Rossberg
Last updated: Mar 31 2026 at 01:22 UTC