Hello,
I am running a Jetson Nano and installed VPI 1.0 through the SDK Manager, which seemed to go fine. However, when I try to build any code that uses VPI I get a linker error.
For example, when I try to build one of the samples:
~/NVIDIA_VPI-1.0-samples/01-convolve_2d$ cmake .
-- Configuring done
-- Generating done
-- Build files have been written to: /home/jn/NVIDIA_VPI-1.0-samples/01-convolve_2d
jn@jn-desktop:~/NVIDIA_VPI-1.0-samples/01-convolve_2d$ make
[ 50%] Linking CXX executable vpi_sample_01_convolve_2d
/opt/nvidia/vpi1/lib64/libnvvpi.so.1.0.15: undefined reference to `NvMediaVPIDescriptorRegister'
/opt/nvidia/vpi1/lib64/libnvvpi.so.1.0.15: undefined reference to `NvMediaVPIDescriptorUnregister'
collect2: error: ld returned 1 exit status
CMakeFiles/vpi_sample_01_convolve_2d.dir/build.make:99: recipe for target 'vpi_sample_01_convolve_2d' failed
make[2]: *** [vpi_sample_01_convolve_2d] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/vpi_sample_01_convolve_2d.dir/all' failed
make[1]: *** [CMakeFiles/vpi_sample_01_convolve_2d.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2
I am not really sure where to go from here. I don’t know if it’s relevant but I also get an error when I try to run the pre-compiled binary /opt/nvidia/vpi1/bin/vpi_demo_remap:
OFParserListModules: module list: /proc/device-tree/tegra-camera-platform/modules/module0
OFParserListModules: module list: /proc/device-tree/tegra-camera-platform/modules/module1
OFParserGetVirtualDevice: NVIDIA Camera virtual enumerator not found in proc device-tree
---- imager: No override file found. ----
(NvCamV4l2) Error ModuleNotPresent: V4L2Device not available (in /dvs/git/dirty/git-master_linux/camera/utils/nvcamv4l2/v4l2_device.cpp, function findDevice(), line 256)
(NvCamV4l2) Error ModuleNotPresent: (propagating from /dvs/git/dirty/git-master_linux/camera/utils/nvcamv4l2/v4l2_device.cpp, function initialize(), line 60)
(NvOdmDevice) Error ModuleNotPresent: (propagating from dvs/git/dirty/git-master_linux/camera-partner/imager/src/devices/V4L2SensorViCsi.cpp, function initialize(), line 106)
NvPclDriverInitializeData: Unable to initialize driver v4l2_sensor
NvPclInitializeDrivers: error: Failed to init camera sub module v4l2_sensor
NvPclStartPlatformDrivers: Failed to start module drivers
NvPclStateControllerOpen: Failed ImagerGUID 1. (error 0xA000E)
NvPclOpen: PCL Open Failed. Error: 0xf
SCF: Error BadParameter: Sensor could not be opened. (in src/services/capture/CaptureServiceDeviceSensor.cpp, function getSourceFromGuid(), line 582)
SCF: Error BadParameter: (propagating from src/services/capture/CaptureService.cpp, function addSourceByGuid(), line 437)
SCF: Error BadParameter: (propagating from src/api/CameraDriver.cpp, function addSourceByIndex(), line 295)
SCF: Error BadParameter: (propagating from src/api/CameraDriver.cpp, function getSource(), line 458)
Acquiring SCF Camera device source via index 0 has failed. ---- imager: No override file found. ----
LSC: LSC surface is not based on full res!
NVMEDIA_ARRAY: 53, Version 2.1
NVMEDIA_VPI : 156, Version 2.3
ERROR: vpiImageCreateCUDAMemWrapper: VPI_ERROR_INTERNAL
Unsupported NvMedia VPI API version 2.3, expected version 2.4
ERROR: vpiImageCreateCUDAMemWrapper: VPI_ERROR_INTERNAL
Unsupported NvMedia VPI API version 2.3, expected version 2.4
I hope you can help me with this.