-
Notifications
You must be signed in to change notification settings - Fork 202
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Local install issues #2
Comments
Original comment by Sjors Scheres (Bitbucket: scheres, GitHub: scheres): Hi Robert, |
Original comment by Sjors Scheres (Bitbucket: scheres, GitHub: scheres): Just to be clear for others. Something like this should work (but please do like Robert and report any problems you might have): git clone https://@bitbucket.org/tcblab/relion2-beta.git cd relion2-beta/ mkdir build cd build/ cmake .. make -j 12 |
Original comment by Robert McLeod (Bitbucket: robbmcleod, GitHub: robbmcleod): Cmake 2.8.12 logs with FLTK dependency issue |
Original comment by Robert McLeod (Bitbucket: robbmcleod, GitHub: robbmcleod): So with a bit more time I see that you have setup Google Drive links for the external dependencies. This seems to be the part that isn't working for me under some circumstances. On our cluster we have various CMake modules that come with different environments for different flavours of MPI and compilers. For example with an older version of Cmake (2.8.12) with the 'goolf-1.7.20' environment that we used for Relion >=1.4 it can't download FLTK because of a mis-matched hash and crashes in the make step. For whatever reason yesterday it built to completion, possibly the FLTK didn't get off a kill signal to the others? It seems to be more robust if compiling with one thread. Here if I change to Cmake 3.4.3 and OpenMPI 1.7.20 it does work. So perhaps it is best to recommend a higher minimum Cmake version and/or MPI flavour? Or it could be specific to our environment. Here's an example with a freshly cloned repo: mcleod@login11:~/relion2-beta/build$ module load CUDA/7.5.18 mcleod@login11:~/relion2-beta/build$ module load CMake/2.8.12-goolf-1.7.20 mcleod@login11:~/relion2-beta/build$ cmake .. -- ------- WILL USE LOCALLY BUILT FLTK LIBS -------- -- no previous fltk found, the following paths are set for libs/headers TO BE built
make[2]: *** [FLTK-prefix/src/FLTK-stamp/FLTK-download] Error 1 |
Original comment by Bjoern Forsberg (Bitbucket: bforsbe, GitHub: bforsbe): Thank you so much for the detailed update. This was really helpful, because I learnt something valuable from here: "The actual hash you see (d41d8cd98f00b204e9800998ecf8427e) is the one for an empty file, and it's what happens when CMake doesn't have SSL support." I tired using wget and I got the correct hash, so in all likelihood we need to require a cmake-version built with SSL-support. This will be amended, thanks! I'll look into the installation of the main executable and post-install modifications of scripts, and resolve this issue when we push an amended version. As a side-note for others possibly facing similar issues with FLTK deps on remote nodes which do not need a graphical interface-capability, simply skipping the need for FLTK is possible through omission of the GUI-related features, by modifying the configuration and build procedure stated above by Sjors to :
|
Original comment by Jon Diprose (Bitbucket: well-jon, GitHub: Unknown): Ah, should have read further down that one! |
Original comment by Robert McLeod (Bitbucket: robbmcleod, GitHub: robbmcleod): Hi, Please consider using http instead of ftp for downloading dependencies. My IT department is paranoid and we have no FTP access on the cluster, but wget with http works fine. Thanks. |
Originally reported by: Robert McLeod (Bitbucket: robbmcleod, GitHub: robbmcleod)
My GPU nodes are on a cluster where I don't have sudo. The default 'make install' tries to install globally, which of course doesn't work. This is a change from how Relion has worked in the past. Here is what I changed to install it locally in my home directory:
from ~/relion2-beta/build/
cmake -DCMAKE_INSTALL_PREFIX="~/relion2-beta/" ..
make all install
Yields the executables in ~/relion2-beta/bin/ and the libraries in ~/relion2-beta/lib/
Following bugs are related to said local install:
Bug: However, relion main executable isn't copied with the new make prefix. Can be copied manually.
Bug: All of the relion_star* bash scripts need to be made executable with chmod after installation.
Bug: ~/relion2-beta/bin/relion_refine_mpi: error while loading shared libraries: libfltk_images.so.1.3: cannot open shared object file: No such file or directory
Work-around: The ftkl and fftw libraries weren't created on install. I copied them over from relion-1.4 install and then added the ~/relion2-beta/lib to my LD_LIBRARY_PATH environment variable in my submission script.
After resolution of these problems I appear to have successfully started a 2D classification on a known-good dataset on one of our GPU servers (4 Tesla K80s). It does claim to be running in double-precision mode.
The text was updated successfully, but these errors were encountered: