[错误描述] 未定义引用

提示如下:
bootable/recovery/minzip/Zip.c:1122: error: undefined reference to 'selabel_lookup'
bootable/recovery/minzip/Zip.c:1123: error: undefined reference to 'setfscreatecon'
bootable/recovery/minzip/Zip.c:1129: error: undefined reference to 'freecon'
bootable/recovery/minzip/Zip.c:1130: error: undefined reference to 'setfscreatecon'
bootable/recovery/minzip/DirUtil.c:151: error: undefined reference to 'selabel_lookup'
bootable/recovery/minzip/DirUtil.c:152: error: undefined reference to 'setfscreatecon'
bootable/recovery/minzip/DirUtil.c:158: error: undefined reference to 'freecon'
bootable/recovery/minzip/DirUtil.c:159: error: undefined reference to 'setfscreatecon'
collect2: error: ld returned 1 exit status
make: *** [out/target/product/fly/obj/SHARED_LIBRARIES/ua-server_intermediates/LINKED/ua-server.so] 错误 1

[问题分析] 根据提示可知,Zip.c 调用的四个函数 'selabel_lookup','setfscreatecon','freecon','setfscreatecon' 未定义。其实它们定义在 libselinux 库中,只是因为 libselinux 库没有被包含进相应模块的 Android.mk 文件中,才导致这样的编译错误。

[处理方法] 打开所编译模块的 Android.mk 文件,在对应模块添加LOCAL_STATIC_LIBRARIES += libselinux,如果已有其他的库,则将 libselinux 直接添加在后面即可。

小小总结,只为抛砖引玉,如果读者在编译过程中遇到类似的问题,可以举一反三,加以解决。

#欢迎技术交流# skype账号:fxwlucky

Android编译错误——undefined reference to的更多相关文章

  1. 错误 undefined reference to __cxa_guard_acquire/release

    用gcc编译 c++ 程序时,出现错误 undefined reference to __cxa_guard_acquire linker error, 但是用icc可以正常编译, 问题出在stati ...

  2. [转载]解决linux 下多线程错误 undefined reference to `sem_init'

    转自:https://blog.csdn.net/yzycqu/article/details/7396498?utm_source=copy 解决linux 下多线程错误 undefined ref ...

  3. 解决错误---undefined reference to `pthread_create‘

    今天试着敲了一下APUE的小例子,遇到了个错误 -----  undefined reference to `pthread_create.(为自己这么晚接触多线程惭愧). 上网上查了一下,借人经验. ...

  4. QT添加自定义信号后编译出现undefined reference

    QT添加自定义信号后编译出现undefined reference 这是需要重新生成qmake: build --->run qmake

  5. Android NDK编译之undefined reference to 'JNI_CreateJavaVM'

    利用Android NDK编译动态库,在C文件中调用了两个JNI函数:JNI_GetDefaultJavaVMInitArgs和JNI_CreateJavaVM.编译的时候始终报以下错误: XXX: ...

  6. [ c++] cmake 编译时 undefined reference to `std::cout' 错误的解决方案

    cmake ..  和 make 之后,出现如下错误 Linking CXX executable ../../../bin/ModuleTest CMakeFiles/ModuleTest.dir/ ...

  7. eclipse中编译出现错误undefined reference to `_sbrk'

    1. 在eclipse中使用gcc-arm-none-eabi-7-2017-q4-major-win32编译代码的时候出现了undefined reference to `_sbrk' e:/pro ...

  8. 编译3.10内核 出现错误 “undefined reference to...." 解决方法

    向内核中加入C文件后.假设想编译进内核须要改动当前文件夹下的Kconfig文件和Makefile文件. 如:加入一个test.c文件到driver文件夹下,则须要改动Kconfig文件: config ...

  9. cocos2dx添加新的类后出现错误undefined reference to的解决办法

    使用cocos compile -p android编译cocos2dx项目的时候出现如下错误(新建了TestScene.h,TestScene.cpp): jni/../../Classes/App ...

随机推荐

  1. c++引擎开发

    MyMap.erase(Itor++); //在windows下也可以Itor = MyMap.erase(Itor),但是在linux下不行. 一个是把指针定为const .就是不能修改指针.也就是 ...

  2. 【Java基础】可变参数

    下面是一个简单的小程序: import java.util.Arrays; class lesson6 { public static void main(String[] args) { ,,,,, ...

  3. .NET Web开发之.NET MVC框架

    摘要:MVC是一种架构设计模式,该模式主要应用于图形化用户界面(GUI)应用程序.那么什么是MVC?MVC由三部分组成:Model(模型).View(视图)及Controller(控制器). MVC概 ...

  4. PHP学习笔记九【数组二】

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/h ...

  5. JS时间戳与日期类型格式相互转换

    function datetime_to_unix(datetime){     var tmp_datetime = datetime.replace(/:/g,'-');     tmp_date ...

  6. jdbc之二:DAO模式

    详细代码请参见 https://code.csdn.net/jediael_lu/daopattern 1.创建Dao接口. package com.ljh.jasonnews.server.dao; ...

  7. Activiti+oracle 启动项目时不能自动建表或更新表的问题分析及解决办法

    现象描述:按照正常配置,第一次启动时不能自动建表 关键配置片段如下: <bean id="processEngineConfiguration" class="or ...

  8. 国内好用的公用DNS 服务器。

    阿里 AliDNS 223.5.5.5 223.6.6.6 CNNIC SDNS 1.2.4.8 210.2.4.8 Google DNS 8.8.8.8 8.8.4.4 OpenDNS 208.67 ...

  9. MySQL应用层传输协议分析

    001.在MySQL应用层传输协议中主要有如下三种类型的数据: 01.整数类型. 02.字符串类型. 03.描述数据包. 002.MySQL应用层传输协议中对整型的说明: 01.固定长度的整型---- ...

  10. Linux回归篇-基础恶补

    前言:  LINUX在之前仅仅了解一些皮毛知识,最近计划深入研究大数据,LINUX当然少不了,所以借此良机将LINUX也顺带添加进入学习的目录之中.为了知识的全面性,本文先恶补一下LINUX的基础,作 ...