Troubleshooting Installation Issues
This guide addresses common issues encountered when setting up Qualcomm development environments for vision applications.
SDK Installation Problems
Issue: Failed to install Neural Processing SDK
Symptoms:
- Error messages during
setup.sh
execution - Missing components after installation
- Permission errors
Solutions:
-
Check system requirements:
# Verify Python version (requires 3.6+)
python3 --version
# Check for required libraries
pip3 list | grep -E 'numpy|tensorflow' -
Fix permission issues:
sudo chmod +x setup.sh
sudo ./setup.sh -
Install missing dependencies:
sudo apt update
sudo apt install -y build-essential cmake python3-dev python3-pip
pip3 install -r requirements.txt
Issue: Cannot find SNPE tools in PATH
Symptoms:
- "Command not found" errors when running SNPE tools
- SDK appears to be installed but tools are inaccessible
Solution:
# Add to your ~/.bashrc file
echo 'export SNPE_ROOT=/path/to/snpe/installation' >> ~/.bashrc
echo 'export PATH=$PATH:$SNPE_ROOT/bin/x86_64-linux-clang' >> ~/.bashrc
source ~/.bashrc
Driver and Dependency Issues
Issue: FastCV library not found
Symptoms:
error: fastcv.h: No such file or directory
- Linker errors with missing FastCV functions
Solution:
# Install FastCV dependencies
sudo apt install -y libprotobuf-dev protobuf-compiler
# Set environment variables
echo 'export FASTCV_DIR=/opt/qualcomm/fastcv' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$FASTCV_DIR/lib' >> ~/.bashrc
source ~/.bashrc
# Verify installation
ls $FASTCV_DIR/include/fastcv
Issue: DSP drivers not loading properly
Symptoms:
- Applications fail with "Failed to initialize DSP"
- Cannot offload computation to Hexagon DSP
Solution:
# Check DSP subsystem status
adb shell cat /sys/kernel/debug/msm_subsys/adsp
# If subsystem is not available, ensure proper drivers:
adb remount
adb push vendor/lib64/libadsprpc.so /vendor/lib64/
adb push vendor/lib/libadsprpc.so /vendor/lib/
adb reboot
# After reboot, verify subsystem is available
adb shell cat /sys/kernel/debug/msm_subsys/adsp
Tool Configuration Issues
Issue: Model conversion fails
Symptoms:
- Errors during ONNX to DLC conversion
- Unsupported layer or operation messages
Solution:
# Check for supported operations
snpe-onnx-to-dlc --input_network model.onnx --output_path model.dlc --debug
# For unsupported layers, try conversion with CPU fallback
snpe-onnx-to-dlc --input_network model.onnx --output_path model.dlc --allow_unconsumed_nodes
Issue: Device not detected by Snapdragon Profiler
Symptoms:
- No devices shown in Snapdragon Profiler
- Cannot connect to target device for profiling
Solution:
# Check if device is visible via ADB
adb devices
# If visible but not in Profiler, restart ADB server
adb kill-server
adb start-server
# Enable USB debugging on device
# Settings > System > Developer Options > USB debugging
# For secure devices, verify RSA fingerprint on device screen
adb devices
# Install required packages on device
adb install -r SnapdragonProfilerApp.apk
Cross-Compilation Issues
Issue: Cross-compilation errors for target platform
Symptoms:
- Build errors when compiling for ARM architecture
- Library incompatibilities
Solution:
# Install cross-compilation toolchain
sudo apt install -y gcc-aarch64-linux-gnu g++-aarch64-linux-gnu
# Use CMake with proper toolchain file
cmake -DCMAKE_TOOLCHAIN_FILE=../toolchain-aarch64.cmake ..
# Example toolchain file content:
# SET(CMAKE_SYSTEM_NAME Linux)
# SET(CMAKE_SYSTEM_PROCESSOR aarch64)
# SET(CMAKE_C_COMPILER aarch64-linux-gnu-gcc)
# SET(CMAKE_CXX_COMPILER aarch64-linux-gnu-g++)
Environment Setup Issues
Issue: OpenCV not properly configured with SNPE
Symptoms:
- Build errors related to OpenCV when using with SNPE
- Incompatible versions
Solution:
# Build OpenCV with compatible settings
git clone https://github.com/opencv/opencv.git
cd opencv
mkdir build && cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D WITH_TBB=ON \
-D WITH_V4L=ON \
..
make -j$(nproc)
sudo make install
# Update environment variables
echo 'export OpenCV_DIR=/usr/local/share/opencv4' >> ~/.bashrc
source ~/.bashrc