-
Notifications
You must be signed in to change notification settings - Fork 0
Running Slic3r from git on GNU Linux
This document is divided into sections.
Notes/instructions specific to a particlar Linux distribution are included as a subsection of the main section. So the prerequisite instructions for Ubuntu 16.04 are listed in the Installing Prerequisites section, under Ubuntu 16.04. If you do not see a section for your distribution of choice then use the general instructions (if available) or translate the information from one of the other distributions to your own.
If you want to add instructions or suggest edits to this document, please create a github issue.
There's two major branches of Slic3r -- stable and master.
-
stable
is mostly concerned with bugfixes, and should be suitable for everyone. It will not have the newest features in it (because they're less well-tested). -
master
is the newest code in the repository; it is the "bleeding edge". Use this if you don't mind running into some bugs, but want to play with new features and fixes.
Slic3r works fine with Perl 5.12, 5.14, 5.18, 5.20, 5.22, 5.24: in other words all versions except for 5.16. If your distribution ships 5.16 it is recommend that you use Perlbrew for installing an alternative user-land perl. See below for Perlbrew-specific instructions. 95% of the time you will not need to use Perlbrew with modern distributions.
$ sudo apt install build-essential libgtk2.0-dev libwxgtk2.8-dev libwx-perl libmodule-build-perl git cpanminus libextutils-cppguess-perl libboost-all-dev libxmu-dev liblocal-lib-perl
$ sudo apt-get install -y libxmu-dev freeglut3-dev libwxgtk-media2.8-dev
$ sudo apt-get install libboost-thread-dev libboost-system-dev libboost-filesystem-dev
$ sudo apt-get install -y build-essential cpanminus liblocal-lib-perl
$ sudo apt-get build-dep slic3r
$ sudo apt-get install -y libxmu-dev freeglut3-dev libwxgtk-media2.8-dev
$ sudo apt-get install libboost-thread-dev libboost-system-dev libboost-filesystem-dev
$ sudo apt-get install -y git build-essential libgtk2.0-dev libwxgtk2.8-dev libwx-perl libmodule-build-perl libnet-dbus-perl libexpat1-dev cpanminus liblocal-lib-perl
$ sudo apt-get install -y libxmu-dev freeglut3-dev libwxgtk-media2.8-dev
$ sudo apt-get install libboost-thread-dev libboost-system-dev libboost-filesystem-dev
Ubuntu 12.02 has versions of Boost in its repository that are too old. Add new versions from the ppa as below.
sudo add-apt-repository ppa:boost-latest/ppa
sudo apt-get update
sudo apt-get install libboost-thread1.55-dev libboost-system1.55-dev
sudo apt-get install curl
curl -L http://cpanmin.us | sudo perl - --sudo App::cpanminus
Add opensuse build service repository with Parse::PMfile
zypper ar -r http://download.opensuse.org/repositories/devel:/languages:/perl:/CPAN-P/openSUSE_13.2/devel:languages:perl:CPAN-P.repo -n build:perl:cpan-p -f
Install required packages
zypper install git-core curl perl-Wx perl-App-cpanminus perl-ExtUtils-CppGuess perl-Moo perl-threads perl-Math-PlanePath perl-Class-Accessor perl-Parse-PMFile wxWidgets-ansi-devel libXmu-devel libXi-devel
sudo yum install git curl gcc-c++ perl-Wx \
perl-Module-Build perl-App-cpanminus perl-Moo
sudo yum install git curl gcc-c++ perl-Wx \
perl-Module-Build perl-App-cpanminus perl-Moo \
perl-Math-PlanePath perl-Boost-Geometry-Utils perl-Math-Clipper \
perl-Math-ConvexHull perl-Math-Geometry-Voronoi perl-parent \
perl-Growl-GNTP perl-Class-XSAccessor perl-XML-SAX-ExpatXS \
perl-Math-ConvexHull-MonotoneChain perl-ExtUtils-XSpp \
perl-ExtUtils-CppGuess perl-ExtUtils-Typemaps-Default \
perl-Capture-Tiny perl-Test-Base perl-Test-Differences \
perl-Text-Diff perl-Module-Build-WithXSpp
$ curl -L http://cpanmin.us | sudo perl - --sudo App::cpanminus
layman -a axs
emerge =media-gfx/Slic3r-9999
NOTE -- letting App-cpanminus do its thing on a Gentoo Linux system has a high chance of messing up your system image! Proceed with caution.
layman -a perl-experimental-snapshots
emerge App-cpanminus
emerge dev-perl/Moo
$ perlbrew install-cpanm
Choose either Slic3r stable or master. master has more features, but may have more bugs, stable does not change as often.
$ git clone https://github.com/alexrj/Slic3r.git
$ cd Slic3r
$ git checkout -b origin/stable
$ git clone https://github.com/alexrj/Slic3r.git
$ cd Slic3r
$ git checkout -b origin/master
cd
to the directory you cloned Slic3r to.
$ git pull
$ eval $(perl -Mlocal::lib)
$ export LDLOADLIBS=-lstdc++
$ perl Build.PL
$ perl Build.PL --gui
Create a file in your favorite text editor, call it slic3r
and paste the following into it:
#!/bin/sh
eval $(perl -Mlocal::lib)
perl ./slic3r.pl $*
Mark it as executable with chmod +x slic3r
$ sudo CPANM=~/perl5/perlbrew/bin/cpanm perl Build.PL
$ sudo CPANM=~/perl5/perlbrew/bin/cpanm perl Build.PL --gui
If you get an error where CppGuess fails to build, use
export LDLOADLIBS=-lstdc++
to set that flag and then try running perl Build.PL
again. CppGuess usually only needs to be built once, so subsequent builds of Slic3r should not require that flag.
Use the fork https://github.com/lordofhyphens/Slic3r which is a patchset to produce a Debian package of current Slic3r.