NVIDIA / cuQuantum

Home for cuQuantum Python & NVIDIA cuQuantum SDK C++ samples
https://docs.nvidia.com/cuda/cuquantum/
BSD 3-Clause "New" or "Revised" License
320 stars 63 forks source link

[Question] Issues building cuquantum-python from source #94

Closed Sinestro38 closed 8 months ago

Sinestro38 commented 8 months ago

I have the cuquantum-23.06 appliance container mounted with a volume containing my project directories and I'm trying to build cuquantum-python from source (specifically using cutensornet) but I run into errors following the given instructions.

  1. First I pull the container with my mount docker run --gpus all -it --rm -v /home/ubuntu:/home/ubuntu -e HOME=/home/ubuntu nvcr.io/nvidia/cuquantum-appliance:23.06
  2. Clone the repo: git clone https://github.com/NVIDIA/cuQuantum
  3. Set CUDA_PATH: export CUDA_PATH=/usr/local/cuda
  4. CD into the pkg lvl dir cd cuQuantum/python
  5. Run pip install: pip install -e .

But returns this error saying it couldn't find cutensornet or custatevec:

    g++ -pthread -B /home/cuquantum/conda/envs/cuquantum-23.06/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/cuquantum/conda/envs/cuquantum-23.06/lib -Wl,-rpath-link,/home/cuquantum/conda/envs/cuquantum-23.06/lib -L/home/cuquantum/conda/envs/cuquantum-23.06/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/cuquantum/conda/envs/cuquantum-23.06/lib -Wl,-rpath-link,/home/cuquantum/conda/envs/cuquantum-23.06/lib -L/home/cuquantum/conda/envs/cuquantum-23.06/lib build/temp.linux-x86_64-cpython-39/cuquantum/cutensornet/cutensornet.o -L/tmp/pip-build-env-h7eauy9b/normal/lib/python3.9/site-packages/cuquantum/lib -L/tmp/pip-build-env-h7eauy9b/normal/lib/python3.9/site-packages/cuquantum/lib64 -lcutensornet -o build/lib.linux-x86_64-cpython-39/cuquantum/cutensornet/cutensornet.cpython-39-x86_64-linux-gnu.so
    /home/cuquantum/conda/envs/cuquantum-23.06/compiler_compat/ld: cannot find -lcutensornet: No such file or directory
    collect2: error: ld returned 1 exit status
    g++ -pthread -B /home/cuquantum/conda/envs/cuquantum-23.06/compiler_compat -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/home/cuquantum/conda/envs/cuquantum-23.06/lib -Wl,-rpath-link,/home/cuquantum/conda/envs/cuquantum-23.06/lib -L/home/cuquantum/conda/envs/cuquantum-23.06/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/home/cuquantum/conda/envs/cuquantum-23.06/lib -Wl,-rpath-link,/home/cuquantum/conda/envs/cuquantum-23.06/lib -L/home/cuquantum/conda/envs/cuquantum-23.06/lib build/temp.linux-x86_64-cpython-39/cuquantum/custatevec/custatevec.o -L/tmp/pip-build-env-h7eauy9b/normal/lib/python3.9/site-packages/cuquantum/lib -L/tmp/pip-build-env-h7eauy9b/normal/lib/python3.9/site-packages/cuquantum/lib64 -lcustatevec -o build/lib.linux-x86_64-cpython-39/cuquantum/custatevec/custatevec.cpython-39-x86_64-linux-gnu.so
    /home/cuquantum/conda/envs/cuquantum-23.06/compiler_compat/ld: cannot find -lcustatevec: No such file or directory
    collect2: error: ld returned 1 exit status
    error: command '/usr/bin/g++' failed with exit code 1
    [end of output]

Shouldn't they be built and installed in the process of running this command?