MATLAB Answers

nvcc: command not found

조회 수: 50(최근 30일)
Song Decn
Song Decn 14 Apr 2018
댓글: Hannah Nithilla 16 Oct 2019
I try to compile the GPUCoder example within 2018a in ubuntu 16.04. But the compilation failed within matlab with following output:
>> codegen -config cfg -args {ones(227,227,3,'single'), coder.Constant('alexnet.mat')} alexnet_predict.m
nvcc -ccbin /bin/aarch64-linux-gnu-g++ -rdc=true -Xcompiler -fPIC -I/include -Xcudafe "--diag_suppress=unsigned_compare_with_zero" -c -Xcompiler -MMD,-MP -O2 -arch sm_35 -DMODEL=alexnet_predict -DHAVESTDIO -DUSE_RTMODEL -DUNIX -I/home/ibmfuchs/gpucoderdemo_jetson_tx22/codegen/lib/alexnet_predict -I/home/ibmfuchs/gpucoderdemo_jetson_tx22 -I/home/ibmfuchs/Programs/Matlab/2018a/extern/include -I/home/ibmfuchs/Programs/Matlab/2018a/simulink/include -I/home/ibmfuchs/Programs/Matlab/2018a/rtw/c/src -I/home/ibmfuchs/Programs/Matlab/2018a/rtw/c/src/ext_mode/common -I/home/ibmfuchs/Programs/Matlab/2018a/rtw/c/ert -Iinclude -o cnn_api.o cnn_api.cpp
/bin/sh: 1: nvcc: not found
gmake: *** [cnn_api.o] Error 127
Error(s) encountered while building "alexnet_predict":
### Failed to generate all binary outputs.
??? Build error: C++ compiler produced errors. See the Build Log for further details.
Code generation failed: View Error Report
Error using codegen
calling nvcc from workspace I got:
>> system('nvcc')
/bin/bash: nvcc: command not found
ans =
But in terminal I have no problem to call nvcc:
ibmfuchs@SUbuntu:/$ nvcc
nvcc fatal : No input files specified; use option --help for more information
Can anyone please help? Thanks

  댓글 수: 0

댓글을 달려면 로그인하십시오.


Walter Roberson
Walter Roberson 14 Apr 2018
nvcc is not on your PATH environment variable when you are in MATLAB. When you start MATLAB by way of icon, it does not go through login and so your shell configuration files are not executed to do any customization of environment variables for you.
You should use setenv() within MATLAB to add the directory that nvcc is in to PATH, or else you should alter your system PATH environment variable to include the proper directory, or else you should put a symbolic link from one of the directories that is on the system default PATH to the actual location of nvcc
p = getenv('PATH');
setenv('PATH', [p ':/usr/local/bin'])

  댓글 수: 11

표시 이전 댓글 수: 8
Song Decn
Song Decn 15 Apr 2018
i tried all the commands from your referenced site but i cant figure out. also the on board camera is working fine. :(
Walter Roberson
Walter Roberson 15 Apr 2018
Hannah Nithilla
Hannah Nithilla 16 Oct 2019
how exactly did you use this solution in your code?
p = getenv('PATH');
setenv('PATH', [p ':/usr/local/bin'])
because i still get nvcc not found.

댓글을 달려면 로그인하십시오.


Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by