{"id":570,"date":"2016-03-12T18:12:26","date_gmt":"2016-03-12T18:12:26","guid":{"rendered":"http:\/\/fractorium.com\/?page_id=570"},"modified":"2024-01-31T19:19:59","modified_gmt":"2024-01-31T19:19:59","slug":"building-on-linux","status":"publish","type":"page","link":"http:\/\/fractorium.com\/?page_id=570","title":{"rendered":"Building on Linux"},"content":{"rendered":"<p>This guide is for building on Ubuntu 5.04 and above. Other versions and distributions are not officially supported, however the build process should still theoretically work on them as well.<\/p>\n<h3 class=\"collapseomatic \" id=\"id6a4077f7df5a7\"  tabindex=\"0\"     >Tools<\/h3><div id=\"target-id6a4077f7df5a7\" class=\"collapseomatic_content \">\n<h4>git<\/h4>\n<pre style=\"padding-left: 30px;\">sudo apt-get install git<\/pre>\n<\/div>\n<h3 class=\"collapseomatic \" id=\"id6a4077f7df79a\"  tabindex=\"0\"     >Prerequisites<\/h3><div id=\"target-id6a4077f7df79a\" class=\"collapseomatic_content \">\n<p>Go to <a href=\"http:\/\/www.qt.io\" target=\"_blank\" rel=\"noopener\">qt.io<\/a> and install the latest version of the 64-bit open source version of Qt for Linux. Then run:<\/p>\n<div class=\"codehilite\">\n<pre>sudo apt-get install g++ libxcb-cursor0 libc6-dev libgl1-mesa-dev libgl-dev libglm-dev libjpeg-dev libpng-dev libpng16-16 libxml2-dev libqt6opengl6-dev qt6-base-dev qt6-default qt6-qmake qmake6 ocl-icd-libopencl1 ocl-icd-opencl-dev opencl-headers libopenexr-dev libopenexr-3-1-30\n<\/pre>\n<\/div>\n<p>Note that if you have an older system, and libopenexr-3-1-30 is not available on it, you can use libopenexr6.<\/p>\n<p>Install the OpenCL drivers and support libraries for your hardware.<\/p>\n<h4>AMD<\/h4>\n<p style=\"padding-left: 30px;\">For AMD get their drivers from their site, build and install a <code>.deb<\/code> package.<\/p>\n<h4>Nvidia<\/h4>\n<pre style=\"padding-left: 40px;\">sudo apt-get install nvidia-modprobe nvidia-prime nvidia-384 nvidia-384-dev<\/pre>\n<p style=\"padding-left: 30px;\">If a version more recent than 384 is available at the time, then use that too. You can optionally check <a href=\"http:\/\/www.nvidia.com\">nvidia<\/a>\u00a0for the latest.<\/p>\n<\/div>\n<h3 class=\"collapseomatic \" id=\"id6a4077f7df872\"  tabindex=\"0\"     >Obtaining source<\/h3><div id=\"target-id6a4077f7df872\" class=\"collapseomatic_content \">\n<pre>git clone https:\/\/mfeemster@bitbucket.org\/mfeemster\/fractorium.git<\/pre>\n<\/div>\n<h3 class=\"collapseomatic \" id=\"id6a4077f7df941\"  tabindex=\"0\"     >Building<\/h3><div id=\"target-id6a4077f7df941\" class=\"collapseomatic_content \">\n<h4>Command line build<\/h4>\n<p style=\"padding-left: 30px;\">If you have both Qt 5 and 6 installed, select Qt 6 before compilation<\/p>\n<pre style=\"padding-left: 30px;\">export QT_SELECT=qt6<\/pre>\n<p style=\"padding-left: 30px;\">Build<\/p>\n<pre style=\"padding-left: 30px;\">cd fractorium\nqmake main.pro -r -spec linux-g++-64 CONFIG+=\"release native\"\nmake<\/pre>\n<h4>Qt Creator build<\/h4>\n<p style=\"padding-left: 30px;\">Open <code>main.pro<\/code> in Qt Creator and build all.<\/p>\n<\/div>\n<h3 class=\"collapseomatic \" id=\"id6a4077f7dfa0f\"  tabindex=\"0\"     >Running<\/h3><div id=\"target-id6a4077f7dfa0f\" class=\"collapseomatic_content \">\n<pre>cd Bin\/release\n.\/fractorium<\/pre>\n<\/div>\n<h3 class=\"collapseomatic \" id=\"id6a4077f7dfae0\"  tabindex=\"0\"     >Install\/Uninstall<\/h3><div id=\"target-id6a4077f7dfae0\" class=\"collapseomatic_content \">\n<pre>sudo make install<\/pre>\n<p>or<\/p>\n<pre>sudo make uninstall<\/pre>\n<\/div>\n<h3 class=\"collapseomatic \" id=\"id6a4077f7dfbad\"  tabindex=\"0\"     >Packaging<\/h3><div id=\"target-id6a4077f7dfbad\" class=\"collapseomatic_content \">\n<p>You can also compile a <code>.deb<\/code> package to install locally. A few more tools will<br \/>\nbe necessary:<\/p>\n<pre>sudo apt-get install bzr bzr-builddeb dh-make debhelper<\/pre>\n<p>Run <code>package-linux.sh<\/code> in the project root. It\u00a0will create <code>~\/PPA\/fractorium-VERSION<\/code> as a work folder and build a\u00a0signed source package.<\/p>\n<p>For local use you probably want an unsigned binary package:<\/p>\n<pre>.\/package-linux.sh --binary-only --unsigned<\/pre>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>This guide is for building on Ubuntu 5.04 and above. Other versions and distributions are not officially supported, however the build process should still theoretically work on them as well.<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":63,"menu_order":1,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-570","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"http:\/\/fractorium.com\/index.php?rest_route=\/wp\/v2\/pages\/570","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/fractorium.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/fractorium.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/fractorium.com\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/fractorium.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=570"}],"version-history":[{"count":33,"href":"http:\/\/fractorium.com\/index.php?rest_route=\/wp\/v2\/pages\/570\/revisions"}],"predecessor-version":[{"id":2397,"href":"http:\/\/fractorium.com\/index.php?rest_route=\/wp\/v2\/pages\/570\/revisions\/2397"}],"up":[{"embeddable":true,"href":"http:\/\/fractorium.com\/index.php?rest_route=\/wp\/v2\/pages\/63"}],"wp:attachment":[{"href":"http:\/\/fractorium.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=570"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}