I'm trying to install caffe deep learning library on my university cluster grid running on Debian. The grid has some preinstalled modules, such as python, CUDA, compilers etc. The problem is, some of those are not really recent and some caffe dependencies are missing.

Caffe has following installation instructions for its dependencies:

sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler sudo apt-get install --no-install-recommends libboost-all-dev sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev

but without sudo I cannot install any of it on the grid. Is it somehow possible to build the framework on system with root privileges and then copy then copy it over? I know about LD_LIBRARY_PATH but this would mean I would have to copy over huge amount of libraries which might not even be compatible with grid architecture. On the grid I can use fakeroot even though I'm not sure if it would help.

Is there some way to create virtual environment so I can install all dependencies without actual root privileges on the grid. Or create virtual environment on local machine with root, build everything and copy it to grid? The framework doesn't need the root to run.

PS: While I mentioned caffe, this question is IMO universally applicable to any software installation on root restricted system.

  • We lucked out on our local installs of caffe because our systems were built to support it. Have you tried just doing a local install without dependencies? That's what we had to try. – r3mnant Mar 26 '16 at 5:12
  • Unfortunately there is hidden dependency on higher version of glibc, which is the main issue. The other stuff can be installed locally, but the glibc is no-go. – jnovacho Mar 26 '16 at 12:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.