我对 Ubuntu 文件和目录系统还很陌生。我使用安装了 OpenNi2 sudo apt install libopenni2-dev
,但现在找不到 NiViewer 可执行文件来测试安装。我查看了/usr/bin
,usr/local/bin
但没有找到。但是当我从这里它包含一个无法运行的 NiViewer。但是当我执行时,install.sh
NiViewer 就会运行。我查看了文件。我猜它有两部分...安装 udev 规则和导出环境变量。文件install.sh
如下所示install.sh
if [ `whoami` != root ]; then
echo Please run this script with sudo
exit
fi
ORIG_PATH=`pwd`
cd `dirname $0`
SCRIPT_PATH=`pwd`
cd $ORIG_PATH
if [ "`uname -s`" != "Darwin" ]; then
# Install UDEV rules for USB device
cp ${SCRIPT_PATH}/primesense-usb.rules /etc/udev/rules.d/557-primesense-usb.rules
fi
OUT_FILE="$SCRIPT_PATH/OpenNIDevEnvironment"
echo "export OPENNI2_INCLUDE=$SCRIPT_PATH/Include" > $OUT_FILE
echo "export OPENNI2_REDIST=$SCRIPT_PATH/Redist" >> $OUT_FILE
chmod a+r $OUT_FILE
我的问题如下:
- 我是否可以在不运行 install.sh 文件的情况下仅通过我拥有之后可用的内容来运行 NiViewer ?即是否可以在不运行 install.sh 文件的情况下设置 udev 规则?(我猜
sudo apt install libopenni2-dev
环境变量中已经添加了路径)/usr/lib
- 如果我使用 install.sh 文件安装 OpenNI2,那么库的位置就会改变。这不是通常的情况
/usr/lib
。如果我需要 OpenNI 来构建任何其他库(如 PCL 或 OpenCV),cmake 将如何检测 OpenNI 库的位置?