pycuda installation failure on jetson nano

Hi,

To run TRT_Object_Detection on jetson nano (https://github.com/AastaNV/TRT_object_detection),
I need to install pycuda:

$ sudo pip3 install pycuda

However, during installation I get the following error:

running install
    running build
    running build_py
    creating build
    creating build/lib.linux-aarch64-3.6
    creating build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/debug.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/elementwise.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/characterize.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/curandom.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/driver.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/reduction.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/gpuarray.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/autoinit.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/_cluda.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/scan.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/tools.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/_mymako.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/__init__.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/cumath.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/compiler.py -> build/lib.linux-aarch64-3.6/pycuda
    creating build/lib.linux-aarch64-3.6/pycuda/gl
    copying pycuda/gl/autoinit.py -> build/lib.linux-aarch64-3.6/pycuda/gl
    copying pycuda/gl/__init__.py -> build/lib.linux-aarch64-3.6/pycuda/gl
    creating build/lib.linux-aarch64-3.6/pycuda/sparse
    copying pycuda/sparse/coordinate.py -> build/lib.linux-aarch64-3.6/pycuda/sparse
    copying pycuda/sparse/pkt_build.py -> build/lib.linux-aarch64-3.6/pycuda/sparse
    copying pycuda/sparse/cg.py -> build/lib.linux-aarch64-3.6/pycuda/sparse
    copying pycuda/sparse/inner.py -> build/lib.linux-aarch64-3.6/pycuda/sparse
    copying pycuda/sparse/packeted.py -> build/lib.linux-aarch64-3.6/pycuda/sparse
    copying pycuda/sparse/__init__.py -> build/lib.linux-aarch64-3.6/pycuda/sparse
    copying pycuda/sparse/operator.py -> build/lib.linux-aarch64-3.6/pycuda/sparse
    creating build/lib.linux-aarch64-3.6/pycuda/compyte
    copying pycuda/compyte/array.py -> build/lib.linux-aarch64-3.6/pycuda/compyte
    copying pycuda/compyte/dtypes.py -> build/lib.linux-aarch64-3.6/pycuda/compyte
    copying pycuda/compyte/__init__.py -> build/lib.linux-aarch64-3.6/pycuda/compyte
    running egg_info
    writing pycuda.egg-info/PKG-INFO
    writing dependency_links to pycuda.egg-info/dependency_links.txt
    writing requirements to pycuda.egg-info/requires.txt
    writing top-level names to pycuda.egg-info/top_level.txt
    reading manifest file 'pycuda.egg-info/SOURCES.txt'
    reading manifest template 'MANIFEST.in'
    warning: no files found matching 'doc/source/_static/*.css'
    warning: no files found matching 'doc/source/_templates/*.html'
    warning: no files found matching '*.cpp' under directory 'bpl-subset/bpl_subset/boost'
    warning: no files found matching '*.html' under directory 'bpl-subset/bpl_subset/boost'
    warning: no files found matching '*.inl' under directory 'bpl-subset/bpl_subset/boost'
    warning: no files found matching '*.txt' under directory 'bpl-subset/bpl_subset/boost'
    warning: no files found matching '*.h' under directory 'bpl-subset/bpl_subset/libs'
    warning: no files found matching '*.ipp' under directory 'bpl-subset/bpl_subset/libs'
    warning: no files found matching '*.pl' under directory 'bpl-subset/bpl_subset/libs'
    writing manifest file 'pycuda.egg-info/SOURCES.txt'
    creating build/lib.linux-aarch64-3.6/pycuda/cuda
    copying pycuda/cuda/pycuda-complex-impl.hpp -> build/lib.linux-aarch64-3.6/pycuda/cuda
    copying pycuda/cuda/pycuda-complex.hpp -> build/lib.linux-aarch64-3.6/pycuda/cuda
    copying pycuda/cuda/pycuda-helpers.hpp -> build/lib.linux-aarch64-3.6/pycuda/cuda
    copying pycuda/sparse/pkt_build_cython.pyx -> build/lib.linux-aarch64-3.6/pycuda/sparse
    running build_ext
    building '_driver' extension
    creating build/temp.linux-aarch64-3.6
    creating build/temp.linux-aarch64-3.6/src
    creating build/temp.linux-aarch64-3.6/src/cpp
    creating build/temp.linux-aarch64-3.6/src/wrapper
    creating build/temp.linux-aarch64-3.6/bpl-subset
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/object
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/converter
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/system
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/system/src
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/smart_ptr
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/smart_ptr/src
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/thread
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/thread/src
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/thread/src/pthread
    aarch64-linux-gnu-gcc -pthread -fwrapv -Wall -O3 -DNDEBUG -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -DBOOST_ALL_NO_LIB=1 -DBOOST_THREAD_BUILD_DLL=1 -DBOOST_MULTI_INDEX_DISABLE_SERIALIZATION=1 -DBOOST_PYTHON_SOURCE=1 -Dboost=pycudaboost -DBOOST_THREAD_DONT_USE_CHRONO=1 -DPYGPU_PACKAGE=pycuda -DPYGPU_PYCUDA=1 -DHAVE_CURAND=1 -Isrc/cpp -Ibpl-subset/bpl_subset -I/home/amin/.local/lib/python3.6/site-packages/numpy/core/include -I/usr/include/python3.6m -c src/cpp/cuda.cpp -o build/temp.linux-aarch64-3.6/src/cpp/cuda.o
    In file included from src/cpp/cuda.cpp:1:0:
    src/cpp/cuda.hpp:14:10: fatal error: cuda.h: No such file or directory
     #include <cuda.h>
              ^~~~~~~~
    compilation terminated.
    error: command 'aarch64-linux-gnu-gcc' failed with exit status 1

    ----------------------------------------
Command "/usr/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-rusim6bg/pycuda/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-92m75wyn-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-rusim6bg/pycuda/

I wonder if you could help me how I could resolve the problem.
Thanks

4 Likes

Hi am_merati,

Please refer to below thread if can help:
[url]https://devtalk.nvidia.com/default/topic/1013387/jetson-tx2/is-the-memory-management-method-of-tx1-and-tx2-different-/post/5352551/#5352551[/url]

Thanks

Hi,

Please run the command with –user option.

$ pip3 install pycuda --user

Thanks.

1 Like

Hi
I tried the installation via --user option on jetson nano:

$ pip3 install pycuda --user

However I got the error of not finding cuda.h.
It is interesting that I can build jetson inference which is definitely using cuda.h?!

Any help would be appreciated. Thanks
The following is the detail of error:

$ pip3 install pycuda --user
Collecting pycuda
  Using cached https://files.pythonhosted.org/packages/4d/29/5a3eb66c2f1a4adc681f6c8131e9ed677af31b0c8a78726d540bd44b3403/pycuda-2019.1.tar.gz
Collecting pytools>=2011.2 (from pycuda)
Collecting pytest>=2 (from pycuda)
  Using cached https://files.pythonhosted.org/packages/4c/35/e13740d90c413fb5ec3c9b5243f79981f7bc759f4a12a959d8dadd57f971/pytest-5.0.0-py3-none-any.whl
Collecting decorator>=3.2.0 (from pycuda)
  Using cached https://files.pythonhosted.org/packages/5f/88/0075e461560a1e750a0dcbf77f1d9de775028c37a19a346a6c565a257399/decorator-4.4.0-py2.py3-none-any.whl
Collecting appdirs>=1.4.0 (from pycuda)
  Using cached https://files.pythonhosted.org/packages/56/eb/810e700ed1349edde4cbdc1b2a21e28cdf115f9faf263f6bbf8447c1abf3/appdirs-1.4.3-py2.py3-none-any.whl
Collecting mako (from pycuda)
Collecting six>=1.8.0 (from pytools>=2011.2->pycuda)
  Using cached https://files.pythonhosted.org/packages/73/fb/00a976f728d0d1fecfe898238ce23f502a721c0ac0ecfedb80e0d88c64e9/six-1.12.0-py2.py3-none-any.whl
Collecting numpy>=1.6.0 (from pytools>=2011.2->pycuda)
Collecting importlib-metadata>=0.12 (from pytest>=2->pycuda)
  Using cached https://files.pythonhosted.org/packages/bd/23/dce4879ec58acf3959580bfe769926ed8198727250c5e395e6785c764a02/importlib_metadata-0.18-py2.py3-none-any.whl
Collecting py>=1.5.0 (from pytest>=2->pycuda)
  Using cached https://files.pythonhosted.org/packages/76/bc/394ad449851729244a97857ee14d7cba61ddb268dce3db538ba2f2ba1f0f/py-1.8.0-py2.py3-none-any.whl
Collecting more-itertools>=4.0.0 (from pytest>=2->pycuda)
  Using cached https://files.pythonhosted.org/packages/1f/9e/942df77ddde2fae3f319f2ab8b5d00d5f6b115496e2eb4bad37d1aaefeea/more_itertools-7.1.0-py3-none-any.whl
Collecting atomicwrites>=1.0 (from pytest>=2->pycuda)
  Using cached https://files.pythonhosted.org/packages/52/90/6155aa926f43f2b2a22b01be7241be3bfd1ceaf7d0b3267213e8127d41f4/atomicwrites-1.3.0-py2.py3-none-any.whl
Collecting pluggy<1.0,>=0.12 (from pytest>=2->pycuda)
  Using cached https://files.pythonhosted.org/packages/06/ee/de89e0582276e3551df3110088bf20844de2b0e7df2748406876cc78e021/pluggy-0.12.0-py2.py3-none-any.whl
Collecting attrs>=17.4.0 (from pytest>=2->pycuda)
  Using cached https://files.pythonhosted.org/packages/23/96/d828354fa2dbdf216eaa7b7de0db692f12c234f7ef888cc14980ef40d1d2/attrs-19.1.0-py2.py3-none-any.whl
Collecting packaging (from pytest>=2->pycuda)
  Using cached https://files.pythonhosted.org/packages/91/32/58bc30e646e55eab8b21abf89e353f59c0cc02c417e42929f4a9546e1b1d/packaging-19.0-py2.py3-none-any.whl
Collecting wcwidth (from pytest>=2->pycuda)
  Using cached https://files.pythonhosted.org/packages/7e/9f/526a6947247599b084ee5232e4f9190a38f398d7300d866af3ab571a5bfe/wcwidth-0.1.7-py2.py3-none-any.whl
Collecting MarkupSafe>=0.9.2 (from mako->pycuda)
Collecting zipp>=0.5 (from importlib-metadata>=0.12->pytest>=2->pycuda)
  Using cached https://files.pythonhosted.org/packages/a0/0f/9bf71d438d2e9d5fd0e4569ea4d1a2b6f5a524c234c6d221b494298bb4d1/zipp-0.5.1-py2.py3-none-any.whl
Collecting pyparsing>=2.0.2 (from packaging->pytest>=2->pycuda)
  Using cached https://files.pythonhosted.org/packages/dd/d9/3ec19e966301a6e25769976999bd7bbe552016f0d32b577dc9d63d2e0c49/pyparsing-2.4.0-py2.py3-none-any.whl
Building wheels for collected packages: pycuda
  Running setup.py bdist_wheel for pycuda ... error
  Complete output from command /usr/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-f5zewk4d/pycuda/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d /tmp/tmpdz5n1yocpip-wheel- --python-tag cp36:
  ***************************************************************
  *** WARNING: nvcc not in path.
  *** May need to set CUDA_INC_DIR for installation to succeed.
  ***************************************************************
  *************************************************************
  *** I have detected that you have not run configure.py.
  *************************************************************
  *** Additionally, no global config files were found.
  *** I will go ahead with the default configuration.
  *** In all likelihood, this will not work out.
  ***
  *** See README_SETUP.txt for more information.
  ***
  *** If the build does fail, just re-run configure.py with the
  *** correct arguments, and then retry. Good luck!
  *************************************************************
  *** HIT Ctrl-C NOW IF THIS IS NOT WHAT YOU WANT
  *************************************************************
  Continuing in 1 seconds...
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-aarch64-3.6
  creating build/lib.linux-aarch64-3.6/pycuda
  copying pycuda/debug.py -> build/lib.linux-aarch64-3.6/pycuda
  copying pycuda/elementwise.py -> build/lib.linux-aarch64-3.6/pycuda
  copying pycuda/characterize.py -> build/lib.linux-aarch64-3.6/pycuda
  copying pycuda/curandom.py -> build/lib.linux-aarch64-3.6/pycuda
  copying pycuda/driver.py -> build/lib.linux-aarch64-3.6/pycuda
  copying pycuda/reduction.py -> build/lib.linux-aarch64-3.6/pycuda
  copying pycuda/gpuarray.py -> build/lib.linux-aarch64-3.6/pycuda
  copying pycuda/autoinit.py -> build/lib.linux-aarch64-3.6/pycuda
  copying pycuda/_cluda.py -> build/lib.linux-aarch64-3.6/pycuda
  copying pycuda/scan.py -> build/lib.linux-aarch64-3.6/pycuda
  copying pycuda/tools.py -> build/lib.linux-aarch64-3.6/pycuda
  copying pycuda/_mymako.py -> build/lib.linux-aarch64-3.6/pycuda
  copying pycuda/__init__.py -> build/lib.linux-aarch64-3.6/pycuda
  copying pycuda/cumath.py -> build/lib.linux-aarch64-3.6/pycuda
  copying pycuda/compiler.py -> build/lib.linux-aarch64-3.6/pycuda
  creating build/lib.linux-aarch64-3.6/pycuda/gl
  copying pycuda/gl/autoinit.py -> build/lib.linux-aarch64-3.6/pycuda/gl
  copying pycuda/gl/__init__.py -> build/lib.linux-aarch64-3.6/pycuda/gl
  creating build/lib.linux-aarch64-3.6/pycuda/sparse
  copying pycuda/sparse/coordinate.py -> build/lib.linux-aarch64-3.6/pycuda/sparse
  copying pycuda/sparse/pkt_build.py -> build/lib.linux-aarch64-3.6/pycuda/sparse
  copying pycuda/sparse/cg.py -> build/lib.linux-aarch64-3.6/pycuda/sparse
  copying pycuda/sparse/inner.py -> build/lib.linux-aarch64-3.6/pycuda/sparse
  copying pycuda/sparse/packeted.py -> build/lib.linux-aarch64-3.6/pycuda/sparse
  copying pycuda/sparse/__init__.py -> build/lib.linux-aarch64-3.6/pycuda/sparse
  copying pycuda/sparse/operator.py -> build/lib.linux-aarch64-3.6/pycuda/sparse
  creating build/lib.linux-aarch64-3.6/pycuda/compyte
  copying pycuda/compyte/array.py -> build/lib.linux-aarch64-3.6/pycuda/compyte
  copying pycuda/compyte/dtypes.py -> build/lib.linux-aarch64-3.6/pycuda/compyte
  copying pycuda/compyte/__init__.py -> build/lib.linux-aarch64-3.6/pycuda/compyte
  running egg_info
  writing pycuda.egg-info/PKG-INFO
  writing dependency_links to pycuda.egg-info/dependency_links.txt
  writing requirements to pycuda.egg-info/requires.txt
  writing top-level names to pycuda.egg-info/top_level.txt
  reading manifest file 'pycuda.egg-info/SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  warning: no files found matching 'doc/source/_static/*.css'
  warning: no files found matching 'doc/source/_templates/*.html'
  warning: no files found matching '*.cpp' under directory 'bpl-subset/bpl_subset/boost'
  warning: no files found matching '*.html' under directory 'bpl-subset/bpl_subset/boost'
  warning: no files found matching '*.inl' under directory 'bpl-subset/bpl_subset/boost'
  warning: no files found matching '*.txt' under directory 'bpl-subset/bpl_subset/boost'
  warning: no files found matching '*.h' under directory 'bpl-subset/bpl_subset/libs'
  warning: no files found matching '*.ipp' under directory 'bpl-subset/bpl_subset/libs'
  warning: no files found matching '*.pl' under directory 'bpl-subset/bpl_subset/libs'
  writing manifest file 'pycuda.egg-info/SOURCES.txt'
  creating build/lib.linux-aarch64-3.6/pycuda/cuda
  copying pycuda/cuda/pycuda-complex-impl.hpp -> build/lib.linux-aarch64-3.6/pycuda/cuda
  copying pycuda/cuda/pycuda-complex.hpp -> build/lib.linux-aarch64-3.6/pycuda/cuda
  copying pycuda/cuda/pycuda-helpers.hpp -> build/lib.linux-aarch64-3.6/pycuda/cuda
  copying pycuda/sparse/pkt_build_cython.pyx -> build/lib.linux-aarch64-3.6/pycuda/sparse
  running build_ext
  building '_driver' extension
  creating build/temp.linux-aarch64-3.6
  creating build/temp.linux-aarch64-3.6/src
  creating build/temp.linux-aarch64-3.6/src/cpp
  creating build/temp.linux-aarch64-3.6/src/wrapper
  creating build/temp.linux-aarch64-3.6/bpl-subset
  creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset
  creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs
  creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python
  creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src
  creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/object
  creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/converter
  creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/system
  creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/system/src
  creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/smart_ptr
  creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/smart_ptr/src
  creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/thread
  creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/thread/src
  creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/thread/src/pthread
  aarch64-linux-gnu-gcc -pthread -fwrapv -Wall -O3 -DNDEBUG -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -DBOOST_ALL_NO_LIB=1 -DBOOST_THREAD_BUILD_DLL=1 -DBOOST_MULTI_INDEX_DISABLE_SERIALIZATION=1 -DBOOST_PYTHON_SOURCE=1 -Dboost=pycudaboost -DBOOST_THREAD_DONT_USE_CHRONO=1 -DPYGPU_PACKAGE=pycuda -DPYGPU_PYCUDA=1 -DHAVE_CURAND=1 -Isrc/cpp -Ibpl-subset/bpl_subset -I/home/amin/.local/lib/python3.6/site-packages/numpy/core/include -I/usr/include/python3.6m -c src/cpp/cuda.cpp -o build/temp.linux-aarch64-3.6/src/cpp/cuda.o
  In file included from src/cpp/cuda.cpp:1:0:
  src/cpp/cuda.hpp:14:10: fatal error: cuda.h: No such file or directory
   #include <cuda.h>
            ^~~~~~~~
  compilation terminated.
  error: command 'aarch64-linux-gnu-gcc' failed with exit status 1

  ----------------------------------------
  Failed building wheel for pycuda
  Running setup.py clean for pycuda
Failed to build pycuda
Installing collected packages: appdirs, six, decorator, numpy, pytools, zipp, importlib-metadata, py, more-itertools, atomicwrites, pluggy, attrs, pyparsing, packaging, wcwidth, pytest, MarkupSafe, mako, pycuda
  Running setup.py install for pycuda ... error
    Complete output from command /usr/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-f5zewk4d/pycuda/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-clztrio1-record/install-record.txt --single-version-externally-managed --compile --user --prefix=:
    ***************************************************************
    *** WARNING: nvcc not in path.
    *** May need to set CUDA_INC_DIR for installation to succeed.
    ***************************************************************
    *************************************************************
    *** I have detected that you have not run configure.py.
    *************************************************************
    *** Additionally, no global config files were found.
    *** I will go ahead with the default configuration.
    *** In all likelihood, this will not work out.
    ***
    *** See README_SETUP.txt for more information.
    ***
    *** If the build does fail, just re-run configure.py with the
    *** correct arguments, and then retry. Good luck!
    *************************************************************
    *** HIT Ctrl-C NOW IF THIS IS NOT WHAT YOU WANT
    *************************************************************
    Continuing in 1 seconds...
    running install
    running build
    running build_py
    creating build
    creating build/lib.linux-aarch64-3.6
    creating build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/debug.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/elementwise.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/characterize.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/curandom.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/driver.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/reduction.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/gpuarray.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/autoinit.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/_cluda.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/scan.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/tools.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/_mymako.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/__init__.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/cumath.py -> build/lib.linux-aarch64-3.6/pycuda
    copying pycuda/compiler.py -> build/lib.linux-aarch64-3.6/pycuda
    creating build/lib.linux-aarch64-3.6/pycuda/gl
    copying pycuda/gl/autoinit.py -> build/lib.linux-aarch64-3.6/pycuda/gl
    copying pycuda/gl/__init__.py -> build/lib.linux-aarch64-3.6/pycuda/gl
    creating build/lib.linux-aarch64-3.6/pycuda/sparse
    copying pycuda/sparse/coordinate.py -> build/lib.linux-aarch64-3.6/pycuda/sparse
    copying pycuda/sparse/pkt_build.py -> build/lib.linux-aarch64-3.6/pycuda/sparse
    copying pycuda/sparse/cg.py -> build/lib.linux-aarch64-3.6/pycuda/sparse
    copying pycuda/sparse/inner.py -> build/lib.linux-aarch64-3.6/pycuda/sparse
    copying pycuda/sparse/packeted.py -> build/lib.linux-aarch64-3.6/pycuda/sparse
    copying pycuda/sparse/__init__.py -> build/lib.linux-aarch64-3.6/pycuda/sparse
    copying pycuda/sparse/operator.py -> build/lib.linux-aarch64-3.6/pycuda/sparse
    creating build/lib.linux-aarch64-3.6/pycuda/compyte
    copying pycuda/compyte/array.py -> build/lib.linux-aarch64-3.6/pycuda/compyte
    copying pycuda/compyte/dtypes.py -> build/lib.linux-aarch64-3.6/pycuda/compyte
    copying pycuda/compyte/__init__.py -> build/lib.linux-aarch64-3.6/pycuda/compyte
    running egg_info
    writing pycuda.egg-info/PKG-INFO
    writing dependency_links to pycuda.egg-info/dependency_links.txt
    writing requirements to pycuda.egg-info/requires.txt
    writing top-level names to pycuda.egg-info/top_level.txt
    reading manifest file 'pycuda.egg-info/SOURCES.txt'
    reading manifest template 'MANIFEST.in'
    warning: no files found matching 'doc/source/_static/*.css'
    warning: no files found matching 'doc/source/_templates/*.html'
    warning: no files found matching '*.cpp' under directory 'bpl-subset/bpl_subset/boost'
    warning: no files found matching '*.html' under directory 'bpl-subset/bpl_subset/boost'
    warning: no files found matching '*.inl' under directory 'bpl-subset/bpl_subset/boost'
    warning: no files found matching '*.txt' under directory 'bpl-subset/bpl_subset/boost'
    warning: no files found matching '*.h' under directory 'bpl-subset/bpl_subset/libs'
    warning: no files found matching '*.ipp' under directory 'bpl-subset/bpl_subset/libs'
    warning: no files found matching '*.pl' under directory 'bpl-subset/bpl_subset/libs'
    writing manifest file 'pycuda.egg-info/SOURCES.txt'
    creating build/lib.linux-aarch64-3.6/pycuda/cuda
    copying pycuda/cuda/pycuda-complex-impl.hpp -> build/lib.linux-aarch64-3.6/pycuda/cuda
    copying pycuda/cuda/pycuda-complex.hpp -> build/lib.linux-aarch64-3.6/pycuda/cuda
    copying pycuda/cuda/pycuda-helpers.hpp -> build/lib.linux-aarch64-3.6/pycuda/cuda
    copying pycuda/sparse/pkt_build_cython.pyx -> build/lib.linux-aarch64-3.6/pycuda/sparse
    running build_ext
    building '_driver' extension
    creating build/temp.linux-aarch64-3.6
    creating build/temp.linux-aarch64-3.6/src
    creating build/temp.linux-aarch64-3.6/src/cpp
    creating build/temp.linux-aarch64-3.6/src/wrapper
    creating build/temp.linux-aarch64-3.6/bpl-subset
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/object
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/converter
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/system
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/system/src
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/smart_ptr
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/smart_ptr/src
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/thread
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/thread/src
    creating build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/thread/src/pthread
    aarch64-linux-gnu-gcc -pthread -fwrapv -Wall -O3 -DNDEBUG -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -DBOOST_ALL_NO_LIB=1 -DBOOST_THREAD_BUILD_DLL=1 -DBOOST_MULTI_INDEX_DISABLE_SERIALIZATION=1 -DBOOST_PYTHON_SOURCE=1 -Dboost=pycudaboost -DBOOST_THREAD_DONT_USE_CHRONO=1 -DPYGPU_PACKAGE=pycuda -DPYGPU_PYCUDA=1 -DHAVE_CURAND=1 -Isrc/cpp -Ibpl-subset/bpl_subset -I/home/amin/.local/lib/python3.6/site-packages/numpy/core/include -I/usr/include/python3.6m -c src/cpp/cuda.cpp -o build/temp.linux-aarch64-3.6/src/cpp/cuda.o
    In file included from src/cpp/cuda.cpp:1:0:
    src/cpp/cuda.hpp:14:10: fatal error: cuda.h: No such file or directory
     #include <cuda.h>
              ^~~~~~~~
    compilation terminated.
    error: command 'aarch64-linux-gnu-gcc' failed with exit status 1

    ----------------------------------------
Command "/usr/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-f5zewk4d/pycuda/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-clztrio1-record/install-record.txt --single-version-externally-managed --compile --user --prefix=" failed with error code 1 in /tmp/pip-build-f5zewk4d/pycuda/

i would like to see the answer to this question as well. :-)

executing this upfront the pip3-command improved the situation slightly:

export PATH=$PATH:/usr/local/cuda-10.1/bin

1 Like

the second half of the problem might manifest during the “make” in a missing “pyconfig.h” file.
this will (hopefully) resolve when the matching python3-dev and libpython3-dev are added. (sorry but i cant reproduce in maximum detail what else might be needed - i am just telling you that i tried out a little bit more upfront this follow up step
)

Hi, alexander.stohr

It looks like this issue is already fixed. Is it correct?

Are you using JetPack4.2?
Some of the package you mentioned is pre-installed in the JetPack4.2.
The command share in #3 should be enough for v4.2.

Please let us know if there is still some issues.
Thanks.

Hi

Thanks alexander.stohr for your suggestion.
I tried adding the PATH (export PATH=$PATH:/usr/local/cuda-10.1/bin) but it did not help.

I am not able to use JetPack4.2 as it has a known issue in the latest release notes regarding limiting the size of SDCard to only 16GB even if I am using 64GB SDcard. I can find the link for that and post it here.
I indeed once tried Jetpack4.2 and only 16GB on SDcard was used and the rest was unused and unallocated and I could add it to any parition due to limited number of primary partitions.

So I instead tried to add the include path for cuda into CPATH:

export CPATH=$CPATH:/usr/local/cuda-10.0/include

That helped in building but then it fails finding curand library:

In file included from /usr/include/c++/7/memory:80:0,
                     from bpl-subset/bpl_subset/boost/config/no_tr1/memory.hpp:21,
                     from bpl-subset/bpl_subset/boost/smart_ptr/shared_ptr.hpp:27,
                     from bpl-subset/bpl_subset/boost/shared_ptr.hpp:17,
                     from src/cpp/cuda.hpp:30,
                     from src/wrapper/wrap_curand.cpp:1:
    /usr/include/c++/7/bits/unique_ptr.h:51:28: note: declared here
       template<typename> class auto_ptr;
                                ^~~~~~~~
    In file included from src/wrapper/wrap_curand.cpp:1:0:
    src/cpp/cuda.hpp: In function ‘Py_ssize_t pycuda::mem_alloc_pitch(std::auto_ptr<pycuda::device_allocation>&, unsigned int, unsigned int, unsigned int)’:
    src/cpp/cuda.hpp:1574:15: warning: ‘template<class> class std::auto_ptr’ is deprecated [-Wdeprecated-declarations]
         da = std::auto_ptr<device_allocation>(new device_allocation(devptr));
                   ^~~~~~~~
    In file included from /usr/include/c++/7/memory:80:0,
                     from bpl-subset/bpl_subset/boost/config/no_tr1/memory.hpp:21,
                     from bpl-subset/bpl_subset/boost/smart_ptr/shared_ptr.hpp:27,
                     from bpl-subset/bpl_subset/boost/shared_ptr.hpp:17,
                     from src/cpp/cuda.hpp:30,
                     from src/wrapper/wrap_curand.cpp:1:
    /usr/include/c++/7/bits/unique_ptr.h:51:28: note: declared here
       template<typename> class auto_ptr;
                                ^~~~~~~~
    In file included from src/wrapper/wrap_curand.cpp:2:0:
    src/cpp/curand.hpp: In function ‘void pycuda::curandom::py_curand_get_direction_vectors(curandDirectionVectorSet_t, pycudaboost::python::api::object, int)’:
    src/cpp/curand.hpp:55:26: warning: unused variable ‘len’ [-Wunused-variable]
         PYCUDA_BUFFER_SIZE_T len = buf_wrapper.m_buf.len;
                              ^~~
    In file included from src/wrapper/wrap_curand.cpp:2:0:
    src/cpp/curand.hpp: In function ‘void pycuda::curandom::py_curand_get_scramble_constants32(pycudaboost::python::api::object, int)’:
    src/cpp/curand.hpp:96:26: warning: unused variable ‘len’ [-Wunused-variable]
         PYCUDA_BUFFER_SIZE_T len = buf_wrapper.m_buf.len;
                              ^~~
    src/cpp/curand.hpp: In function ‘void pycuda::curandom::py_curand_get_scramble_constants64(pycudaboost::python::api::object, int)’:
    src/cpp/curand.hpp:118:26: warning: unused variable ‘len’ [-Wunused-variable]
         PYCUDA_BUFFER_SIZE_T len = buf_wrapper.m_buf.len;
                              ^~~
    aarch64-linux-gnu-g++ -pthread -shared -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-3.6/src/cpp/cuda.o build/temp.linux-aarch64-3.6/src/cpp/bitlog.o build/temp.linux-aarch64-3.6/src/wrapper/wrap_cudadrv.o build/temp.linux-aarch64-3.6/src/wrapper/mempool.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/object/class.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/object/life_support.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/object/inheritance.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/object/enum.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/object/stl_iterator.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/object/iterator.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/object/function.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/object/function_doc_signature.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/object/pickle_support.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/converter/type_id.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/converter/from_python.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/converter/builtin_converters.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/converter/arg_to_python_base.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/converter/registry.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/list.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/object_operators.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/import.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/wrapper.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/str.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/long.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/errors.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/numeric.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/object_protocol.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/module.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/tuple.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/slice.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/exec.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/python/src/dict.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/system/src/error_code.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/smart_ptr/src/sp_collector.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/smart_ptr/src/sp_debug_hooks.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/thread/src/pthread/thread.o build/temp.linux-aarch64-3.6/bpl-subset/bpl_subset/libs/thread/src/pthread/once.o build/temp.linux-aarch64-3.6/src/wrapper/wrap_curand.o -lcuda -lcurand -o build/lib.linux-aarch64-3.6/pycuda/_driver.cpython-36m-aarch64-linux-gnu.so
    /usr/bin/ld: cannot find -lcurand
    collect2: error: ld returned 1 exit status
    error: command 'aarch64-linux-gnu-g++' failed with exit status 1

    ----------------------------------------
Command "/usr/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-a2zgr18l/pycuda/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-n6523yei-record/install-record.txt --single-version-externally-managed --compile --user --prefix=" failed with error code 1 in /tmp/pip-build-a2zgr18l/pycuda/

I tried to add the lib path to LI_LIBRARY_PATH:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-10.0/lib64

But it does not help. I do not know how to fix this now?
Please advise.

Thanks

Hello AastaLLL [nvidia],

Thanks for asking.

In my case the target was not that tightly related to a Jetson setup but only to a current CUDA centric setup with a very similar picture. Initially i had no clue, but the provided answers (even if still incomplete) paved me the way for solving it for me. In the hope my steps will help others i posted them. As of now i have no longer a problem (or at least not at a so early level anymore) and thus i feel like i can not contribute any other help than already done. (@ am_merati - Sorry to say that for the moment, no clue where its stuck for you.)

Regards, Alex.

@ am_merati

Looking at your latest report i can see this:
“cannot find -lcurand”

On my local Linux x86_64 installation the needed library for linking the native target is there (retrived this with the “locate” command):

/usr/local/cuda-10.1/targets/x86_64-linux/lib/libcurand.so
/usr/local/cuda-10.1/targets/x86_64-linux/lib/libcurand.so.10
/usr/local/cuda-10.1/targets/x86_64-linux/lib/libcurand.so.10.1.168

So your g++ command line should have a similar path added for the respective target. (I often prefer explicit manual path specs, especially in cases where already some problem exists - rather than tweaking build systems or some environment variables - as not everything is really in effect.)

Seeing your note on LD_LIBRARY_PATH - this one might be for the run time (=execution time, see maybe also “man ldconfig”), but not for link time.
At link time rather LD_FLAGS or LXX_FLAGS or whatever might do a much better job.
If you are cross compiling it might even be something more /fragile/ with a longer name. (Not firm on it out of my memory - please ask google based on this hints, its your friend. :-) )

Regards and have success,
Alex.

Hi

Thanks Alex.
Following your suggestion I used the path in targets path:

export CPATH=$CPATH:/usr/local/cuda-10.0/targets/aarch64-linux/include
export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda-10.0/targets/aarch64-linux/lib

and I managed to successfully install pycuda using

$ pip3 install pycuda --user
Collecting pycuda
  Using cached https://files.pythonhosted.org/packages/4d/29/5a3eb66c2f1a4adc681f6c8131e9ed677af31b0c8a78726d540bd44b3403/pycuda-2019.1.tar.gz
Collecting pytools>=2011.2 (from pycuda)
Collecting pytest>=2 (from pycuda)
  Using cached https://files.pythonhosted.org/packages/4c/35/e13740d90c413fb5ec3c9b5243f79981f7bc759f4a12a959d8dadd57f971/pytest-5.0.0-py3-none-any.whl
Collecting decorator>=3.2.0 (from pycuda)
  Using cached https://files.pythonhosted.org/packages/5f/88/0075e461560a1e750a0dcbf77f1d9de775028c37a19a346a6c565a257399/decorator-4.4.0-py2.py3-none-any.whl
Collecting appdirs>=1.4.0 (from pycuda)
  Using cached https://files.pythonhosted.org/packages/56/eb/810e700ed1349edde4cbdc1b2a21e28cdf115f9faf263f6bbf8447c1abf3/appdirs-1.4.3-py2.py3-none-any.whl
Collecting mako (from pycuda)
Collecting numpy>=1.6.0 (from pytools>=2011.2->pycuda)
Collecting six>=1.8.0 (from pytools>=2011.2->pycuda)
  Using cached https://files.pythonhosted.org/packages/73/fb/00a976f728d0d1fecfe898238ce23f502a721c0ac0ecfedb80e0d88c64e9/six-1.12.0-py2.py3-none-any.whl
Collecting wcwidth (from pytest>=2->pycuda)
  Using cached https://files.pythonhosted.org/packages/7e/9f/526a6947247599b084ee5232e4f9190a38f398d7300d866af3ab571a5bfe/wcwidth-0.1.7-py2.py3-none-any.whl
Collecting attrs>=17.4.0 (from pytest>=2->pycuda)
  Using cached https://files.pythonhosted.org/packages/23/96/d828354fa2dbdf216eaa7b7de0db692f12c234f7ef888cc14980ef40d1d2/attrs-19.1.0-py2.py3-none-any.whl
Collecting pluggy<1.0,>=0.12 (from pytest>=2->pycuda)
  Using cached https://files.pythonhosted.org/packages/06/ee/de89e0582276e3551df3110088bf20844de2b0e7df2748406876cc78e021/pluggy-0.12.0-py2.py3-none-any.whl
Collecting atomicwrites>=1.0 (from pytest>=2->pycuda)
  Using cached https://files.pythonhosted.org/packages/52/90/6155aa926f43f2b2a22b01be7241be3bfd1ceaf7d0b3267213e8127d41f4/atomicwrites-1.3.0-py2.py3-none-any.whl
Collecting importlib-metadata>=0.12 (from pytest>=2->pycuda)
  Using cached https://files.pythonhosted.org/packages/bd/23/dce4879ec58acf3959580bfe769926ed8198727250c5e395e6785c764a02/importlib_metadata-0.18-py2.py3-none-any.whl
Collecting more-itertools>=4.0.0 (from pytest>=2->pycuda)
  Using cached https://files.pythonhosted.org/packages/1f/9e/942df77ddde2fae3f319f2ab8b5d00d5f6b115496e2eb4bad37d1aaefeea/more_itertools-7.1.0-py3-none-any.whl
Collecting packaging (from pytest>=2->pycuda)
  Using cached https://files.pythonhosted.org/packages/91/32/58bc30e646e55eab8b21abf89e353f59c0cc02c417e42929f4a9546e1b1d/packaging-19.0-py2.py3-none-any.whl
Collecting py>=1.5.0 (from pytest>=2->pycuda)
  Using cached https://files.pythonhosted.org/packages/76/bc/394ad449851729244a97857ee14d7cba61ddb268dce3db538ba2f2ba1f0f/py-1.8.0-py2.py3-none-any.whl
Collecting MarkupSafe>=0.9.2 (from mako->pycuda)
Collecting zipp>=0.5 (from importlib-metadata>=0.12->pytest>=2->pycuda)
  Using cached https://files.pythonhosted.org/packages/a0/0f/9bf71d438d2e9d5fd0e4569ea4d1a2b6f5a524c234c6d221b494298bb4d1/zipp-0.5.1-py2.py3-none-any.whl
Collecting pyparsing>=2.0.2 (from packaging->pytest>=2->pycuda)
  Using cached https://files.pythonhosted.org/packages/dd/d9/3ec19e966301a6e25769976999bd7bbe552016f0d32b577dc9d63d2e0c49/pyparsing-2.4.0-py2.py3-none-any.whl
Building wheels for collected packages: pycuda
  Running setup.py bdist_wheel for pycuda ... done
  Stored in directory: /home/amin/.cache/pip/wheels/de/c2/d5/351a6b47b20d417e82a669cf53f8cb4d7b55a57f73cbd05184
Successfully built pycuda
Installing collected packages: numpy, appdirs, decorator, six, pytools, wcwidth, attrs, zipp, importlib-metadata, pluggy, atomicwrites, more-itertools, pyparsing, packaging, py, pytest, MarkupSafe, mako, pycuda
Successfully installed MarkupSafe-1.1.1 appdirs-1.4.3 atomicwrites-1.3.0 attrs-19.1.0 decorator-4.4.0 importlib-metadata-0.18 mako-1.0.12 more-itertools-7.1.0 numpy-1.16.4 packaging-19.0 pluggy-0.12.0 py-1.8.0 pycuda-2019.1 pyparsing-2.4.0 pytest-5.0.0 pytools-2019.1.1 six-1.12.0 wcwidth-0.1.7 zipp-0.5.1

:

7 Likes

Many thanks for the informations.

I will try to install pycuda on my Nano.

Alain

Hello,

i have succed to install pycuda on my Jetson Nano but i have a problem :

When i try to run a pycuda example, i get this issue :

pytools.prefork.ExecError: error invoking ‘nvcc --version’: [Errno 2] No such file or directory: ‘nvcc’: ‘nvcc’

I tried to add this to the python program :

import sys
sys.path.insert(0, “/usr/local/cuda/bin/”)

Unfortunately, it does not solve my problem. I think it was a stupid idea.

Any good idea ?

Alain

Hello,

finally, i have solved my problem.

PyCuda examples work on my Nano.

I tested Mandelbrot example :

GPU 1.35s
Numpy : 10.8s

It works.

Alain

1 Like

congratulations.
i feel the topic can be closed now.

I use the following script to install “pycuda” on Jetson Nano. It builds “pycuda” from source and does “sudo pip3 install”. Feel free to give it a try.

[url]https://github.com/jkjung-avt/tensorrt_demos/blob/master/ssd/install.sh[/url]

Both the Accepted Answer as well as the script in #12 is not working for me.
NVCC is missing!

How to install NVCC on my Jetson Nano?

It seems I can get NVCC via ‘nvidia-cuda-toolkit’ - which I also cannot install. (Package ‘nvidia-cuda-toolkit’ has no installation candidate)

I saw it seems possible to get the the nvidia-cuda-toolkit via SDK-Manager.
But again SDK-manager is only available for ‘amd64’ platform, and the Jetson is ARM64/AARCH64.
Do I need another Ubuntu Machine?

‘nvcc’ should be present at ‘/usr/local/cuda/bin’ on your Jetson Nano already. Just add it to your PATH.

# add the following to your ${HOME}/.bashrc
export PATH=/usr/local/cuda/bin:\${PATH}
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:\${LD_LIBRARY_PATH}

Reference: https://github.com/jkjung-avt/jetson_nano/blob/master/install_basics.sh

3 Likes

Thanks for your help!

nvcc is available in /usr/local/cuda/bin,

I was able to install pycuda using your scrips