关于Jetson Nvidia NX重建自带aarch64-linux-gnu的问题或者解决正文内容问题

因为ORB-SLAM3编译ROS环境下的程序时,会触及aarch64-linux-gnu的功能,好像Xavier NX自带的aarch64-linux-gnu是用OpenCV3.2编译的(不知道这个是否与ROS-melodic自带opencv3.2版本有关,但是我并没有找到opencv3.2的包),但我现在想用OpenCV4.4.0编译ORB-SLAM3,在CMakeLists.txt文件中也指定了OpenCV4.4的路径,在cmake的过程中也显示了是用OpenCV4.4.0编译,

img

但是最后还是显示出下面的问题:

img

我也根据论坛中用cv_bridge指定OpenCV版本的的教程,不过我这个cv_bridge是ROS自带的,我也把cv_bridgeConfig.cmake、cv_bridgeConfig文件里的OpenCV路径和版本全改成了4.4.0。但是还是没用,我甚至删掉了libopencv_core.so.3.2等文件,删掉之后就直接无法编译通过了,即使我系统内是有OpenCV4.4的,但是就是没办法检测到,显示以下错误:

img

根据这个错误,我去翻了翻/usr/lib/aarch64-linux-gnu文件夹,不过我确实删掉了这个文件夹里的libopencv_core.so.3.2这些文件。在编译开始也是看到了这个:

img

可能真的跟aarch64-linux-gnu有关吧,但是我不知道怎么解决。

希望可以指点一下,不一定是重建Xavier NX自带的aarch64-linux-gnu,只要能解决这个问题就可以。

因为这个问题我已经重装ROS、删除文件、装各个版本的OpenCV、多OpenCV版本共存、刷Xavier NX等,几个月过去了,希望解救一下。

联系vx也可以,ball ball了。

先检查你的libopencv_core.so的位置,看起来opencv4.4是你自己装的,所以你需要把对应的lib路径加入到LD_LIBRARY_PATH里

进来学习一下

已经几个月了,估计尝试过太多的方法,可能系统有相当多的卸载残留,建议在虚拟机上重复之前的步骤试试

换个干净的linux 再战一遍