207 похожих чатов

Привет, кто-нибудь настраивал кросс-компиляцию на nvidia-jetson? Я хочу скомпилить свой плагин

на gstreamer с использованием nvivafilter.
В оф. гайде по установке все очень размыто, пришел к этому репозиторию, установил, настроил, наивный пример со сложением двух векторов работает, при сборке примера с плагином - ошибки в рантайме. Этот же проект, собранный на самом джетсоне работает без нареканий.

Вот мой CMakeLists.txt
cmake_minimum_required (VERSION 3.16)

set(CMAKE_TOOLCHAIN_FILE /opt/devkit_toolchain.cmake)
set(CMAKE_VERBOSE_MAKEFILE ON)

project(nvsample_cudaprocess VERSION 0.1 LANGUAGES CXX CUDA)

find_package(PkgConfig REQUIRED)

pkg_check_modules(PKG REQUIRED IMPORTED_TARGET egl glesv2 cudart-10.2 cuda-10.2)

add_library(${PROJECT_NAME} SHARED
nvsample_cudaprocess.cu
)

include(${CMAKE_SCRIPTS_ALL})

message(STATUS "PKG_INCLUDE_DIRS: ${PKG_INCLUDE_DIRS}")

target_include_directories(${PROJECT_NAME} PUBLIC
${PKG_INCLUDE_DIRS}
${CMAKE_SYSROOT}/usr/include
${CMAKE_SYSROOT}/usr/include/aarch64-linux-gnu/
.
)

target_link_libraries(${PROJECT_NAME}
PkgConfig::PKG
)

и тулчейн файл

set(CMAKE_SYSTEM_NAME Linux)
set(CMAKE_SYSTEM_VERSION 1)
set(CMAKE_SYSTEM_PROCESSOR aarch64)
set(CMAKE_SYSROOT /nfsroot_devkit)

set(CMAKE_FIND_ROOT_PATH ${CMAKE_SYSROOT})
set(ONLY_CMAKE_FIND_ROOT_PATH TRUE)

set(ENV{PKG_CONFIG_SYSROOT_DIR} ${CMAKE_SYSROOT})
set(ENV{PKG_CONFIG_LIBDIR} "${CMAKE_SYSROOT}/usr/lib/pkgconfig:${CMAKE_SYSROOT}/usr/share/pkgconfig:${CMAKE_SYSROOT}/usr/lib/aarch64-linux-gnu/pkgconfig:${CMAKE_SYSROOT}/usr/local/lib/pkgconfig")

set(tools /opt/jetson_toolchain/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu)

set(CMAKE_C_COMPILER ${tools}/bin/aarch64-linux-gnu-gcc)
set(CMAKE_CXX_COMPILER ${tools}/bin/aarch64-linux-gnu-g++)

set(CMAKE_CUDA_HOST_COMPILER ${CMAKE_CXX_COMPILER})
set(CMAKE_CUDA_COMPILER /usr/local/cuda-10.2/bin/nvcc)

set(CMAKE_SCRIPTS_PATH /opt/CMakeScripts)
set(CMAKE_SCRIPTS_ALL ${CMAKE_SCRIPTS_PATH}/CMakeScripts.cmake)

set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)

2 ответов

3 просмотра

Как минимум, вы не должны задавать CMAKE_TOOLCHAIN_FILE изнутри, это нужно делать снаружи при вызове cmake для конфигурации: cmake -S source/dir/ -B build/dir/ -DCMAKE_TOOLCHAIN_FILE=/opt/devkit_toolchain.cmake # other options ...

Ofee Oficsu
Как минимум, вы не должны задавать CMAKE_TOOLCHAIN...

Иногда его вообще лучше задавать как env. По крайней мере, если есть external-project, они так его тоже увидят и используют. А в виде параметра cmake он до них не дойдёт.

Похожие вопросы

Обсуждают сегодня

@Aiwan что такое база образца?
Alexey
27
Не многие знают, а кто знает, тот уже успел забыть, что в далёком 2004 году эта игра произвела настоящий фурор, настолько революционной была технология, применяемая для её соз...
ICCID
4
Короче я тут узнал полный пиздец Что кучу постов которые я создавал через posted Спустя время не могу редактировать и менять Мол телега возвращае ошибку Это реально так ...
inc.
13
коллеги, добрый вечер! А никто не знает как модальная форма может себя закрыть? Ну допустим модальная форма определила, что смысла ей работать нет и хочет вернуть modalResult...
Михаил
83
Хотя у меня сейчас есть более сложная задача, вот её думаю: как объяснить челу переходного возраста противоположного полу, обучающегося в польском колледже (а-ля наш техникум)...
Вячеслав Кузьменко
15
Добрый день Хочу начать обучение языку, не являюсь представителем it, буду благодарна за помощь, совсем пока не понимаю ничего) Подскажите, пожалуйста, где можно начать первы...
Sara Lala
30
что читать по делфи?вообще 0 в нем
fd dsds
9
const dirname = new URL((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.src || new UR...
Kirill Shaplyko
4
how would you do any of that offline?
Thomas
7
Привет, сталкивался кто с такой ситуацией? У меня есть модальное окно Bootstrap, в нем кнопка закрытия: <button type="button" class="btn-close" data-bs-dismiss="modal" aria-...
Виталий
3
Карта сайта