Я закончил настройку моей платы jetson tk1 eval и начал настраивать Nsight Eclipse для удаленного запуска моих программ на плате Jetson.

Я создал проект CUDA C в Eclipse, завершил настройку и подключил свою плату к моему eclipse.

Когда я создаю образец файла CUDA локально в eclipse, он работает нормально, но когда я пытаюсь запустить его на удаленной плате, я получаю следующий результат:

echo $PWD'>'
/bin/sh -c "cd \"/home/ubuntu\";export LD_LIBRARY_PATH=\"/usr/local/cuda-     
6.0/lib\":\${LD_LIBRARY_PATH};\"/home/ubuntu/test\"";exit
ubuntu@tegra-ubuntu:~$ echo $PWD'>'
/home/ubuntu>
ubuntu@tegra-ubuntu:~$ /bin/sh -c "cd \"/home/ubuntu\";export   
LD_LIBRARY_PATH=\" /usr/local/cuda- 
6.0/lib\":\${LD_LIBRARY_PATH};\"/home/ubuntu/test\"";exit
/home/ubuntu/test: 1: /home/ubuntu/test: Syntax error: ")" unexpected
logout

Судя по последней строке вывода, похоже, что это ошибка формата исполняемого файла. Кто нибудь сталкивался с чем-то подобным? У меня заканчиваются идеи.

0
ElCapitaine 16 Окт 2015 в 16:43

2 ответа

Лучший ответ

Мне удалось найти ответ. Версия Eclipse, которая у меня была, не смогла правильно скомпилировать мой файл cuda в формат ARMv7. Поэтому я всегда загружал исполняемый файл в формате x64_86.

Мое решение заключалось в том, чтобы создать сценарий bash, который передает файл cuda и компилирует его прямо на плате, когда я запускаю последовательность запуска из eclipse.

В конце концов, потребовалось немного программирования, чтобы заставить все работать, но теперь он компилируется и правильно выполняется на удаленной плате.

1
ElCapitaine 19 Окт 2015 в 15:15

Здравствуйте, встречаюсь с такой же проблемой. Я решаю эту проблему, удаляя всю рабочую область и создавая новую. Вы можете попробовать.

1
叶秀峰 26 Май 2016 в 03:52