thuem / THUNDER

A particle-filter framework for robust cryoEM 3D reconstruction
GNU General Public License v2.0
56 stars 10 forks source link

make problem #4

Open cswangchen opened 5 years ago

cswangchen commented 5 years ago

when i use make ,then make errors. the following is the output In file included from /usr/include/stdio.h:862:0, from /usr/include/c++/7/cstdio:42, from /usr/include/c++/7/ext/string_conversions.h:43, from /usr/include/c++/7/bits/basic_string.h:6352, from /usr/include/c++/7/string:52, from /usr/include/c++/7/bits/locale_classes.h:40, from /usr/include/c++/7/bits/ios_base.h:41, from /usr/include/c++/7/ios:42, from /usr/include/c++/7/istream:38, from /usr/include/c++/7/sstream:38, from /home/barry/THUNDER/include/Optimiser.h:15, from /home/barry/THUNDER/src/Optimiser.cpp:10: /usr/include/x86_64-linux-gnu/bits/stdio2.h:34:43: note: ‘builtin___sprintf_chk’ output between 26 and 1054 bytes into a destination of size 1024 bos (s), fmt, __va_arg_pack ()); ^ CMakeFiles/Makefile2:228: recipe for target 'CMakeFiles/core.dir/all' failed make[1]: [CMakeFiles/core.dir/all] Error 2 Makefile:129: recipe for target 'all' failed make: [all] Error 2 pls help

thuem commented 5 years ago

I am so sorry for the delay.

Please give us more information of your environment, such as version of operation system, version of C/C++ compiler, CPU or GPU version.

From your feedback, you were using Linux and gcc 7x. We also tried to compile it in Centos 7, gcc 7.4. However, it works fine.

Please provide us more information, so that we can reproduce this issue here.

Thank you for your support and patience.

sunny1226 commented 5 years ago

I met the same problem. My operation system is Ubuntu 18.04; We have CUDA 10.0 but it failed in cmake step: (Reported: CMake Error: The following variables are used in this project, but they are set to NOTFOUND. Please set them or make sure they are set and tested correctly in the CMake files: CUDA_cublas_device_LIBRARY (ADVANCED) linked by target "core_GPU" in directory /home/install/code/THUNDER linked by target "cuthuemcore" in directory /home/install/code/THUNDER/gpu/src linked by target "cuthuem" in directory /home/install/code/THUNDER/gpu/interface linked by target "ReconstructorAccTest" in directory /home/install/code/THUNDER/gpu/testsrc linked by target "SimpleCMakeTest" in directory /home/install/code/THUNDER/gpu/testsrc linked by target "CastTest" in directory /home/install/code/THUNDER/gpu/testsrc ) so we changed CUDA version to 8.0, and cmake works fine; We have gcc 7.2 but it reported the [all] error problem; We changed gcc to 4.8 for CUDA 8.0 compilation but it has the same problem; We used nccl v2.2.13-1+cuda8.0 We have 212 cores CPU Intel Xeon E5-2650 v4s (-MT-MCP-SMP-); We have 4 NVIDIA 1080Ti. And we got the same problem as the question. Thanks a lot.

Zarrathustra commented 5 years ago

Thank you for your report.

We are setting up the same environment as the one in your report, and try to repeat this issue. We will have you informed once we have done so.

Best regards,

Mingxu

Zarrathustra commented 5 years ago

Hi,

We recommend CUDA 9.2, which is currently what we are using. Setting up Ubuntu 18.04 + CUDA 8.0 will take some time, as there is no such docker image on dockerhub.

Best regards,

Mingxu

sunny1226 commented 5 years ago

Thanks. I have successfully compiled with CUDA 9.2 on Ubuntu 18.04. And I failed in CentOS 7.6. Maybe it because of too low GCC version. I will try to compile GCC 7.2 later.

Zarrathustra commented 5 years ago

GCC in CentOS 7.6 should be enough. Actually, in Tsinghua, we mainly use CentOS 6.

The oldest version of GCC THUNDER requires is gcc4.2. If you have any problem compiling with GCC which is above 4.2, please let us know.

Thank you.

Best regards,

Mingxu

R3alloc commented 5 years ago

Thanks. I have successfully compiled with CUDA 9.2 on Ubuntu 18.04. And I failed in CentOS 7.6. Maybe it because of too low GCC version. I will try to compile GCC 7.2 later.

Hi,

I would like to know the version information of softwares installed in CentOS 7.6 , such as the version of gcc, cmake, mpich, cuda and nccl.

With these information, We will try to repeat the build environment of your machine and we will have you informed once we have done so.

Best regards,

Fande Yu

sunny1226 commented 5 years ago

OK. I have successfully compiled THUNDER on CentOS 7.6 after I installed right-version NCCL. I think I have failed because I used NCCL for CUDA-10.0. Thanks. For me, it's OK to close the issue. The system environment is: we changed CUDA version to 9.2; We have gcc 4.8.5; We used nccl latest+cuda9.2; We have cmake 2.8.12.2; We have 2 NVIDIA 1080Ti. Does mpich means mpic++ or mpicc? However, I noticed that CUDA-10.0 and CUDA-8.0 cannot compile THUNDER. We have to add a CUDA in our workstation. Hopefully THUNDER would support CUDA-10.0 soon.