当前位置: 首页 新闻详细

Opencv源码交叉编译Android库,C++交叉编译 请帮忙看看是哪个库没有链接

专业编程培训机构——完成蜕变以后轻松拿高薪

电话+V:159999-78052 ,欢迎咨询交叉编译静态库程序,[python实用课程],[C++单片机原理],[C#网站搭建],[Nodejs小程序开发],[ios游戏开发],[安卓游戏开发],[教会用大脑用想法赚钱实现阶层跨越]

一、Opencv源码交叉编译Android库

本文主要介绍了如何在Android平台上进行OpenCV(版本2.4.13)的源码交叉编译,并将其集成到Android应用中。首先,你需要确保已下载并配置好NDK(yourNDKPath),以及指定编译文件的存放路径(yourInstallPath)。在OpenCV根目录下,运行特定命令开始编译过程,这将生成所需的头文件、静态库和动态库。

接下来,你需要在你的项目中引入编译好的OpenCV库。这包括在CMakeLists.txt文件中配置工程,以便正确链接OpenCV库。完成配置后,进行工程的编译,确保所有的依赖项都已正确集成。

在Android设备上进行测试时,将编译的可执行文件与图片文件一起推送至设备,然后在终端执行程序。执行过程会输出相关结果。

二、用BusyBox构建根文件系统

根文件系统为Linux移植的最后一步,构建根文件系统是打造最小化嵌入式Linux系统的关键。

根文件系统集成了库、软件、命令、设备文件和配置文件,是Linux运行的基础。这个“根”字揭示了其核心地位,没有它,其他系统和软件无法运作。例如,ls、mv、ifconfig命令就是根文件系统中的小型软件。

构建根文件系统,通常以Ubuntu为参考。目录结构包括但不限于:/bin、/dev、/etc、/lib、/mnt、/proc、/usr、/sbin、/sys和/opt等。

BusyBox是一个集成大量Linux命令和工具的软件,通过配置和编译,可简化根文件系统的构建。从busybox.net/下载源码,选择合适版本进行编译。

在Ubuntu虚拟机中构建NFS服务,创建rootfs目录存放根文件系统。BusyBox编译后,其工具和文件被安装至rootfs目录下的bin、sbin和usr文件夹,Linux内核查找并运行此init程序。

编译完成后,根文件系统仅包含BusyBox工具和库文件,还需添加lib目录中的库文件,包括动态和静态库。需在rootfs目录下分别创建lib和usr/lib文件夹,并从交叉编译器中复制库文件至对应位置。

创建dev、proc、mnt、sys、tmp和root等文件夹,完成根文件系统初步构建。

使用NFS挂载测试根文件系统。设置bootargs环境变量指向NFS挂载点,启动开发板后,使用ls命令进行测试。注意,当前根文件系统可能不完全完善,例如/etc/init.d/rcS文件不可用。

三、C++交叉编译请帮忙看看是哪个库没有链接

交叉编译静态库程序

C++交叉编译请帮忙见见是哪个库没有链接

www.MyException.Cn网友分享于:2013-10-12浏览:103次

C++交叉编译请帮忙看看是哪个库没有链接

我在交叉编译一个cpp程序的时候,提示说:

undefinedreferenceto`std::_Rb_tree_decrement(std::_Rb_tree_node_baseconst*)'

undefinedreferenceto`std::_Rb_tree_insert_and_rebalance(bool,std::_Rb_tree_node_base*,std::_Rb_tree_node_base*,std::_Rb_tree_node_base)'

undefinedreferenceto`std::_Rb_tree_increment(std::_Rb_tree_node_baseconst*)'

undefinedreferenceto`android::RefBase::decStrong(voidconst*)const'

是不是我在链接的时候,忘记链接哪个库了,请帮忙看下,谢谢!

我链接的库有:-lcutils-ldl-lstlport-lc-lm-lz-ldl-llog-lstdc++-lstagefright-lbinder

但还是出现上面的错误。请问下为什么?

分享到:

------解决方案--------------------

std::_Rb_tree

应该是map或者set用到的红黑树啊。

头文件是bits/stl_tree.h

库的话应该是-lstdc++,或者-lstlport啊

为了排除静态库原因引起的问题,建议楼主试试在最后在链接一下这几个库试试

-lcutils-ldl-lstlport-lc-lm-lz-ldl-llog-lstdc++-lstagefright-lbinder-lstlport-lstdc++-lstl

【WINDRISES EMPLOYMENT PROGRAMMING】尊享对接老板

电话+V:159999-78052

机构由一批拥有10年以上开发管理经验,且来自互联网或研究机构的IT精英组成,负责研究、开发教学模式和课程内容。公司具有完善的课程研发体系,一直走在整个行业发展的前端,在行业内竖立起了良好的品质口碑。

交叉编译静态库程序
发布人:ou19970302 发布时间:2024-09-01