2026-07-15 14:42:02 +08:00

58 lines
2.2 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/bin/bash
# ============================================================
# MVS 相机 SDK 运行环境配置脚本
# 用途:配置 LD_LIBRARY_PATH 和 USB 内存大小
# 使用source ./setup_mvs_env.sh
# ============================================================
# 获取脚本所在目录
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_ROOT="$(cd "${SCRIPT_DIR}/../../.." && pwd)"
# MVS SDK 路径
MVS_SDK_PATH="${PROJECT_ROOT}/Device/SDK/MVS/MVS_STD_V3.0.1_251113/MVS-3.0.1_aarch64_20251113"
if [ ! -d "${MVS_SDK_PATH}" ]; then
echo "错误MVS SDK 路径不存在: ${MVS_SDK_PATH}"
return 1
fi
# 设置环境变量
export MVCAM_SDK_PATH="${MVS_SDK_PATH}"
export MVCAM_COMMON_RUNENV="${MVS_SDK_PATH}/lib"
export MVCAM_GENICAM_CLPROTOCOL="${MVS_SDK_PATH}/lib/CLProtocol"
# 添加库路径到 LD_LIBRARY_PATH
if [ -z "${LD_LIBRARY_PATH}" ]; then
export LD_LIBRARY_PATH="${MVS_SDK_PATH}/lib/aarch64:${MVS_SDK_PATH}/lib/aarch64/ThirdParty"
else
# 移除旧的 MVS 路径(如果存在)
LD_LIBRARY_PATH=$(echo "${LD_LIBRARY_PATH}" | sed "s|${MVS_SDK_PATH}/lib/aarch64:||g")
LD_LIBRARY_PATH=$(echo "${LD_LIBRARY_PATH}" | sed "s|${MVS_SDK_PATH}/lib/aarch64/ThirdParty:||g")
# 添加新路径到开头
export LD_LIBRARY_PATH="${MVS_SDK_PATH}/lib/aarch64:${MVS_SDK_PATH}/lib/aarch64/ThirdParty:${LD_LIBRARY_PATH}"
fi
echo "=========================================="
echo "MVS SDK 环境配置完成"
echo "=========================================="
echo "MVCAM_SDK_PATH=${MVCAM_SDK_PATH}"
echo "LD_LIBRARY_PATH=${LD_LIBRARY_PATH}"
echo ""
# 配置 USB 内存大小(需要 root 权限)
if [ $(id -u) -eq 0 ]; then
echo "配置 USB 内存大小为 2000 MB..."
echo 2000 > /sys/module/usbcore/parameters/usbfs_memory_mb
CURRENT_SIZE=$(cat /sys/module/usbcore/parameters/usbfs_memory_mb 2>/dev/null)
echo "当前 USB 内存大小: ${CURRENT_SIZE} MB"
else
echo "警告:非 root 用户,无法配置 USB 内存大小"
echo "建议运行sudo sh -c 'echo 2000 > /sys/module/usbcore/parameters/usbfs_memory_mb'"
fi
echo "=========================================="
echo "现在可以运行 DroneScrewServer"
echo "=========================================="