Building LuxCoreRender - FAQ

From LuxCoreRender Wiki
Jump to navigation Jump to search

Is it possible to set-up a local-only, end-to-end, build chain?

Yes it is, but for Linux only, at the moment, and starting with v2.11.

Also, important caveat: this kind of build is solely intended for development and tests. Do not use in production


  • Step#1: Build dependencies locally

Use local plain build or local CI build of LuxCoreDeps


  • Step#2: Inject local dependencies in LuxCore build
python -m build-system.luxmake deps --local <path/to/deps> --release test


  • Step#3: Build a testing wheel
make wheel-test


  • Step#4: Inject testing wheel in Blender:

Use BlendLuxHelper


For a debugging with luxcoreui only, one can also replace steps #3 & #4 by:

  • Step#3bis: Build luxcoreui:
make luxcoreui

Can I use git bisect?

Yes, if you need to find a faulty commit, you can use git bisect.

In that case, please note the correct verb to build LuxCoreRender at each step is

make clear && make deps && make

Caveat: this method only works for version >= v2.10.0

Example for Linux (please adapt to other contexts):

# Start git bisecting
git bisect start

# Define bounds
git bisect good samples-v2.10.0  # For instance
git bisect bad HEAD

# Build the app, test it and report status to git bisect
make clear && make deps && make  # Build at this stage
./out/install/Release/bin/luxcoreui mytestscene/render.cfg
git bisect <good|bad|skip>  # Depending on above test...

# Bisection loop
...

# At a certain point, the bisection stops and points at the faulty commit
# You can reset bisection
git bisect reset