我想從八度音程中創建一個mex文件,但我正在使用包含在路徑中的空間掙扎。我試過以下命令:從Octave CLI構建mex文件
mex 'tsne_p.o' 'nvmatrix.o' 'nvmatrix_kernel.o' -L"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64" -lcuda -lcudart -lcufft -lcublas -I. -Wl,-rpath,"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64"
不幸的是,路徑被分成多個部分。 這裏是日誌:
g++: error: Files/NVIDIA: No such file or directory
g++: error: GPU: No such file or directory
g++: error: Computing: No such file or directory
g++: error: Toolkit/CUDA/v8.0/lib/x64: No such file or directory
g++: error: unrecognized command line option '-Wl'
warning: mkoctfile exited with failure status
warning: called from
mkoctfile at line 171 column 5
mex at line 29 column 18
error: 'rpath' undefined near line 1 column 169
我試圖取代「通過」,但它並沒有改變任何東西
我終於嘗試直接mex.m名爲.exe文件(使用Windows命令來調用。線)。我試着用單引號,雙反斜線等...但仍然得到同樣的錯誤。
"C:\Octave\Octave-4.0.0\bin\mkoctfile-4.0.0.exe" "--mex" "tsne_p.o" "nvmatrix.o" "nvmatrix_kernel.o" -L"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64" -lcuda -lcudart -lcufft -lcublas -I. -Wl,-rpath,"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64"
g++: error: Files\NVIDIA: No such file or directory
g++: error: GPU: No such file or directory
g++: error: Computing: No such file or directory
g++: error: Toolkit\CUDA\v8.0\lib\x64: No such file or directory
g++: error: Files\NVIDIA: No such file or directory
g++: error: GPU: No such file or directory
g++: error: Computing: No such file or directory
g++: error: Toolkit\CUDA\v8.0\lib\x64: No such file or directory
我不知道這是如何工作的八度,但在MATLAB,你可以設置默認路徑,CUDA(和其他東西)在一個'xml'文件中。這可能會解決你的問題。此外,您是否嘗試過使用'''而不是雙'''' –
嘗試:''-LC:\ Program Files \ NVIDIA GPU計算工具包\ CUDA \ v8.0 \ lib \ x64'',取自[Matlab Mex幫助](https://se.mathworks.com/help/matlab/ref/mex.html) –
是的,我試過'-LC:\ Program Files \ NVIDIA GPU計算工具包\ CUDA \ v8.0 \ lib \ x64 '和單一'而不是雙重「,但它仍然沒有正確地通過路徑。我將使用carandraug的答案進行調查。 –