Skip to content
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

Issue installing pyspoa on remote compute node #14

Open
nolsman opened this issue May 27, 2024 · 0 comments
Open

Issue installing pyspoa on remote compute node #14

nolsman opened this issue May 27, 2024 · 0 comments

Comments

@nolsman
Copy link

nolsman commented May 27, 2024

Hi, I have been trying to get medaka installed on our remote computing system via pip and have been having issues that seem to be related to pyspoa. Specifically, I get an error (below) that appears to be related to trying to install ZLIB. I tried building pyspoa both with pip and from source and got the same error. I tried building ZLIB directly on its own, and traced the issue to this:

(spoa-test) [nao5@compute-g-17-169 zlib-1.3]$ make install
mkdir: cannot create directory ‘/usr/local/lib/pkgconfig’: Permission denied
make: [install-libs] Error 1 (ignored)
rm -f /usr/local/lib/libz.a
cp libz.a /usr/local/lib

When I installed it again using make install prefix=$HOME I was about to get the install to work, however dropping that line into the build-wheel.sh script in the pyspoa repo still gave the same error. I believe the issue has to do with the wheel expecting to be able to access local directories which our server system does not give write permission, but I'm not really sure how to go about modifying the install to make this work. I have never had this issue installing anything else in the past, so I assume it is somehow specific to the build instructions here. I did manage to install an older version of medaka through conda, but cannot seem to get the newer version up and running.

If it is relevant, the remote nodes run centos 7 and GCC 9.2.0, and I am doing this in a Python 3.10.8 virtual environment (though I tried it with various other python versions and had no success).

error after pip install pyspoa:

(spoa-test) [nao5@compute-g-17-169 sequencing_output]$ pip install pyspoa
Collecting pyspoa
  Using cached pyspoa-0.2.1.tar.gz (52 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Building wheels for collected packages: pyspoa
  Building wheel for pyspoa (pyproject.toml) ... error
  error: subprocess-exited-with-error
  
  × Building wheel for pyspoa (pyproject.toml) did not run successfully.
  │ exit code: 1
  ╰─> [45 lines of output]
      running bdist_wheel
      running build
      running build_ext
      -- The CXX compiler identification is GNU 9.2.0
      -- Detecting CXX compiler ABI info
      -- Detecting CXX compiler ABI info - done
      -- Check for working CXX compiler: /n/app/gcc/9.2.0/bin/c++ - skipped
      -- Detecting CXX compile features
      -- Detecting CXX compile features - done
      CMake Error at /tmp/pip-build-env-rn7wq22r/overlay/lib/python3.10/site-packages/cmake/data/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
        Could NOT find ZLIB: Found unsuitable version "1.2.7", but required is at
        least "1.2.8" (found /usr/lib64/libz.so, )
      Call Stack (most recent call first):
        /tmp/pip-build-env-rn7wq22r/overlay/lib/python3.10/site-packages/cmake/data/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:598 (_FPHSA_FAILURE_MESSAGE)
        /tmp/pip-build-env-rn7wq22r/overlay/lib/python3.10/site-packages/cmake/data/share/cmake-3.29/Modules/FindZLIB.cmake:199 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
        build/_deps/bioparser-src/CMakeLists.txt:22 (find_package)
      
      
      -- Configuring incomplete, errors occurred!
      make: *** No targets specified and no makefile found.  Stop.
      creating tmp
      gcc -pthread -B /home/nao5/miniconda3/envs/spoa-test/compiler_compat -Wno-unused-result -Wsign-compare -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /home/nao5/miniconda3/envs/spoa-test/include -fPIC -O2 -isystem /home/nao5/miniconda3/envs/spoa-test/include -fPIC -I/home/nao5/miniconda3/envs/spoa-test/include/python3.10 -c /tmp/tmp_hdr91he.cpp -o tmp/tmp_hdr91he.o -std=c++14
      gcc -pthread -B /home/nao5/miniconda3/envs/spoa-test/compiler_compat -Wno-unused-result -Wsign-compare -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /home/nao5/miniconda3/envs/spoa-test/include -fPIC -O2 -isystem /home/nao5/miniconda3/envs/spoa-test/include -fPIC -I/home/nao5/miniconda3/envs/spoa-test/include/python3.10 -c /tmp/tmpc6qpuln_.cpp -o tmp/tmpc6qpuln_.o -fvisibility=hidden
      building 'spoa' extension
      creating build
      creating build/temp.linux-x86_64-cpython-310
      gcc -pthread -B /home/nao5/miniconda3/envs/spoa-test/compiler_compat -Wno-unused-result -Wsign-compare -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /home/nao5/miniconda3/envs/spoa-test/include -fPIC -O2 -isystem /home/nao5/miniconda3/envs/spoa-test/include -fPIC -Isrc/include/spoa -Isrc/vendor/cereal/include -I/tmp/pip-build-env-rn7wq22r/overlay/lib/python3.10/site-packages/pybind11/include -I/tmp/pip-build-env-rn7wq22r/overlay/lib/python3.10/site-packages/pybind11/include -I/home/nao5/miniconda3/envs/spoa-test/include/python3.10 -c pyspoa.cpp -o build/temp.linux-x86_64-cpython-310/pyspoa.o -DVERSION_INFO=\"0.2.1\" -std=c++14 -fvisibility=hidden
      pyspoa.cpp: In function ‘pybind11::tuple poa(std::vector<std::__cxx11::basic_string<char> >, int, bool, int, int, int, int, int, int, pybind11::object)’:
      pyspoa.cpp:14:40: warning: ‘bool pybind11::handle::operator!=(const pybind11::handle&) const’ is deprecated: Use !obj1.is(obj2) instead [-Wdeprecated-declarations]
         14 |     if (min_coverage != pybind11::none()) {
            |                                        ^
      In file included from /tmp/pip-build-env-rn7wq22r/overlay/lib/python3.10/site-packages/pybind11/include/pybind11/detail/../detail/type_caster_base.h:12,
                       from /tmp/pip-build-env-rn7wq22r/overlay/lib/python3.10/site-packages/pybind11/include/pybind11/detail/../cast.h:15,
                       from /tmp/pip-build-env-rn7wq22r/overlay/lib/python3.10/site-packages/pybind11/include/pybind11/detail/../attr.h:14,
                       from /tmp/pip-build-env-rn7wq22r/overlay/lib/python3.10/site-packages/pybind11/include/pybind11/detail/class.h:12,
                       from /tmp/pip-build-env-rn7wq22r/overlay/lib/python3.10/site-packages/pybind11/include/pybind11/pybind11.h:13,
                       from /tmp/pip-build-env-rn7wq22r/overlay/lib/python3.10/site-packages/pybind11/include/pybind11/stl.h:12,
                       from pyspoa.cpp:4:
      /tmp/pip-build-env-rn7wq22r/overlay/lib/python3.10/site-packages/pybind11/include/pybind11/detail/../detail/../pytypes.h:293:10: note: declared here
        293 |     bool operator!=(const handle &h) const { return m_ptr != h.m_ptr; }
            |          ^~~~~~~~
      creating build/lib.linux-x86_64-cpython-310
      g++ -pthread -B /home/nao5/miniconda3/envs/spoa-test/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/nao5/miniconda3/envs/spoa-test/lib -Wl,-rpath-link,/home/nao5/miniconda3/envs/spoa-test/lib -L/home/nao5/miniconda3/envs/spoa-test/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/nao5/miniconda3/envs/spoa-test/lib -Wl,-rpath-link,/home/nao5/miniconda3/envs/spoa-test/lib -L/home/nao5/miniconda3/envs/spoa-test/lib build/temp.linux-x86_64-cpython-310/pyspoa.o src/build/lib/libspoa.a -o build/lib.linux-x86_64-cpython-310/spoa.cpython-310-x86_64-linux-gnu.so
      g++: error: src/build/lib/libspoa.a: No such file or directory
      error: command '/n/app/gcc/9.2.0/bin/g++' failed with exit code 1
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for pyspoa
Failed to build pyspoa
ERROR: Could not build wheels for pyspoa, which is required to install pyproject.toml-based projects
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant