molpopgen/fwdpy11

Build/Dependency issues when trying to install fwdpy11 0.19.0a0 on server

Closed this issue · 6 comments

Hello Kevin, this is Alouette. I encounter some dependency issues when trying to install the alpha version on the server. I tried to fix a few on my own but am quite stuck on this step. Here is my code:

module load gsl
module load rust
module load cmake
cargo install --force cbindgen
PATH="$PATH:~/.cargo/bin"

python3 -m venv fwdpy_test
source fwdpy_test/bin/activate
python -m pip install --upgrade pip
python -m pip install --upgrade --pre fwdpy11

And the error file is attached. By loading rust and installing cbindgen, I was able to reach [2%] in the wheel (error log line 237 ). I don't know if the error is caused by the cbindgen or something else in the environment. I would greatly appreciate your help. Thank you so much in advance!
errorlog.txt

Aha. I think I have a goof -- can you python -m pip install wheel and then try fwdpy11? You should not need gsl/rust/cmake if there is an appropriate wheel for your system. If not, then I'll need to know more about your server setup.

What version of python3 is on your server?

It's Python 3.8.10, trying the wheel command now

Tried installing wheel, but the same issue came up. Here are some links to the documentation: I am on Narval, and using StdEnv/2020. Thank you!

Those links don't tell me what version of python you have -- can you please find that out and report back? I have a feeling that it is older than the minimum version needed by fwdpy11, else pip should find the wheel.

I see from your build error log that you have python3.8, which is the minimum supported.

There are 2 things to try:

  1. python -m pip install --pre --upgrade fwdpy11 --only-binary fwdpy11 to try to force a wheel to be use for fwdpy11.
  2. Manually download a wheel for python 3.8 + Linux from here
    • Then python -m pip install --pre wheel_file_name.whl

Important for option 2:

  • Download the manylinux file for 3.8 and not the macos file!

For all options: be sure your venv is sourced!