Как я могу заставить команду matlab mexcuda найти g cc версии 8 в ubuntu 20.04? - PullRequest
0 голосов
/ 10 июля 2020

Я пытаюсь использовать MATLAB CUDA для компиляции некоторого кода на GPU. Когда я запускаю команду

mexcuda -largeArrayDims mexThSpkPC.cu

, я получаю следующую ошибку:

>> mexcuda -largeArrayDims mexThSpkPC.cu
Building with 'nvcc'.
Error using mex
In file included from /usr/include/cuda_runtime.h:83,
                 from <command-line>:
/usr/include/crt/host_config.h:138:2: error: #error -- unsupported GNU version! gcc versions later than
8 are not supported!
  138 | #error -- unsupported GNU version! gcc versions later than 8 are not supported!
      |  ^~~~~


Error in mexcuda (line 166)
    [varargout{1:nargout}] = mex(mexArguments{:});

Что странно, так это то, что я установил nvidia-cuda-toolkit из apt, и он втягивает gcc версия 8, а также g++. Итак, они есть в моей системе. Как мне заставить MATLAB (или компилятор nvida CUDA) найти правильную версию gcc / g++? Я использую Ubuntu 20.04.

1 Ответ

1 голос
/ 10 июля 2020

Покопавшись, я обнаружил, что код MATLAB ищет переменную среды CUDA_PATH. Итак, запуск Matlab как:

CUDA_PATH=/usr/lib/nvidia-cuda-toolkit  matlab

решает проблему для меня!

...