-
Notifications
You must be signed in to change notification settings - Fork 5
LocalSourceInstallNoSudo
For those users without sudo
access on their target desktop environment, we provide instructions for compiling the dependencies of RNAStructViz starting from source in the user's home directory. These sudo-enabled instructions are intended for Linux and Unix users with access to the sudo
command and with the ability to install system packages.
We will minimally require Cairo, FLTK and the ViennaRNA (RNAlib) libraries to be available in the user's home directory to compile RNAStructViz from source. Note that we also assume that you are able to locally install the OpenSSL (for string hashing) and Boost filesystem libraries (for portable C++ filesystem operations).
The next local install instructions cover the difficult use cases where specialized instructions are needed to install the libraries without sudo
. Please post a new issue for support if your local use case requires documentation of the install instructions OpenSSL or Boost. However, note that it should be possible to handle specifying local build library and include paths for any custom library required to build RNAStructViz by tweaking the documented Makefile hidden settings and variables.
Download the libcairo source and build it from scratch using the following commands (this can take a while):
$ cd ~
$ wget https://cairographics.org/releases/cairo-1.16.0.tar.xz
$ tar xf cairo-1.16.0.tar.xz
$ cd cairo-1.16.0
$ ./configure --prefix=`readlink -f .`
$ make
The stock binary install of modern FLTK versions will in all likelihood not have Cairo support enabled by default. We assume that you will have Mesa / GL, Cairo (see above), etc. along with other dependencies needed on your system to build the FLTK windowing library (with-cairo support) on your local system. If for some reason these dependencies are not met on your Linux system, then we recommend that you contact your system administrator to install these necessary packages for you before proceeding to the next step. You can verify that the appropriate libraries are installed by running the following commands:
$ pkg-config glu --cflags --libs
-I/usr/include/libdrm -lGLU -lGL
$ pkg-config cairo --cflags --libs
-I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/freetype2 -I/usr/include/libpng16 -lcairo
$ glxinfo | grep "OpenGL version"
OpenGL version string: 3.0 Mesa 18.0.5
Note that the output of these commands does not need to exactly match what appears above. The sample output from the previous commands is intended to give the user a good sense if you're on the right track.
Note that Mac OSX users attempting this local install method should opt for a recent release of the development branch of the FLTK 1.4.x library. The instructions vary somewhat on Apple-based platforms, so on Mac we highly suggest that new users install the FLTKWithCairo formula using Homebrew to have their FLTK dependencies met (see the Mac install notes). First, we fetch and extract a recent stable version of the FLTK library development source (v1.4.x) and extract it to our local home directory:
$ cd ~
$ wget https://github.com/gtDMMB/homebrew-core/raw/master/LocalPatches/fltk-1.3.8-source-patched.tar.bz2
$ tar xvjf fltk-1.3.8-source-patched.tar.bz2
$ cd fltk-1.3.8-source-patched
Now we need to enable the configure-time options which will enable Cairo support by default in our FLTK build:
$ ./configure --enable-cairo --enable-threads --enable-shared
$ make
Next, to tell the RNAStructViz Makefile where to find your local install of FLTK, we need to export the following variable:
$ export FLTKCONFIG=$(readlink -f ./bin)
$ export FLTK_INSTALL_DIR=$(readlink -f ./)
Run the following commands to download and build ViennaRNA locally:
$ cd ~
$ wget https://www.tbi.univie.ac.at/RNA/download/sourcecode/2_4_x/ViennaRNA-2.4.14.tar.gz
$ tar xvzf ViennaRNA-2.4.14.tar.gz
$ cd ViennaRNA-2.4.14
$ make clean
$ ./configure --disable-debug --disable-dependency-tracking --prefix=`readlink .`
$ make
## Configuring pkg-config locally
We need to append the relevant entries to the ``PKG_CONFIG_PATH`` environment variable so that ``pkg-config`` can provide the correct local locations for the compile and link time paths in the *Makefile*. The following commands show the locations of these files in our home directory installations of the libraries:
```bash
$ ls -l ~/ViennaRNA-2.4.13/RNAlib2.pc
$ ls -l ~/cairo-1.16.0/src/cairo.pc
Now we need only set the PKG_CONFIG_PATH
variable to include these paths:
$ export PKG_CONFIG_PATH="`readlink ~/cairo-1.16.0/src`:`readlink ~/ViennaRNA-2.4.13`:$PKG_CONFIG_PATH"
Finally, continue on to the building RNAStructViz from source step from the sudoers install guide.
RNAStructViz has been developed by the Georgia Tech Research Group in Discrete Mathematics and Molecular Biology (gtDMMB) directed by Professor Christine Heitsch (current credits and citations). All communication about running our software, including instantiating bug reports, feature requests, wiki edits, and general inquiries, is logged via our GitHub issues page. Please view the detailed instructions before posting a new issue about support requests.
Source Code Update Information (JSON Format): 📑 Most Recent Commit Activity | 🔖 Latest Release Tag | 📋 Lines of Code