I need to install the GSL library on Heroku running a Rails (4.0.2) app to use some gems that depend on it.
Goal: Install the GSL library to work with GSL and Similarity gems in Heroku.
Tried approaches:
I've tried following these steps (compiling binaries):
cd gsl-1.15
./configure
make clean
make
sudo make install
It works on my local environment but not in Heroku. Heroku doesn't allow sudo
but it allows access with heroku run
. The problem is that the file system is ephemeral and the dyno will only live as long as your console session.
Update:
I've also tried building my own Heroku Buildpack but I couldn't make it work. I tried using multipacks. I'm not a Heroku Buildpack expert so maybe it's the problem, I'm learning more about it to make a simple repository with an example and an extended explanation of this issue.
I had to use gsl1.16 on heroku and here is how I solved it:
First added gsl1.16 buildpack to the lists of buildpacks like
heroku buildpacks:add --index:3 git://github.com/gregory/heroku-gsl-buildpack.git#gsl-1.16
Which adds to my list of buildpacks, in my case got nodejs and ruby already. Hence --index=3
Then had to set LD_LIBRARY_PATH on heroku like
heroku config:set LD_LIBRARY_PATH=/app/vendor/gsl/lib
which points to 1.16. Seen around that some people use /app/vendor/gsl1/lib
but wasn't my case.
and that's it.
I made a heroku buildpack a couple months ago for 1.15 and 1.16
just do:
heroku buildpacks:set git://github.com/gregory/heroku-gsl-buildpack.git#gsl-1.16
or
heroku buildpacks:set git://github.com/gregory/heroku-gsl-buildpack.git#gsl-1.15
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With