Request: Tutorial for compiling Darktable from source

Post your tutorials and howtos here.
Frobozky
Posts: 78
Joined: 25 Apr 2013 19:23
Location: USA

Request: Tutorial for compiling Darktable from source

Postby Frobozky » 01 Apr 2014 21:39

Scott,

If not too much trouble, please create a tutorial for building Darktable from source. I realize there are existing threads on building packages, but I often find I have to use trial and error to find the right libraries and development files. It would be great to see your process for this specific program.

Frobozky
Dell XPS430
SolydK

User avatar
ScottQuier
Posts: 1781
Joined: 18 Jul 2013 15:55
Location: Newport News, VA

Re: Request: Tutorial for compiling Darktable from source

Postby ScottQuier » 03 Apr 2014 19:29

Maybe this weekend ...
Scott
Quoting zerozero, "The usage of PPA's in debian-based
systems is risky at best and entails serious compatibility
problems; usually it's the best way to destroy an install"

User avatar
ScottQuier
Posts: 1781
Joined: 18 Jul 2013 15:55
Location: Newport News, VA

Re: Request: Tutorial for compiling Darktable from source

Postby ScottQuier » 04 Apr 2014 22:44

First, know that you really, really don't want to build and/or run Darktable in 32-bit. It's just not pretty. Given that, this is starting with a fresh, clean, untouched install of SoldyX-64
  1. Get all the packages needed to do the build

    Code: Select all

    $ sudo apt-get install git build-essential packaging-dev intltool libatk1.0-dev libexiv2-dev libfreetype6-dev libgomp1 libgtk2.0-dev libjpeg-dev libtiff4-dev liblcms2-dev liblensfun-dev libpng12-dev libsqlite3-dev libxml2-dev libopenexr-dev libcurl4-gnutls-dev libgphoto2-2-dev libdbus-glib-1-dev libgnome-keyring-dev fop librsvg2-dev libflickcurl-dev cmake liblua5.2-dev
  2. Create a place to do the work

    Code: Select all

    $ cd
    $ mkdir -p Builds/Darktable
  3. Get the source code - the latest and greatest - the equivelent of a nightly (but it's not quite)

    Code: Select all

    $ cd Builds/Darktable
    $ git clone git://github.com/darktable-org/darktable.git
  4. Rename the folder into which the code tree was written

    Code: Select all

    $ mv darktable darktable-1.5
  5. Create the Debian control file(s)

    Code: Select all

    $ dh_make --createorig
  6. Do the compile, build the package

    Code: Select all

    $ dpkg-buildpackage
  7. The result is found in ~/Builds/Darktable

    Code: Select all

    $ cd ..
    $ ls -al
    total 189584
    drwxr-xr-x  3 scott scott      4096 Apr  4 18:22 .
    drwxr-xr-x  3 scott scott      4096 Apr  4 17:58 ..
    drwxr-xr-x 12 scott scott      4096 Apr  4 18:15 darktable-1.5
    -rw-r--r--  1 scott scott      1495 Apr  4 18:22 darktable_1.5-1_amd64.changes
    -rw-r--r--  1 scott scott   2235850 Apr  4 18:22 darktable_1.5-1_amd64.deb
    -rw-r--r--  1 scott scott     10016 Apr  4 18:15 darktable_1.5-1.debian.tar.xz
    -rw-r--r--  1 scott scott       831 Apr  4 18:15 darktable_1.5-1.dsc
    -rw-r--r--  1 scott scott 191861388 Apr  4 18:15 darktable_1.5.orig.tar.xz
  8. Install the built package

    Code: Select all

    $ sudo dpkg -i darktable_1.5-1_amd64.deb 
    [sudo] password for scott: 
    Selecting previously unselected package darktable.
    (Reading database ... 178801 files and directories currently installed.)
    Preparing to unpack darktable_1.5-1_amd64.deb ...
    Unpacking darktable (1.5-1) ...
    Setting up darktable (1.5-1) ...
    Processing triggers for desktop-file-utils (0.22-1) ...
    Processing triggers for mime-support (3.54) ...
    Processing triggers for man-db (2.6.6-1) ...
    Processing triggers for hicolor-icon-theme (0.13-1) ...
So, here's the menu entry:
Menu.jpg
Menu.jpg (26.24 KiB) Viewed 2889 times
And here the application
Darktable_02.jpg
Scott
Quoting zerozero, "The usage of PPA's in debian-based
systems is risky at best and entails serious compatibility
problems; usually it's the best way to destroy an install"

Frobozky
Posts: 78
Joined: 25 Apr 2013 19:23
Location: USA

Re: Request: Tutorial for compiling Darktable from source

Postby Frobozky » 05 Apr 2014 00:17

Thank you, sir. Very nice tutorial.
Dell XPS430
SolydK

Frobozky
Posts: 78
Joined: 25 Apr 2013 19:23
Location: USA

Re: Request: Tutorial for compiling Darktable from source

Postby Frobozky » 06 Apr 2014 01:00

Hi Scott,

My problems may arise from attempting your tutorial in SolydK, but when I get to the step

Code: Select all

dpkg-buildpackage
it seems I am back to the usual problem of trial and error. I was hoping your install step had all the necessary libraries listed.

So far I have found the ones I need, until I get this message:

Code: Select all

Could NOT find RSVG2 (missing: RSVG2_LIBRARY RSVG2_INCLUDE_DIR)
The candidate I looked at attempted to bring in the mono files.

Any help?
Dell XPS430
SolydK

User avatar
ScottQuier
Posts: 1781
Joined: 18 Jul 2013 15:55
Location: Newport News, VA

Re: Request: Tutorial for compiling Darktable from source

Postby ScottQuier » 06 Apr 2014 15:19

A couple of things ....
  1. There is no significant difference between SolydK and SolydX when it comes to compiling. The underlying software set is all the same.
  2. I attempted to re-create, from a fresh and updated install of 201401, the steps above. I ran into a problem when attempting to install some of the packages. There appears to be a security update that was applied that causes an incompatibility issue and I couldn't get all the required packages installed.
  3. I started over and reset my /etc/apt/sources.list to SolydXK Testing, did a full dist-upgrade. From this point on, it worked. Here's my command history:

    Code: Select all

     
       15  sudo apt-get install git build-essential packaging-dev intltool libatk1.0-dev libexiv2-dev libfreetype6-dev libgomp1 libgtk2.0-dev libjpeg-dev libtiff4-dev liblcms2-dev liblensfun-dev libpng12-dev libsqlite3-dev libxml2-dev libopenexr-dev libcurl4-gnutls-dev libgphoto2-2-dev libdbus-glib-1-dev libgnome-keyring-dev fop librsvg2-dev libflickcurl-dev cmake liblua5.2-dev
       16  cd /var/log/apt
       17  ls
       18  cd
       19  mkdir -p Builds/Darktable
       20  cd Builds/Darktable/
       21  git clone git://github.com/darktable-org/darktable.git
       22  mv darktable darktable-1.5
       23  cd darktable-1.5/
       24  dh_make --createorig
       25  sudo apt-get install gnome-system-monitor
       26  dpkg-buildpackage 
       27  cd ..
       28  ls -al
    Of course, commands 16 and 25 have nothing to do with the build. :)
    The last commnd produced this:

    Code: Select all

    $ ls -al
    total 189252
    drwxr-xr-x  3 scott scott      4096 Apr  6 10:46 .
    drwxr-xr-x  3 scott scott      4096 Apr  6 10:35 ..
    drwxr-xr-x 12 scott scott      4096 Apr  6 10:39 darktable-1.5
    -rw-r--r--  1 scott scott      1495 Apr  6 10:46 darktable_1.5-1_amd64.changes
    -rw-r--r--  1 scott scott   2242196 Apr  6 10:46 darktable_1.5-1_amd64.deb
    -rw-r--r--  1 scott scott     10044 Apr  6 10:39 darktable_1.5-1.debian.tar.xz
    -rw-r--r--  1 scott scott       831 Apr  6 10:39 darktable_1.5-1.dsc
    -rw-r--r--  1 scott scott 191513948 Apr  6 10:38 darktable_1.5.orig.tar.xz
Of course the size difference between this iteration and the first is ... different versions of the source:
DarkTable.jpg
As for your error message, I would google RSVG2_INCLUDE_DIR and see what you come up with. I've not seen it.

Finally, if you can wait until the UP comes out then all the above might be moot as version 1.4 will then be available in the repos.

Code: Select all

$ apt-cache policy darktable
darktable:
  Installed: (none)
  Candidate: 1.4-2+b1
  Version table:
     1.4-2+b1 0
        500 http://debian.solydxk.com/testing/ testing/main amd64 Packages
Scott
Quoting zerozero, "The usage of PPA's in debian-based
systems is risky at best and entails serious compatibility
problems; usually it's the best way to destroy an install"

Frobozky
Posts: 78
Joined: 25 Apr 2013 19:23
Location: USA

Re: Request: Tutorial for compiling Darktable from source

Postby Frobozky » 06 Apr 2014 17:00

Thanks again. Good to know you experienced a similar failure by following your tutorial. I have been reading the thread on testing the new UP:

http://forums.solydxk.com/viewtopic.php?f=33&t=3296

and it seems there are still a few bugs to work out, so I will wait for production. I tend to avoid Google's search engine because of their data mining practices. Using a different engine, I found the correct lib for rsvg2, I then ran into a broken dependency in the curl libraries.
Dell XPS430
SolydK


Return to “Tutorials”

Who is online

Users browsing this forum: No registered users and 8 guests