-
Notifications
You must be signed in to change notification settings - Fork 48
Troubleshooting
This page compiles a list of common errors that can appear when using Scipion.
- Launching Eman Boxer
- Compiling Scipion with OpenCV
- Scipion freezes after click on open bibtex
- Compiling Scipion in Opensuse
- Endless list of CUDA related errors
If you see an error like 'Cannot mix incompatible Qt library (version 0x40806) with this library (version 0x40804)'. This means the Qt installed on your computer is conflicting with the Qt distributed with EMAN2. In most cases it gets solved by removing the Qt that comes with EMAN2 from EMAN2DIR/extlib/lib.
If you have problems compiling Scipion with OpenCV support (CUDA version >=6.5), e.g. opencv-2.4.9 compilation fails with an error:
Error: target 'software/lib/libopencv_core.so' not built (after running 'make install > /home/user/soft/scipion/software/log/opencv_make_install.log 2>&1')
And log file (software/log/opencv_make.log) shows something like:
[ 9%] Building NVCC (Device) object modules/core/CMakeFiles/cuda_compile.dir/src/cuda/cuda_compile_generated_gpu_mat.cu.o
/usr/include/string.h: In function ‘void* __mempcpy_inline(void, const void, size_t)’:
/usr/include/string.h:652:42: error: ‘memcpy’ was not declared in this scope
return (char *) memcpy (__dest, __src, __n) + __n;
^
CMake Error at cuda_compile_generated_gpu_mat.cu.o.cmake:264 (message):
Error generating file
/home/mag/opencv/build_opencv_master/modules/core/CMakeFiles/cuda_compile.dir/src/cuda/./cuda_compile_generated_gpu_mat.cu.o
Then:
- Find the micro-architecture name for your GPU card, e.g. Kepler for K40 or Fermi for M2070 card
cd $SCIPION_HOME/software/tmp/opencv-2.4.9
- Run
cmake -DCUDA_GENERATION=Kepler -DWITH_CUDA:BOOL=ON -DCMAKE_INSTALL_PREFIX:PATH=/path/to/scipion/software . > /path/to/scipion/software/log/opencv_cmake.log 2>&1
substituting correct path and micro-architecture - Modify source files in opencv-2.4.9 folder according to this and this fix
- Re-run
scipion install
, opencv now should compile cleanly
This likely happens because your machine doesn't have a default program to open bibtex. Type this in your terminal to set gedit as your default program for bibtex files:
xdg-mime default gedit.desktop text/x-bibtex
Scipion instalationin Opensuse sometimes involves a few drawbacks.
Once in the terminal the compilation has been launched, ./scipion install
, stop the installation (Crtl+C
). It is neccesary to change the python version (download python 2.7.13). Copy the download file to scipion\software\tmp\
and edit next file scipion\software\install\script.py
The line in which the python version is specified must be modified by the downloaded version 2.7.13, it means to substitute the old version 2.7.8 by 2.7.13. Finally we can go to the terminal again and relaunch the installation by doing ./scipion install
.
Conditions
- CUDA set to True (in scipion.conf)
- Multiple CUDA versions are installed
Example
/usr/local/cuda/include/crt/common_functions.h:64:0: warning: "\_\_CUDACC_VER__" redefined #define \_\_CUDACC_VER__ "\_\_CUDACC_VER__ is no longer supported. Use \_\_CUDACC_VER_MAJOR__, \_\_CUDACC_VER_MINOR__, and \_\_CUDACC_VER_BUILD__ instead." ^ <command-line>:0:0: note: this is the location of the previous definition
/usr/local/cuda/include/device_atomic_functions.h(107): warning: missing return statement at end of non-void function "atomicAdd"
Cause
Version conflict while linking
Fix
make sure that all paths to *CUDA* and *NVCC* in scipion.conf are absolute