交叉编译,CMake和符号链接

时间:2018-10-18 13:08:57

标签: opencv cmake cross-compiling visualgdb

因此,我正在使用本指南为Raspberry Pi交叉编译OpenCV:

https://visualgdb.com/tutorials/raspberry/opencv/build/ 我这样做主要是因为在RPi上构建任何东西都比在Windows上慢得多,并且因为我需要Visual Studio的远程调试工具。一切都按预期工作,尤其是在VisualGDB的高级CMake子系统中。但是,当我到达部署步骤时,会遇到一些烦恼。

首先,SmarTTY无法上传到/ usr目录,因为无法在应用程序中应用sudo命令。我可以将所有内容复制到/ home / pi目录,然后将所有内容以递归方式复制到/ usr,这就像一个魅力!我进行了远程调试,并且编译后的应用程序获取了所有必需的依赖项。我不知道是否有替代手动复制文件的方法。

第二个烦恼是当我使用ldconfig命令时:

  

pi @ raspberrypi:〜$ sudo ldconfig

     

ldconfig:/usr/lib/libopencv_calib3d.so.4.0不是符号链接

     

.....

     

pi @ raspberrypi:/ usr / lib $ ls libopencv_calib3d。* -al

     

-rwxr-xr-x 1根root 9832912 Oct 17 18:16 libopencv_calib3d.so

     

-rwxr-xr-x 1根root 9832912 Oct 17 18:17 libopencv_calib3d.so.4.0

     

-rwxr-xr-x 1根root 9832912 Oct 17 18:16 libopencv_calib3d.so.4.0.0

如您所见,它没有创建一个.so文件和几个符号链接,而是创建了同一文件的多个副本。这基本上是因为Windows不支持符号链接。现在有几种即席解决方案,例如将重复文件转换为符号链接的脚本,但这实际上并不是一种可靠的方法。您如何在日常交叉编译任务中解决此类问题?

0 个答案:

没有答案