mphowardlab / azplugins

A HOOMD-blue component for soft matter simulations.
BSD 3-Clause "New" or "Revised" License
20 stars 12 forks source link

undefined reference #72

Closed wfyyzr closed 1 month ago

wfyyzr commented 1 month ago

I tried to install azplugins-main externally on both a supercomputer and a cluster. Hoomd-blue is installed using conda v2.6.0 because I often encountered errors when trying to install from source. However, on these servers, I always encounter errors like the following when running make install(added files). Originally, I tried to install the cuda version of hoomd v2.9.0, but it always prompted me that cuda cannot be compatible with c++14. However, I have tried many cuda versions from 8 to 11, and the same issue persists. This is very frustrating for me. Please help me figure out what went wrong。 error.txt build enviroment 1.hoomd2.9.0-azplugins0.12.0 gcc 5-8(tried) cuda 8-11(tried) python3.6 2.hoomd2.6.0-azplugins-main gcc 8.4.0 pyhton2.7

astatt commented 1 month ago

Thank you for reporting this issue. The first thing I notice when opening your error messages is that is appears that you are using python2.7. Could you please verify what version you actually use?

wfyyzr commented 1 month ago

I'm sorry that I didn't explain clearly. I used conda to install version 2.6.0 of hoomd, and at that time I used Python 2.7. The error log from the 'make install' step when compiling azplugins is attached. The gcc version is 8.4.0.

I tried many times. Initially, I aimed to install the CUDA version of hoomd 2.9.0, and I used Python 3.6 for that attempt. However, I was not successful, as during the 'azplugins make install' process, it indicated that CUDA was not compatible with C++14. So I gave up on that attempt. However, it would be great if I could use the CUDA version.

Thank you for your response.

mphoward commented 1 month ago

I suspect from your error message that you are having issues configuring your compiler, and/or with compatibility between the version of HOOMD you installed from conda and what you are able to compile locally.

I would recommend that you try compiling HOOMD yourself, and you can then also compile azplugins internally at the same time. We are able to build azplugins with HOOMD in a variety of configurations, see here for some we have tested:

https://github.com/mphowardlab/azplugins/blob/b782744561a2ffb9a24ed12f273bda6e87f0dc48/.github/workflows/test.yml#L38-L48

As Antonia said, you are asking about a very old version of Python (reached end of life 4 years ago) and an even older version of HOOMD (released 5 years ago), so the support we are going to be able to provide for that is unfortunately pretty minimal.

wfyyzr commented 1 month ago

Thank you very much for your response. I will try your suggestions.

空恨别梦久 @.***

 

------------------ 原始邮件 ------------------ 发件人: "mphowardlab/azplugins" @.>; 发送时间: 2024年5月23日(星期四) 晚上11:01 @.>; @.**@.>; 主题: Re: [mphowardlab/azplugins] undefined reference (Issue #72)

I suspect from your error message that you are having issues configuring your compiler, and/or with compatibility between the version of HOOMD you installed from conda and what you are able to compile locally.

I would recommend that you try compiling HOOMD yourself, and you can then also compile azplugins internally at the same time. We are able to build azplugins with HOOMD in a variety of configurations, see here for some we have tested:

https://github.com/mphowardlab/azplugins/blob/b782744561a2ffb9a24ed12f273bda6e87f0dc48/.github/workflows/test.yml#L38-L48

As Antonia said, you are asking about a very old version of Python (reached end of life 4 years ago) and an even older version of HOOMD (released 5 years ago), so the support we are going to be able to provide for that is unfortunately pretty minimal.

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>

wfyyzr commented 1 month ago

Issue resolved The issue was related to the GCC environment. Because I am installing on a supercomputer, if I do not explicitly specify the paths for GCC and G++ in the CMake options, the supercomputer defaults to using its own GCC version. No matter which GCC version I load using the module system, it won't work unless the paths are correctly specified in the CMake options.Using source installation for HOOMD is better than conda. This allows me to clearly configure the necessary environment. Thank you very much.

wfyyzr commented 1 month ago

by the way, I changed the python2.7 to python3.6