【TX1学习与开发系列】(三)Kintinuous移植到TX1的一些问题总结

来源:互联网 发布:中山大学就业 知乎 编辑:程序博客网 时间:2024/05/22 03:06

大家好,今天我们聊下Jetson_TX1中Kintinous框架移植问题!这里我使用的是Ubuntu 16.04系统

由于交叉编译的问题和驱动版本的问题,x86架构的软件不能直接通过apt-get或者一键式安装。

这也就是说,我们需要重新在arm57下重新编译源码,但是在编译的过程中会涉及到交叉编译的问题。一下几点是我对Kintinous总结:

一、依赖问题

1、其实很简单,点开 build.sh 其中


把以上的内容删除 ,因为我们用的16.04系统。

2、选用opencv2.4.9 (最好用这个,不然他的相关依赖都可能需要修改)

3、pcl用apt-get 就可以

4、flann、suitespare

[plain] view plain copy
  1. git clone https://github.com/sfabbro/suitesparse.git  

这是一个autotool 工具,打开链接

http://dev.gentoo.org/~bicatali/distfiles/


其中要用到cholmod 、flann、suitsparseconfig、amd……直接通过 ./configure --enable-shared  生成makefile 然后make 和sudo make install 

其他的正常安装即可。

5、isam库的Bug 问题

动态链接上出现没有定义isam::pose3d::dim

这里我提出一种方法:

在isamlib下生成个pose3d.cpp内容为

[plain] view plain copy
  1. #include<isam/Pose3d.h>  
  2. namespace isam  
  3. {  
  4.     const int Pose3d::dim;  
  5. }   

重新编译下isam 生成libisam.so库


二、tx1 内存封顶问题

增加swap,可以参考我的专栏第二讲,如何增加swap。


三、总结

1、在编译到97%,容易出现内存封顶的情况

2、TX1玩Kintinuous是作死的表现,实时很差。最好使用TX2,性能上提升两倍,在CPU也很大提升!

3、如果出现类似不匹配的驱动函数(cuda),可以查看自己的cuda 的型号CUDA_ARCH_BIN 添加一个即可。

好了,如何你有什么问题不懂太明白,欢迎qq513459395!

阅读全文
0 0