0

It's my first time using the build system Semaphore, and I'm having trouble installing scipy while doing my build.

Specifically, it's complaining that BLAS and LAPACK are not installed. Unlike these answers suggests, I can't compile any of the fortran files because Semaphore CI doesn't have them installed on their machines (nor can I install them, because they require root).

What is the proper way of installing scipy in this situation?

(If someone has a suggestion of where to place this question on stackexchange, that would also be appreciated. I'm not sure if this question belongs here.)

It seems travis-ci had a similar issue. Except they resolved it by pre-installing scipy.

Community
  • 1
  • 1
hlin117
  • 20,764
  • 31
  • 72
  • 93

1 Answers1

1

Semaphore CI gives you a passwordless sudo in your build environment, so you can use commands suggested in the official documentation in your build setup like:

sudo apt-get update
sudo apt-get install python python-dev libatlas-base-dev gcc gfortran g++
sudo pip install scipy
rastasheep
  • 10,416
  • 3
  • 27
  • 37
  • Good suggestion. Unfortunately, I'm getting this error: https://www.dropbox.com/s/l7s6023tvxna2eo/Screenshot%202015-09-28%2009.15.58.png?dl=0 My guess is that Semaphore-CI's support for python is too premature right now. – hlin117 Sep 28 '15 at 14:17
  • That being said, knowing that semaphore offers the passwordless sudo is useful. Thanks for letting me know. – hlin117 Sep 28 '15 at 14:18
  • Sorry for the troubles, i have tried and succeed to install scipy manually via SSHing into the build machine. Please check updated answer. – rastasheep Sep 28 '15 at 15:03
  • 1
    And yeah, Python support is pretty young on Semaphore, so any feedback is more than appreciated, thanks. – rastasheep Sep 28 '15 at 15:06
  • Thanks for your help @rastasheep! Would I have to perform the first two commands every time I perform a build? – hlin117 Sep 28 '15 at 15:07
  • Unfortunately yes, package lists are quickly get out of date, and Semaphore will not waste your build time on it if you not need it. So you need to add it if you're installing new packages. Second one will not install all packages (same of those are already installed), but I have followed official docs just to be clear (you can see from the command output which one is missing). You can add those commands as "setup commands" and that will mean that it will be run at the beginning of the every thread. – rastasheep Sep 28 '15 at 15:12
  • Btw python packages installed with pip are cached between builds on Semaphore. So in the next build pip install command should be much faster. More info about python support on Semaphore you can find here https://semaphoreci.com/docs/python-continuous-integration.html – rastasheep Sep 28 '15 at 15:15