使用NDK编译的时候出现 undefined reference to

DSP28335 ADC模块实战:从寄存器配置到精准数据采集(附代码详解) 本文详细解析DSP28335的ADC模块配置与数据采集实战,涵盖寄存器设置、采样窗口优化、中断处理及代码实现。重点解决ADC精度问题,如采样窗口不足导致数据偏差,提供完整代码示例和调试技巧,助力工程师实现精准数据采集。 阅读详情
最近一段时间在使用NDK进行编译的时候一直出现undefined reference to的问题

代码写的没有问题, 在visual studio中也能找到定义, 可是在NDK中就是出现这个问题过不去.

使用nm, objdump 查看.o文件也是发现就是那几个函数未定义;

多番GOOGLE之下 找到了问题所在

解决问题:  在android.mk中加入  LOCAL_ALLOW_UNDEFINED_SYMBOLS := true

引用:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

Add the line

LOCAL_ALLOW_UNDEFINED_SYMBOLS := true

to the Android.mk file and it should work.  As explained in the ndk doc, it is because the ndk performs a debug checking even for avoiding runtime linking error and for some motivations it doesn't find the correct references in a pre-built library. Hope it coulds help.

http://stackoverflow.com/questions/7209971/ndk-build-undefined-reference-to-errors-when-statically-linking-to-libxml-a

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

PS:

Android.mk文件来向NDK编译系统描述你的源代码
Application.mk文件向NDK编译系统描述你的应用程序需要的原生代码。

nm输出字符 含义
R Read only symbol. 比如在代码中有一个const MAXDATA = 3095; 则MAXDATA就是一个Read only symbol
N 这是一个调试符号
D 这是一个已经初始化的变量的符号。比如代码中int  i = 1和char *str = "Hello"则i和str都是这种类型的符号
T Text段的符号。子程序都是这种符号,比如文件中实现了一个函数function,则function就是这种符号
U 未定义的符号。如果文件中引用了不存在的函数,则这些未定义的函数符号就是这种类型
S 未初始化的符号,比如全局变量int s;则s的符号就是此类型

objdump -j .text -Sl objtest | more
-S 尽可能反汇编出源代码,尤其当编译的时候指定了-g这种调试参数时,
   效果比较明显。隐含了-d参数。
-l 用文件名和行号标注相应的目标代码,仅仅和-d、-D或者-r一起使用
  使用-ld和使用-d的区别不是很大,

ssm框架搭建 这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载 立即下载

相关推荐

MQTT阿里云OTA 调试记录

2.验证,这个验证是什么意思呢,就是阿里云会把你包的信息,比如包大小,streamid(相当于包的识别码),版本号发送给你的设备,然后如果你没发送升级成功的包给阿里云,这里会是一直验证中的状态,那你的设备每次重新连接阿里云,发送connect包给阿里云的时候,阿里云就会发送一次这个验证(upgrade)包。提取到了之后就可以发送请求包了,这个请求包比较坑,也可能是我没付费,他的包一次最多只有1024个字节的数据。之前说了,验证状态下,设备发送connect包给阿里云,阿里云就会发一个upgrade包给你。

qq_42585211的博客 1231

undefined reference to `std::cin'

背景: 在Linux下直接man cin/cout 是没有结果的,刚开始以为无法在Linux下使用cin/cout,后来看到网上确实有一些类似的代码,所以做了一个简单的实验,代码如下: #include using namespace std; int main() { char name[16]={0}; printf("请输入姓名\n"); cin>>name

白永辉的专栏 5689

SpringBoot项目启动后ShardingSphere5.0首次SQL查询慢?这个预热技巧帮你搞定

本文针对SpringBoot项目集成ShardingSphere 5.0后首次SQL查询慢的问题,深入剖析了其根源在于SQL解析引擎的懒加载与缓存初始化。文章提供了三种有效的预热技巧,包括精准的SQL解析引擎预热、简单查询触发全链路预热以及可配置的生产级方案,帮助开发者将初始化成本提前至应用启动阶段,从而消除性能毛刺,提升用户体验与系统稳定性。

chair的专栏 1063

vscode使用中遇到的小问题们

c/c++ 命令窗口中gcc无效,include头文件不包含: ① 配置环境变量,把Mingw64根目录写进Path ② 在 c_cpp_properties.json 中写入Mingw64根目录(这里反斜杠要标两个,网上多是用的vs c++,Dev cpp也是一样的) 提示那里选配置(UI)也一样,在 includePath下面的框里面直接加上根目录就可以,它会自己给你写进c_cpp_prop...

qq_44531167的博客 894

农业杂草检测——棉花杂草数据集

然后将本层13×13的特征图谱经过×2上采样扩充到26×26,并与上层中26×26的特征图谱拼接,得到新的26×26的特征图谱,在该特征尺度上进行第二次预测,此时得到的特征图谱是相对输入图像16倍下采样,具有中尺度感受野,适合检测中等尺度对象;通过目标检测,能够及时清除杂草,减少病虫害的滋生和传播,保障棉花的健康生长,并有助于降低生产成本。对于地膜覆盖的棉田,由于膜内耕作层土温高、底墒好,杂草出苗早而集中,一般覆膜后5 - 7天杂草陆续出土,在墒情好的情况下,15天左右即形成出土高峰。

qq_38220914的博客 1247

C++ 编译报错 undefined reference to (找不到声明)快速排查

链接报错

weixin_34489059的博客 8822

Linux8.3上装Oracle 19c RAC,ssh互信总报INS-06006?别急着下补丁,试试这个临时替换scp的骚操作

本文针对在Linux 8.3上安装Oracle 19c RAC时遇到的SSH互信报错INS-06006问题,提供了一个无需官方补丁的临时解决方案。通过创建SCP包装脚本并添加-T参数,有效解决了OpenSSH 8.x版本与Oracle安装程序的兼容性问题,帮助用户顺利完成安装流程。

weixin_30764883的博客 403

VS Code 配置C++环境

在VS Code配置C++环境时出现undefined reference to `std::cin'"错误,原因是默认使用了gcc而非g++编译器。解决方法是在tasks.json文件中,将g++任务的"isDefault"设置为true,同时确保gcc任务的"isDefault"为false。修改后需更新编译器路径为实际的g++.exe路径。该配置调整后即可正常编译使用C++标准库的程序。

Tuck_stonck的博客 1056

保姆级教程:在ROS2 Humble上搞定Livox Mid-360雷达,从IP配置到Rviz点云显示

本文提供在ROS2 Humble上配置Livox Mid-360激光雷达的完整教程,涵盖从IP设置到Rviz点云显示的全流程。详细解析硬件连接、驱动编译、配置文件优化及常见问题排查,帮助开发者快速搭建开发环境并实现高效点云可视化。

weixin_30955617的博客 184

大疆sdkV4以及V5webrtc推流

webrtcSDK中要用它的VideoCapturer来初始化推流 ViewdoCapturer是一个接口我们继承它 然后重建创建文件CapturerAircraft.java文件。CameraUtil.java这个是我们用来创建CapturerAircraft的一个工具。除了CapturerAircraft这个文件不一样外其他都是一样的。PlayBodyBean.java这个是我们的配置文件。下面的有个代码块第一个是v4的 第二个是v5的。接着我们来创建几个推流用到的webrtc工具。

weixin_41624865的博客 1188

问题解决之: 使用NDK编译的时候出现 undefined reference to

最近一段时间在使用NDK进行编译的时候一直出现undefined reference to的问题 代码写的没有问题, 在visual studio中也能找到定义, 可是在NDK中就是出现这个问题过不去.   使用nm, objdump 查看.o文件也是发现就是那几个函数无法

824

制作INCA和CANape通用的A2L

CANape和INCA通用的A2L配置与修改

赞的博客 5965

Android APP使用NDK编译后的ffmpeg库出现undefined reference to 'posix_memalign'错误

在android程序中使用NDK编译后的ffmpeg库的时候出现了如下错误: jni/libs/libavutil.a(mem.o): in function av_malloc:libavutil/mem.c:95: error: undefined reference to 'posix_memalign' 上网查阅,发现是由于android系统一开始并不支持posix,后来增加了对p...

weixin_30338461的博客 436

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

解决使用NDK进行编译时出现undefined reference to function的问题

之前在编译jni时出现了undefined reference to function这个问题,查阅相关资料说是可能链接的库问题,然后通过各种gcc调整顺序解决了这个问题。这个工程是导师的工程,工程在Linux环境下运行无误,我从Linux环境往Android jni的一个迁移,由于文件的关联比较多代码量异常庞大和复杂(尝试着把方法直接复制到目标cpp中无果),而且我对gcc编译顺序这方面不是特别熟

llearner的博客 6848

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

linux yum ndk build,Android APP使用NDK编译后的ffmpeg库出现undefined reference to 'posix_memalign'错误...

在android程序中使用NDK编译后的ffmpeg库的时候出现了如下错误:jni/libs/libavutil.a(mem.o): in function av_malloc:libavutil/mem.c:95: error: undefined reference to 'posix_memalign'上网查阅,发现是由于android系统一开始并不支持posix,后来增加了对posix的支...

weixin_39637059的博客 475

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

NDK编译报错 undefined reference to 'vtable for

jni/FaceDetection/include/classifier.h:49: error: undefined reference to 'vtable for seeta::fd::SURFMLP' D:/android/android-ndk-r10/toolchains/arm-linux-androideabi-4.8/prebuilt/windows-x86_64/bin/../

walle的博客 5293

NDK下OpenCV undefined reference to `cv::imencode std::__ndk1::vector 异常

报错日志 CMakeFiles/enhance_lib.dir/src/main/cpp/ImageProcess.cpp.o: In function `ImageEnhancementWithDecode': /home/albertsnow/WorkSpace/NubiyaARThai/documentlibrary/src/main/cpp/ImageProcess.cpp:347: un...

zhjali123的专栏 4299

cocos2d-x 使用ndk编译 x86 出现 in function Curl_resolv_timeout: undefined reference to 'sigsetjmp' 错误

解决方法: 只需将 android-ndk-r8/platforms/android-14/arch-x86/usr/include 下面的sched_h 替换 和android-ndk-r8/platforms/android-14/arch-x86/usr/liblibc.so 替换即可 下载地址:http://download.youkuaiyun.com/detail/z

z104207的专栏 2744

android ndk error :undefined reference to.

在用AS的NDK编译c时,添加了一个C的头文件和.c文件,在调用的时候,一直出现undefined reference to 。。。。 查看代码之后,发现一点问题都没有,就是一直编译不过。 也在C的头文件加入了: #ifdef __cplusplus extern "C" { #endif // my code #ifdef __cplusplus } #endif

lzj_lzj2014的博客 4045
上一篇: linux SSSocket 简单封装
下一篇: NDK编译多个cpp
CodingSir
博客等级 码龄21年 2149粉丝 812原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值