export LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH
时间: 2023-08-04 12:04:43 浏览: 90
这是一个用于设置动态链接库搜索路径的命令。在这里,`pwd`表示当前工作目录,`$LD_LIBRARY_PATH`是环境变量LD_LIBRARY_PATH的值。通过将当前工作目录添加到LD_LIBRARY_PATH中,系统可以在搜索动态链接库时先查找当前目录。这样做可能有助于解决一些动态链接库加载的问题。
相关问题
#!/bin/bash test "$BASH_SOURCE" = "" && echo "This script can be sourced only from bash" && return SCRIPT_SOURCE=$BASH_SOURCE test "$SCRIPT_SOURCE" = "$0" && echo "Script is being run, should be sourced" && exit 1 SCRIPT_DIR=$(dirname "${SCRIPT_SOURCE}") ZEEKR_BASE=$(cd "${SCRIPT_DIR}"; pwd) ZEEKR_TARGET=$ZEEKR_BASE/target/ ZEEKR_PROTO_IDL_PATH=$ZEEKR_TARGET/usr/idl ZEEKR_BIN_PATH=$ZEEKR_TARGET/aarch64/usr/bin ZEEKR_LIB_PATH=$ZEEKR_TARGET/aarch64/usr/lib ZEEKR_INCLUDE_PATH=$ZEEKR_TARGET/usr/include ZEEKR_CMAKE_INSTALL_PATH=$ZEEKR_TARGET/aarch64/usr/cmake ZEEKR_PROTOC_EXEC=$ZEEKR_BASE/host/protoc/protoc ZEEKR_PREBUILD=$ZEEKR_TARGET/aarch64/prebuild MAKEFLAGS=-I$ZEEKR_TARGET/usr/include PATH=$ZEEKR_TARGET/aarch64/usr/bin:$ZEEKR_TARGET/aarch64/usr/lib:$PATH export ZEEKR_TARGET ZEEKR_PROTO_IDL_PATH ZEEKR_BIN_PATH ZEEKR_LIB_PATH ZEEKR_INCLUDE_PATH ZEEKR_CMAKE_INSTALL_PATH ZEEKR_PREBUILD ZEEKR_PROTOC_EXEC MAKEFLAGS PATH echo ZEEKR_PROTO_IDL_PATH=$ZEEKR_PROTO_IDL_PATH echo ZEEKR_BIN_PATH=$ZEEKR_BIN_PATH echo ZEEKR_LIB_PATH=$ZEEKR_LIB_PATH echo ZEEKR_INCLUDE_PATH=$ZEEKR_INCLUDE_PATH echo ZEEKR_CMAKE_INSTALL_PATH=$ZEEKR_CMAKE_INSTALL_PATH echo ZEEKR_PROTOC_EXEC=$ZEEKR_PROTOC_EXEC echo ZEEKR_PREBUILD=$ZEEKR_PREBUILD #Do not edit past this line
这是一个Bash脚本,主要用于设置环境变量和路径。它会将一些路径和变量设置为全局变量,以便在后续的脚本中使用。
以下是一些设置的路径和变量:
- `ZEEKR_BASE`:脚本所在的基础路径。
- `ZEEKR_TARGET`:目标路径。
- `ZEEKR_PROTO_IDL_PATH`:IDL文件的路径。
- `ZEEKR_BIN_PATH`:二进制文件的路径。
- `ZEEKR_LIB_PATH`:库文件的路径。
- `ZEEKR_INCLUDE_PATH`:头文件的路径。
- `ZEEKR_CMAKE_INSTALL_PATH`:CMake安装路径。
- `ZEEKR_PROTOC_EXEC`:protoc执行文件的路径。
- `ZEEKR_PREBUILD`:预构建文件的路径。
最后,脚本会输出设置的路径和变量,以供检查使用。
请注意,这段脚本中有一些特定于环境和项目的设置,可能需要根据具体情况进行调整。
#!/bin/bash # Assets TEST_IMG=demo.png SDK_ROOT=$PWD TEST_ROOT=$PWD BIN_NAME=test_demo DEVICE_TEST_PATH=/data/local/tmp/ts_ai_sdk_test MODEL_PATH=/sdcard/models RUSULT=/data/local/tmp/ts_ai_sdk_test/results/ RUNTIME=DSP adb root # Push test assets adb shell rm -rf $DEVICE_TEST_PATH # adb shell rm -rf $MODEL_PATH adb shell mkdir -p $DEVICE_TEST_PATH/jpgs adb shell mkdir -p $DEVICE_TEST_PATH/results/post_result adb shell mkdir -p $DEVICE_TEST_PATH/results/img_result #adb shell mkdir -p $MODEL_PATH adb push images/* $DEVICE_TEST_PATH/jpgs # Push SNPE libraries adb push ${SDK_ROOT}/libs/ $DEVICE_TEST_PATH adb push ${SDK_ROOT}/models/model.exf $DEVICE_TEST_PATH/ # Push executable adb push build/$BIN_NAME $DEVICE_TEST_PATH # Test adb shell "chmod +x $DEVICE_TEST_PATH/$BIN_NAME" echo "Running on Android device ..." echo "LD_LIBRARY_PATH='$DEVICE_TEST_PATH/libs' $DEVICE_TEST_PATH/$BIN_NAME $DEVICE_TEST_PATH/jpgs $RUSULT $DEVICE_TEST_PATH/model.exf" echo "Done." adb shell "LD_LIBRARY_PATH='$DEVICE_TEST_PATH/libs' $DEVICE_TEST_PATH/$BIN_NAME $DEVICE_TEST_PATH/jpgs $RUSULT $DEVICE_TEST_PATH/model.exf" # Pull result adb pull $DEVICE_TEST_PATH/results/ . sleep 1改为bat脚本
将该脚本转换为 Windows 的 batch 脚本,需要进行以下修改:
1. 更改第一行为 `@echo off`,表示关闭命令回显。
2. 将变量的赋值方式从 `$变量名=值` 改为 `set 变量名=值`。
3. 将 `adb` 命令行中的路径分隔符 `/` 改为 Windows 下的路径分隔符 `\`。
4. 在执行命令行时需要使用 `call` 命令。
修改后的 batch 脚本如下:
```
@echo off
REM Assets
set TEST_IMG=demo.png
set SDK_ROOT=%cd%
set TEST_ROOT=%cd%
set BIN_NAME=test_demo
set DEVICE_TEST_PATH=/data/local/tmp/ts_ai_sdk_test
set MODEL_PATH=/sdcard/models
set RESULT=/data/local/tmp/ts_ai_sdk_test/results/
set RUNTIME=DSP
REM Push test assets
adb root
adb shell rm -rf %DEVICE_TEST_PATH%
adb shell mkdir -p %DEVICE_TEST_PATH%/jpgs
adb shell mkdir -p %DEVICE_TEST_PATH%/results/post_result
adb shell mkdir -p %DEVICE_TEST_PATH%/results/img_result
adb push images\* %DEVICE_TEST_PATH%/jpgs
REM Push SNPE libraries
adb push %SDK_ROOT%\libs\ %DEVICE_TEST_PATH%
adb push %SDK_ROOT%\models\model.exf %DEVICE_TEST_PATH%\
REM Push executable
adb push build\%BIN_NAME% %DEVICE_TEST_PATH%\
REM Test
adb shell "chmod +x %DEVICE_TEST_PATH%\%BIN_NAME%"
echo Running on Android device ...
echo "LD_LIBRARY_PATH='%DEVICE_TEST_PATH%\libs' %DEVICE_TEST_PATH%\%BIN_NAME% %DEVICE_TEST_PATH%/jpgs %RESULT% %DEVICE_TEST_PATH%/model.exf"
echo Done.
call adb shell "LD_LIBRARY_PATH='%DEVICE_TEST_PATH%\libs' %DEVICE_TEST_PATH%\%BIN_NAME% %DEVICE_TEST_PATH%/jpgs %RESULT% %DEVICE_TEST_PATH%\model.exf"
REM Pull result
adb pull %DEVICE_TEST_PATH%/results/ .
timeout /t 1
```