update linux doc for raspberry pi

This commit is contained in:
supermerill 2020-11-15 17:01:59 +01:00
parent 3b0c006646
commit 73142a130e

View File

@ -17,7 +17,7 @@ where `N` is the number of CPU cores available.
Additional CMake flags may be applicable as explained below. Additional CMake flags may be applicable as explained below.
### How to build ## How to build, the easy way
You can follow the [script](https://github.com/supermerill/SuperSlicer/blob/master/.github/workflows/ccpp_ubuntu.yml) the build server use to create the ubuntu release. You can follow the [script](https://github.com/supermerill/SuperSlicer/blob/master/.github/workflows/ccpp_ubuntu.yml) the build server use to create the ubuntu release.
@ -25,7 +25,7 @@ You have to execute each command at the right of the 'run: ' tags, in the direct
You can stop after the `make slic3r` as the rest of the commands are for building the launch script and the appimage. You can stop after the `make slic3r` as the rest of the commands are for building the launch script and the appimage.
# Old doc, not up-to-date: ## How to build, other ways
### Dependency resolution ### Dependency resolution
@ -58,17 +58,7 @@ This is because wxWidgets hardcode the installation path.
### wxWidgets version ### wxWidgets version
By default, SuperSlicer looks for wxWidgets 3.1, this is because the 3.1 version has SuperSlicer need at least wxWidgets 3.1
a number of bugfixes and improvements not found in 3.0. However, it can also be built with wxWidgets 3.0.
This is done by passing this option to CMake:
-DSLIC3R_WX_STABLE=1
Note that SuperSlicer is tested with wxWidgets 3.0 somewhat sporadically and so there may be bugs in bleeding edge releases.
When building on ubuntu 20.04 focal fossa, the package libwxgtk3.0-gtk3-dev needs to be installed instead of libwxgtk3.0-dev and you should use:
-DSLIC3R_WX_STABLE=1 -DSLIC3R_GTK=3
### Build variant ### Build variant
@ -97,3 +87,46 @@ If you instead want SuperSlicer installed in a structure according to the File S
This will make SuperSlicer look for a fixed-location `share/slic3r-prusa3d` directory instead (note that the location becomes hardcoded). This will make SuperSlicer look for a fixed-location `share/slic3r-prusa3d` directory instead (note that the location becomes hardcoded).
You can then use the `make install` target to install SuperSlicer. You can then use the `make install` target to install SuperSlicer.
## Raspberry pi
Some hints to be able to build on raspberry pi:
I think that the most important thing is preparing Raspberry Pi. I'm using overclocked to 2GHz RPi 4B 2GB with active cooling(it starts when the temperature is too high). 2GB of RAM is not enough and I turned swap on(+2GB), but i use SSD instead of memory card so it's not that bad. Swap is only needed during compilation, built-in memory is enough to run the GUI.
first, you have to install all the dependencies (you can also try to build them from the deps directory):
`sudo apt-get install -y git cmake libboost-dev libboost-regex-dev libboost-filesystem-dev libboost-thread-dev libboost-log-dev libboost-locale-dev libcurl4-openssl-dev libwxgtk3.0-dev build-essential pkg-config libtbb-dev zlib1g-dev libcereal-dev libeigen3-dev libnlopt-cxx-dev libudev-dev libopenvdb-dev libboost-iostreams-dev libnlopt-dev libdbus-1-dev`
Running cmake will give information about the remaining missing dependencies. (to be run in a newly created build directory)
`cmake .. -DCMAKE_BUILD_TYPE=Release -DSLIC3R_BUILD_TESTS=OFF -DSLIC3R_GTK = 2`
Note that you can also use different parameters, like
`cmake .. -DSLIC3R_STATIC=0 -DCMAKE_BUILD_TYPE=Debug -DSLIC3R_FHS=1 -DSLIC3R_GTK=2 -DSLIC3R_PCH=0 -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=lib`
Then, when cmake end without errors, you can compile with the make command.
I think it is a good idea to run this command in screen, because it takes a long time to complete and the connection may time out. screen will remain running in the background.
Example:
```
screen -S superclicer
#new terminal will open
make -j4
```
and after disconnect:
`screen -x`
Finally, it remains to run `sudo make install`
May also be useful to run
`sudo systemctl set-environment LC_ALL=en_US.UTF-8`
I'm sure there is some steps missing, please open an issue to let us know or open a pull request by editing this document.