Skip to content

Instantly share code, notes, and snippets.

@nickodell
Last active February 22, 2018 23:56
Show Gist options
  • Save nickodell/46180d736a7c2cb6836291a8f168ef20 to your computer and use it in GitHub Desktop.
Save nickodell/46180d736a7c2cb6836291a8f168ef20 to your computer and use it in GitHub Desktop.
Building libfive on Debian 9 (WIP)

Introduction

This is a guide to install libfive. libfive is a very unfinished program that allows you to model volumes. In other words, you can give libfive a functional representation of a solid, and libfive will figure everything else out, and render the resulting mesh. Pretty cool.

Example

Conventions used by this document: # indicates a command run by root, and $ indicates user.

Steps

  1. Get tools and compiler
  2. Compile Guile 2.2
  3. Compile libfive

Get tools and compiler

# apt-get install git build-essential

Compile Guile 2.2

# apt-get install libgmp-dev libiconv-hook-dev libltdl-dev libunistring-dev libgc-dev libffi-dev libreadline-dev gettext pkg-config texinfo autoconf flex
$ git clone https://git.savannah.gnu.org/git/guile.git
$ cd guile
$ git checkout v2.2.2
$ ./autogen.sh
$ ./configure

This next step takes about two hours. Go get some coffee.

$ make

Finally, install it!

# make install

Compile libfive

# apt-get install libeigen3-dev libpng-dev qt5-default
$ cd ~
$ git clone https://github.com/mkeeter/libfive
$ cd libfive
$ mkdir build
$ cd build
$ cmake -DCMAKE_PREFIX_PATH=/usr/lib/x86_64-linux-gnu/qt5/ ..
$ make

Run libfive

This will run tests:

$ ./libfive/build/libfive/test/libfive-test

This will run Studio:

$ ./libfive/build/studio/Studio

Problems

Problems with this document? Email me at my github username plus "gmail dot com."

Problems with libfive? File an issue at mkeeter/libfive.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment