如何调用buildroot 创建的嵌入式linux系统的so库 [问题点数:40分]

Bbs1
本版专家分:0
结帖率 78.26%
Bbs1
本版专家分:0
Bbs1
本版专家分:0
Bbs1
本版专家分:0
第一节:搭建嵌入式环境和简单编译buildroot
第一步:新建一个虚拟机 n1. 下载ubuntu的iso镜像文件 n http://ftp.sjtu.edu.cn/ubuntu-cd/16.04.4/ n 64位: ubuntu-16.04.4-desktop-amd64.iso n 32位: ubuntu-16.04.4-desktop-i386.iso n 最好选用32位的 n2. 安装方式 n http://...
java实现linux下调用c的so动态库的方法
最近项目中用到了java<em>调用</em><em>linux系统</em>下c的so动态库的需求,实现后我就来总结一波n实现方式:n1.java使用jni<em>调用</em><em>so库</em>:n需要自己定义native方法,编译.h文件,编写c文件,在linux上编译为so文件,巴拉巴拉。。。n总之比较繁琐,而且写java的去写c,你懂得。。。n2.对jni做了封装的JNA方法:n将c中的类型与Java中的类型做了映射,只需要写一个类,类中的接口exte...
用Buildroot制作树莓派64位精简嵌入式系统
使用Buildroot 2018.08.1nn1、make raspberrypi3_64_defconfignn2、make menuconfignntoolchain中修改选项,将c library改为glibc,以适应更多的第三方开发nnSystem configuration:nn    1、hostname改为pinn    2、System banner改为Welcome to ras...
JNA-Linux下java程序调用so库接口函数
在Linux系统下,JAVA程序通过JNA技术实现<em>调用</em>C语言编程输出的<em>so库</em>接口函数,从而实现java程序与c程序之间的交互。
buildroot自带程序(库)编译并安装
前几天情绪有点低落,经过周末的调整重新恢复状态,谢谢有爱的朋友们留言和点赞,有你们的陪伴我会更加努力,让我们一起开心写程序.....nnnn<em>buildroot</em>简介:nn 引用官方的简述:nn Buildroot是一个简单,高效且易于使用的工具,用于生成<em>嵌入式</em> Linux系统通过交叉编译。nn<em>buildroot</em>官方(git托管库):https://github.com/maxime...
Linux平台Java调用so库-JNI使用例子
之前做过一个项目有用到过JNI,最初也是各种不懂,经过自己的不断摸索,开始有了眉目,知道的了怎么使用。我是有在Linux和windows平台都用了JNI,在这里简单分享以下在Linxu平台上开发用了JNI的简单步骤和小demo。楼主亲测可用,要是有不对的地方,欢迎指正! 之前写了一遍windows平台上一个demonnnnnLinux 平台上的项目使用jni called so libr
Builtroot 定制自己的嵌入式软件系统(一)--初次见面
一 让带操作系统的<em>嵌入式</em>软件开发流程变得简单n通常情况下带操作系统的<em>嵌入式</em>软件系统由bootloader(u-boot),内核(Linux),文件系统组成。n对于bootloader和内核。<em>嵌入式</em>最大的特点之一就是平台比较多,各种架构的cpu(arm x86 mips.......)。对于不同的cpu架构有不同的交叉编译器。另外,就算cpu定下来,还可以有不同的外设。n对于文件系统灵活性更强
构建嵌入式Linux系统
构建<em>嵌入式</em>Linux系统,详细的描述了<em>如何</em>构建构建<em>嵌入式</em>Linux系统。
Linux下使用QT编写和调用动态链接库(.so文件)
Linux下Qt<em>创建</em>和<em>调用</em>共享库文件.sonn动态链接库的好处是不言而喻的,一个稍微复杂一点的程序,顶层设计的时候良好的类库划分可以让工作变得很简单,而将不同类编译成共享库文件可以实现程序的模块化,提高代码复用程度,在保证接口兼容的情况下更新一个程序只用更新共享库(Windows下是dll,Linux下常见的是so)即可。nn下面以Linux下的Qt Creator这个IDE为例,讲述Qt(严格意...
Zynq研发(6)——嵌入式Linux系统编译及制作
编译Bootloadernn打开Ubuntu系统终端,进入Bootloader 目录,解压U-boot 源码到u-boot-xlnx目录nnn$ cd &amp;lt;WORK&amp;gt;/Bootloadern$ tar -jxvf u-boot-xlnx.tar.bz2nnnn虚拟机里直接提取到此处,然后进入文件夹nnn$ cd u-boot-xlnxnnnn开始编译nnn$ make ARCH=arm ...
AS生成.so文件并在其它项目中进行引用,调用里面的方法
最近公司要求开发时把秘钥存放在的。所以文件中已确保秘钥的安全性,提高反编译的成本,这期间有一些坑,还好都解决了,现在分享给大家,希望大家能够少走弯路。主要分为以下三部分: n一:配置NDK环境 n1.下载NDK,并配置,我的放在D盘,然后在AS中进行配置! n2.别忘了配置环境变量,否则后面进行NDK建造操作时,会报改指令不存在,复制NDK安装路径,添加到环境变量路径变量后面。 n注:NDK配置如...
Buildroot构建指南——工具链
Linux系统的交叉编译工具链用来将源代码变成bin文件或者库文件的一个软件。一般大家默认工具链等于gcc或者arm-linux-gcc,但是实际上,gcc只是工具链的编译器部分,不是全部,制作一个工具链的原材料,除了gcc,还需要linux内核,libc库等一系列的软件包。所谓万事开头难,<em>如何</em>在Buildroot中使用自己的交叉编译工具链则是第一道难关。nBuildroot支持从零开始用原材料软件包自动构造工具链,也支持直接使用第三方制作好的工具链。
buildroot学习(七)——at91sam9g45软件平台更新
buildroot学习(七) 2016-09-05   我也是最近刚发现这个工具,刚开始弄,我把每天的学习笔记留下,后期用明白了在整理下rn(51)iperfrnIperf 是一个网络性能测试工具。Iperf可以测试最大TCP和UDP带宽性能。Iperf具有多种参数和UDP特性,可以根据需要调整。Iperf可以报告带宽,延迟抖动和数据包丢失。rnrn(52)iproute2rniproute2是另
如何构造嵌入式Linux系统
<em>如何</em>构造<em>嵌入式</em>Linux系统
嵌入式Linux系统中使用摄像头
简介rnrn本文主要基于ARM<em>嵌入式</em>模块系统展示在<em>嵌入式</em>Linux中使用摄像头示例,所采用的模块为Toradex VF61,是一款性价比极高但不包含硬件视频编解码加速的模块,核心处理器为NXP/Freescale Vybrid,Cortex-A5和M4异构双核架构。rn1). 目前越来越多的<em>嵌入式</em>系统采用摄像头应用,其中主要有下面几种方式rn远程监控:如闭路电视系统,操作人员通过摄像头远程监控某个
手动创建一个小于10M的类嵌入式linux系统
前提:n1、一个作为主机的linux;本文使用的是Redhat Enterprise Linux 5.8 ;n2、在宿主机上提供一块额外的硬盘作为新系统的存储盘,为了降低复杂度,这里添加使用一块IDE接口的新硬盘; n3、linux内核源码,busybox源码;本文使用的是linux-2.6.38.5和busybox-1.20.2nnn说明:本文是一个step by step
02-linux-arm板上opencv移植--终极解决方案之buildroot基础配置(原创)
接前一篇《迅为4412-linux-arm板上opencv移植–终极解决方案(原创)》。n平台:Exynos4412。n实验平台:iTOP-4412-精英版。n编译平台:Ubuntu12.04。n编译器版本:arm-4.4.1,懒人直接用的开发板自带的。n<em>buildroot</em>版本:直接官网下载。过段时间就更新,大家下载最新的,应该不会出问题。nopencv版本:opencv2.4.9,opencv是...
如何构造嵌入式Linux系统.pdf
<em>如何</em>构造<em>嵌入式</em>Linux系统.pdf
运行时动态导入so库文件
运行时动态导入<em>so库</em>文件。用最少的代码实现动态导入本地<em>so库</em>文件,示例设定so放在assets文件夹下。
Android中调用so库-第一篇
前言 公司是做人脸识别的,最近主管叫我了解一下车牌识别的sdk,里面就涉及<em>so库</em>的<em>调用</em>。想认真了解一下ndk和<em>so库</em>的使用,查了一下资料,然后总结一下自己的心得,理解的不对的地方请留言指教。大纲1.Android Studio 中怎么引用<em>so库</em>;2.<em>so库</em>适配的问题,以及常见错误总结; Android Studio 中怎么引用<em>so库</em>1.首先<em>创建</em>libs文件夹或者jniLibs文件夹,如果放到 li...
Linux下 Qt创建.so与调用
<em>创建</em>.so: 新建一个Qt Creator项目(这里使用QT5.4.2),Libraries -> C++ Library,类型为Shared Library,一路Next,选取模块的时候按需要选择,默认仅选择QtCore模块(如果你要包含UI,必须选择QtGui),我<em>创建</em>的项目名为make_so。 双击打开项目的plugintest_global.h文件,我加入了一行:#include ,在make_so.h中加公共函数声明:int add(int a,int b); cpp中添加:int Make_so::add(int a,int b)函数,然后构建,生成:make_so.h、make_so_global.h、libmake_so.so、libmake_so.so.1、ibmake_so.so.1.0、ibmake_so.so.1.0.0 <em>调用</em>.so: 新建工程 test_so 在工程->右键->Addlibray->external library->next->选择.so目录 platform下选择linux 就行,其他不选 next->完成 在 Test_SO.cpp 文件中添加 make_so.h 在<em>调用</em>外部函数到地方使用如下 Make_so TestAdd; int a = TestAdd.add(2,3); QMessageBox::about(this,tr("提示信息"),QString::number (a,10));
android 调用第三方so库
首先要知道这个第三方的<em>so库</em>是不是按jni标准写的,如果是那就简单了,直接写个native<em>调用</em>就行了。如果不是那就比较麻烦了,必须要把这个<em>so库</em>里面的函数封装一下在<em>调用</em>,下面进入正题。假设这个库放在/system/vendor/lib下面,名字为libtest.so,我们要<em>调用</em>的方法是get_status,我分别列出在第三方的app和framewok怎样<em>调用</em>。首先是在第三方app的<em>调用</em>,这里的核心...
buildroot-2018.02.2
Buildroot,是个<em>嵌入式</em>开发领域内的,一个成套的<em>嵌入式</em>开发环境。 Buildroot可以用来,制作自己的交叉编译器,制作自己的根文件系统,把uboot,Linux kernel集成到Buildroot中一起编译。
华清远见构建嵌入式linux系统
华清远见<em>如何</em>构建<em>嵌入式</em><em>linux系统</em>,精简版
Building Embedded Linux Systems.pdf
手把手教你<em>如何</em>建立自己<em>嵌入式</em><em>linux系统</em>
Android Studio中的Android项目调用第三方库so库
Android NDK开发中,除了可以通过自己编写C/C++代码来构建动态连接库进行<em>调用</em>之外,还可以通过直接<em>调用</em>现成的<em>so库</em>开进行NDK开发。接下来,我将介绍在Android Studio中<em>如何</em><em>调用</em>第三方动态连接库。    首先需要考虑的是<em>如何</em>获得<em>so库</em>文件,这里介绍自己编译生成的方法。 n    在该项目的基础上http://blog.csdn.net/sinat_19385391/article
修改使能linux串口登录方式(buildroot 文件系统)
Linux 启动参数如下:rnsetenv bootargs console=ttyAMA0,115200n8 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait init=/sbin/init systemd.show_status=false g_ether.host_addr=82:cf:ce:fa:44:18 initrd=0x49000000,0x4
移植触屏驱动,利用buildroot编译tslib,
基于2440开发板1. 内核修改1.1首先更改平台设备文件arch/arm/mach-s3c24xx/mach-lxa2440.c(由mach-mini2440.c修改而来)n添加头文件ts.h,最新版的内核这个头文件更改了位置,自查下.n#include 添加触摸设备/* Touchscreen device support added by anzyelay */nstat
Android Studio 简单生成so文件并调用
平台:windows nIDE :Android Studio n下载好ndk:下载地址 https://developer.android.com/ndk/downloads/index.html第1步:新建一个Android Studio 工程 JniHelloWorld。新建一个MyJni.java文件。 nMyJni.javapublic class MyJni
差分升级的攻克!(主要是so库的生成和使用啦)
差分升级n一 什么是差分升级n二 差分升级相关概念n差分工具nbsdiff 生成补丁nbspatch 合成apkn<em>创建</em><em>so库</em>n使用<em>so库</em>差分升级一. 什么是差分升级n 将已安装的apk和最新的apk进行二进制对比,得到差分包。用户升级的时候只需要下载差分包,在本地使用差分包和已安装的apk合成新的apk安装即可。n二. 差分升级相关概念差分工具nbsdiffnbspatchnCourgette
linux 简单调用so库
1、动态库生成gcc -fPIC -shared cat.c -o libcat.so-fPIC是压制警告 -shared是生成动态库 cat.c是要编译的文件 -o是要生成的文件的名称2、编译指令直接链接<em>调用</em>gcc main.c -L. -lcat -o test-L. 表示链接的动态库在本地文件夹执行可执行文件时,需要添加本地目录到lib目录,否则会报“cannot open shared o...
调用so库文件以及里面的方法
之前文章写过一篇JNI生成<em>so库</em>文件   并<em>调用</em>里面的方法rn手把手教你---JNI的实现rnrn实际开发中  <em>so库</em>是别人给你的,不是你自己写的没所以就要用别人的<em>so库</em>文件。rn有很多情况,有一种是比较简单的:既有<em>so库</em>文件又有对应的jar包,这样的话  直接就可以<em>调用</em>里面的方法了。rn第二种比较坑爹,限制也比较多,所以现在就主要研究一下 第二种吧(只有<em>so库</em>  其他什么都没有)rnrnrn第一
【亲测】python中调用so文件
文章链接: nhttps://mp.weixin.qq.com/s?__biz=MzIxNTUzNjMyNA==&mid=2247483731&idx=1&sn=66b3b10a9efffb87c33b1bd2a077c461&chksm=979786f8a0e00fee7e5238c93442b07b92464868b96e9bbf45b6c9a067d3edff9a55f4466603#rd
JAVA调用SO库的示意图
JNI方式<em>调用</em>SO库nnnn关于JNI的API已经放在:供使用JNI时参考nn首先知道n用JNI<em>调用</em>别人提供的.so文件,现在要在Windows系统下测试运行情况,提出了核心问题:怎么在Windows下使用eclipse java程序<em>调用</em>.so文件?上网查全是在Linux下调.so或者在Windows下调.dll文件,跟我的情况不匹配。以下是我的思考与总结:nn这个问题的本质其实在于JNI的缺点...
Android中调用.so库操作步骤
参考:http://www.cnblogs.com/anyanran/archive/2010/11/22/ndk1.html nhttp://www.cnblogs.com/sevenyuan/p/4202759.html n感谢前辈做了这么详细的记录。 n下面是自己根据前辈的记录实现的。 n1.<em>创建</em>AndroidSoTest安卓项目,包名:package com.ybs.androidsotes
AS引用第三方so或者a库
直接将第三方库放到src/main/jniLibs目录中即可n使用CMake生成库时存在依赖关系时需要在CMakeLists.txt文件中进行说明。nn
调用第三方so库文件,包括纯C的库文件
最近项目需要去<em>调用</em>纯C的库文件,想到利用JNI封装个so文件<em>调用</em>第三方的so文件的函数项目下载地址:https://download.csdn.net/download/vlong5461/10340727java文件中:public class myJNI {nn static {n System.loadLibrary(&quot;myJNILib&quot;);n System.load...
Android studio使用JNI实例(2)- 调用外部so库
本文详细介绍了Android APK开发<em>如何</em>使用外部库,每个步骤都详细谁明,大部分都配有截图,适合初学者参考。
Linux下调用.so库遇到的问题
网上说高版本的gcc可以兼容低版本gcc编译出来的动态<em>so库</em>。但好像并不可以。用树霉派gcc6.3.0版本dlopen一个4.6gcc版本编译出来的<em>so库</em>,吐血得发现报的错误是no such file or directory,一直以为是我自己打开的方式不对,结果试了下自己写一个.so动态库文件,按照原来<em>调用</em>方法是可以打开的  https://blog.csdn.net/hnxijie/artic...
Java的JNA调用C语言的So动态链接库
Java的JNA<em>调用</em>C++的So动态链接库nnnnJava的JNA<em>调用</em>C++的So动态链接库nJNA简介nJNA技术原理nJNA链接nJNA ExamplesnnnJNA demon编写Son设置JNA的jar包n编写Javannn参考链接nnnnnnnnnnJNA简介nn先说JNI(Java Native Interface)吧,有过不同语言间通信经历的一般都知道,它允许Java代码和其他语言(...
构建嵌入式Linux系统.part1 PDF
构建<em>嵌入式</em>Linux系统.part1构建<em>嵌入式</em>Linux系统.part1构建<em>嵌入式</em>Linux系统.part1构建<em>嵌入式</em>Linux系统.part1构建<em>嵌入式</em>Linux系统.part1
so动态库反编译
n n n 动态库反编译,命令如下:nnm -D libwebrtc_jni.sonobjdump -tT libwebrtc_jni.son执行结果:n000048fd T Java_com_ingenic_util_WebRtcUtil_bufferFarendAndProcessn000048d9 T Java_com_ingenic_util_WebRtcUt...
制作嵌入式Linux根文件系统
文章目录1. 获取BusyBox源码2. 解压源码并进入根目录3. 配置BusyBox3-1. 选择编译静态库3-2. 选择交叉编译工具链3-3. 选择安装目录3-4. 编译安装rn1. 获取BusyBox源码rn  Busybox的官方源码下载路径为:https://busybox.net/downloads/。rn  目前最新版本为busybox-1.29.3.tar.bz2。rn2. 解压源码并进入...
vs2015跨平台linux开发so库例子
vs2015跨平台linux开发<em>so库</em>例子,http://www.cnblogs.com/jiftle/p/8401887.html
使用嵌入式 Linux 进行实时系统开发
对于实时、决策或者低延时应用,Linux能够提供多种方案。第一种方法是和 Linux 内核一起运行一个 hypervisor或者co-kernel。这种方案中hypervisor或者co-kernel的优先级高于 Linux,实时任务则运行于其中。另外一种方式是使用非对称异构多核系统,Linux和另外一个实时内核分别运行在不同处理器内核上。最后,还可使 Linux 更具抢占性从而提高其实时性能。这
java调用so库
Jnative的使用(Linux系统下so<em>调用</em>) n1.环境配置 n下载JNative_src.zip和JNative.jar,JNative_src解压会有JNativeCpp.dll和libJNativeCpp.so。JNativeCpp.dll是针对Windows,将其放在system32下面,libJNativeCpp.so是针对Linux,将其放在/usr/lib/下面。 n2.新建<em>so库</em>
buildroot工作原理(第14zhan)
定制生成的目标文件系统rnrnrn在目标文件系统上添加或覆盖文件(使用 BR2_ROOTFS_OVERLAY)修改或删除目标文件系统上的文件(使用 BR2_ROOTFS_POST_BUILD_SCRIPT)在生成文件系统映像之前运行任意命令(使用BR2_ROOTFS_POST_BUILD_SCRIPT)设置文件权限和所有权(使用 BR2_ROOTFS_DEVICE_TABLE)添加自定义设备节点(
AS的那些坑---so库的依赖
写在前头rnrn图片请无视,在51cto上面写的博客没办法发表,还是csdn牛逼,转移阵地rnrnrn这篇blog是用来泄愤的,感觉没有写的话我今天自己受自己的那些气就白受了rnrn因为<em>so库</em>的依赖问题,我把腾讯地图改成了百度地图rnrn还是因为so的问题,改了百度地图差点又换成高德了rnrn然而想想,肯定不是so的问题,绝逼是依赖的方式不对rnrn因为Demo完全没问题rnrn然后就懵逼了一天r
生成、调用jar及引入第三方so库
步骤如下:一、直接把jar放入app-libs下,添加jar,其中出现箭头表示添加成功:二、添加第三方<em>so库</em>,放入app-libs下,在build.gradle中的android下添加如下代码,即可<em>调用</em>jar中的jni的函数:sourceSets {n main {n jni.srcDirs = ['src/main/jni', 'src/main/jni/']n ...
RK3399嵌入式开发板QT下wifi 移植方法
RK3399的CPU采用big.LITTLE大小核架构,双Cortex-A72大核+四Cortex-A53小核结构,对整数、浮点、内存等作了大幅优化,在整体性能、功耗及核心面积三个方面都具革命性提升。 RK3399的GPU采用四核ARM新一代高端图像处理器Mali-T860,集成更多带宽压缩技术:如智能迭加、ASTC、本地像素存储等,还支持更多的图形和计算接口,总体性能比上一代提升45%。
将博客搬至CSDN —— python 调用 so 库 需要注意的地方
两年前在oschina写的博客,现在搬到CSDN。
嵌入式Linux系统优化的那些事儿
% Keven @ keven@ongoingcre.com n% \today从今天开始我们来扯一扯<em>嵌入式</em>Linux系统优化的那些事儿。。什么是<em>嵌入式</em>?官方解释请自行Google Or Wikipedia。<em>嵌入式</em>Linux ?<em>嵌入式</em>Linux 是<em>嵌入式</em>系统中比较主流的一种,其以Linux 为<em>嵌入式</em>设备的操作系统,并广泛用于消费电子,移动电话,航天航空电子中。 n比起发行版的Linux 系统,<em>嵌入式</em>
buildroot使用外部编译器
有时需要使用<em>buildroot</em>编译一个工具软件进行调试使用,又不想自己单独去下载软件然后配置编译,还要解决各种依赖库问题,就在<em>buildroot</em>里面配置自己的编译器然后选中需要的软件工具进行编译,节省开发时间。nn安装编译器nnn[yubo.wang@localhost <em>buildroot</em>-2019.02]$ ls /opt/hisi-linux/x86-arm/arm-hisiv300-linu...
linux下jni调用出现找不到动态库错误
异常信息:rn rnException in thread &quot;main&quot; java.lang.UnsatisfiedLinkError: no rnsnmpNetVista in java.library.path at rnjava.lang.ClassLoader.loadLibrary(ClassLoader.java:1682) at rnjava.lang.Runtime.loadLib...
构建嵌入式Linux系统.part4
构建<em>嵌入式</em>Linux系统.part4构建<em>嵌入式</em>Linux系统.part4构建<em>嵌入式</em>Linux系统.part4构建<em>嵌入式</em>Linux系统.part4
Centos中用jna调用.so文件详细过程(.so文件嵌套调用.so文件)
写出本文,作者本人也是花去了一些时间的,在摸索的过程中遇到了很多问题,然后通过度娘来解决这些问题,最后进行一下的这些总结。我是一个linux新手,只是在做项目的过程遇到了这个问题,就将它记录下来,分享给大家。如有错误,请大家指正,谢谢!rn1、首先当然是需要搭建Java环境和安装gcc,这个过程百度一搜一大把rn2、生成第一个.so文件libtest1.sorn(1)先写一个简单的test1.h头
嵌入式Linux系统的电源管理
<em>嵌入式</em>Linux系统的电源管理 <em>嵌入式</em>Linux系统的电源管理 <em>嵌入式</em>Linux系统的电源管理
Linux应用开发———将so库加入到系统开发的动态链接库中
今天使用科大讯飞的语音识别和合成程序,在他们的demo中有个动态链接库,运行程序提示:n    提示找不到动态链接库。n    然后将这个动态链接库加入到系统的默认自动搜索的链接库中:nnn    之后再运行程序就可以了,注意运行ldconfig命令的时候前面一定要加上sudo。
c语言调用so库函数并生成可执行文件
Cat.c int add(int a,int b){    return a + b; } 生成so gcc -fPIC -shared cat.c -o libcat.so main.c #include &amp;lt;stdio.h&amp;gt; #include &amp;lt;stdlib.h&amp;gt; #include &amp;lt;dlfcn.h&amp;gt; typedef int(* Add)(int, int)...
Java 调c/c++ so库中接口
1、vs2013 新建win32 dll 空项目,main.h :nnextern &quot;C&quot; _declspec(dllexport) void hello();  n extern &quot;C&quot; _declspec(dllexport) int add(int first, int second);  n2、main.cpp,然后生成dll文件 :nn#include &quot;main.h&quot;  n #incl...
构建嵌入式linux系统 构建嵌入式linux系统
构建<em>嵌入式</em><em>linux系统</em> 构建<em>嵌入式</em><em>linux系统</em> 构建<em>嵌入式</em><em>linux系统</em>
Android平台调用so库中函数的流程及一些坑
一.Android平台如果要<em>调用</em>一些C/C++语言的所编译生成的库的函数一般要进行一下几个步骤。nnn     1.确保我们的<em>so库</em>是用 ndk 或者 arm-linux-androideabi-gcc编译而成,<em>如何</em>编译参考上一篇文章。nnn     2.如果我们的安卓应用程序是在studio中开发用java所写,那么我们 需要配置以下内容:nnna:  去Android官网下载
Android Studio下JNI编程(引入外部或AS自行编译so文件)
1. 引用外部so文件n已验证过的引用外部so文件主要有三种方式:n1.1  main目录下<em>创建</em>jniLibs目录,so文件按平台存放于子目录下(最简单方式)n只需在app/src/main目录下<em>创建</em>jniLibs目录,然后将so文件按平台存放于对应子目录下即可。nnnnn1.2 将jniLibs重定向到libs目录。(Eclipse项目习惯)n将so文件放在app/libs目录
Linux下简单编译so库,调用另一个so库的方法
linux下将c/c++编译成<em>so库</em>gcc -fPIC -shared Cat.c -o libcat.so-fPIC是压制警告 n-shared是生成动态库 nCat.c是要编译的文件 n-o是要生成的文件的名称linux下将c/c++生成可执行文件gcc -rdynamic -o main main.c -ldl-rdynamic是生成可执行文件 n-o是生成的文件的名称 nmain.c是要编译
嵌入式linux-busybox 工具静态编译
      <em>嵌入式</em>linux因资源紧缺,所以在制作根文件系统时,使用的是经过裁剪之后的busybox,然而很多工具都没有添加到根文件系统内部(如:traceroute)。假设现在要使用traceroute工具,需按照如下步骤添加:nn1. 下载busyboxnn     https://busybox.net/downloads/,这里下载的是 busybox-1.23.1.tar.bz2nn2....
第四节: Buildroot目录结构
<em>buildroot</em>/output: 是编译出来的输出文件夹. noutput/build: 存放解压后的各种软件包编译完成后的现场. noutput/host: 存放着制作好的编译工具链,如gcc、arm-linux-gcc等工具. noutput/images: 存放着编译好的uboot.bin, zImage, rootfs等镜像文件,可烧写到板子里, 让<em>linux系统</em>跑起来. noutput...
通过QT在linux系统下对c++进行封装获得动态链接库(.so文件)并在在其他程序中调用
 nn nnn 打开qt新建项目,选择这个n nnn2、生成了两个.h文件和一个main.c文件,这里参照.h文件构建头文件,声明函数变量等,也就是展现给客户使用的部分。nnnn3、之后在.c文件中对自己的函数进行定义nnnn4、点编译,就可以了,可以看到在项目文件夹中生成了.so文件。nn2在其他程序中<em>调用</em>.so共享库nn1、通过qt新建一个空的控制台应用程序nn2、在项目的.pro文件中通过以...
linux下共享库(.so文件)的调用
需要的文件 libxxxx.so 、xxxx.hrn记住 复制文件的时候千万不要用ROOT权限,不然编译时会找不到这个共享库。最好时把库放到/usr/librnchmod 777 rnchown usernamernCMakeLists.txt写法:rnlink_directories(/home/yanlei/catkin_new/src/motordriver/include/motordri
codeblocks配置生成动态库.so的环境
1.建立工程,选择shared library2.compiler setting->Other compiler options: -shared -fPIC3.配置运行生成动态库的程序所需要的环境, n比如opencv可参考http://blog.csdn.net/llwjason5555/article/details/78276757, ncaffe可参考http://blog.csdn
linux全志R16的linux系统编译的资料_20170502_1655.7z
全志R16平台编译<em>linux系统</em>V1.0.txt 2017/4/11 13:36 (编译请使用编译android的lichee的选项编译生成的.config文件,不然直接编译会报错!!!!) rootroot@cm-System-Product-Name:/home/wwt/linux_r16$ tar zxvf lichee_parrotv1.1_20161202.tar.gz rootroot@cm-System-Product-Name:/home/wwt/linux_r16$ cd lichee/ rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ ./build.sh config Welcome to mkscript setup progress All available chips: 0. sun8iw5p1 Choice: 0 All available platforms: 0. android 1. dragonboard 2. linux 3. tina Choice: 2 All available kernel: 0. linux-3.4 Choice: 0 All available boards: 0. bell-one 1. evb 2. evb-20 3. evb-30 4. evb-rtl8723bs 5. sc3813r Choice: 3 rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ ./build.sh 错误1: KCONFIG_AUTOCONFIG=/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/<em>buildroot</em>-config/auto.conf KCONFIG_AUTOHEADER=/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/<em>buildroot</em>-config/autoconf.h KCONFIG_TRISTATE=/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/<em>buildroot</em>-config/tristate.config BUILDROOT_CONFIG=/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/.config /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/<em>buildroot</em>-config/conf --silentoldconfig Config.in # # make dependencies written to .auto.deps # ATTENTION <em>buildroot</em> devels! # See top of this file before playing with this auto-preprequisites! # make[1]:正在离开目录 `/home/wwt/linux_r16/lichee/<em>buildroot</em>' You must install 'makeinfo' on your build machine makeinfo is usually part of the texinfo package in your distribution make: *** [dependencies] 错误 1 make:离开目录“/home/wwt/linux_r16/lichee/<em>buildroot</em>” ERROR: build <em>buildroot</em> Failed rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ d/<em>buildroot</em>-config/conf.o /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/<em>buildroot</em>-config/zconf.tab.o -o /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/<em>buildroot</em>-config/conf rm /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/<em>buildroot</em>-config/zconf.tab.c make[1]:正在离开目录 `/home/wwt/linux_r16/lichee/<em>buildroot</em>/package/config' # # configuration written to /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/.config # make:离开目录“/home/wwt/linux_r16/lichee/<em>buildroot</em>” make:进入目录'/home/wwt/linux_r16/lichee/<em>buildroot</em>' /usr/bin/make -j6 O=/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em> silentoldconfig make[1]: 正在进入目录 `/home/wwt/linux_r16/lichee/<em>buildroot</em>' GEN /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/Makefile KCONFIG_AUTOCONFIG=/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/<em>buildroot</em>-config/auto.conf KCONFIG_AUTOHEADER=/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/<em>buildroot</em>-config/autoconf.h KCONFIG_TRISTATE=/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/<em>buildroot</em>-config/tristate.config BUILDROOT_CONFIG=/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/.config /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/<em>buildroot</em>-config/conf --silentoldconfig Config.in # # make dependencies written to .auto.deps # ATTENTION <em>buildroot</em> devels! # See top of this file before playing with this auto-preprequisites! # make[1]:正在离开目录 `/home/wwt/linux_r16/lichee/<em>buildroot</em>' You must install 'makeinfo' on your build machine makeinfo is usually part of the texinfo package in your distribution make: *** [dependencies] 错误 1 make:离开目录“/home/wwt/linux_r16/lichee/<em>buildroot</em>” ERROR: build <em>buildroot</em> Failed rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ sudo apt-get install texinfo [sudo] password for rootroot: 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 下列软件包是自动安装的并且现在不需要了: fakeroot libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libfakeroot Use 'apt-get autoremove' to remove them. 将会安装下列额外的软件包: libencode-locale-perl libfile-listing-perl libfont-afm-perl libhtml-form-perl libhtml-format-perl libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl libhttp-cookies-perl libhttp-daemon-perl libhttp-date-perl libhttp-message-perl libhttp-negotiate-perl libintl-perl libio-html-perl liblwp-mediatypes-perl liblwp-protocol-https-perl libnet-http-perl libtext-unidecode-perl libwww-perl libwww-robotrules-perl libxml-libxml-perl libxml-namespacesupport-perl libxml-parser-perl libxml-sax-base-perl libxml-sax-expat-perl libxml-sax-perl 建议安装的软件包: libdata-dump-perl libintl-xs-perl libcrypt-ssleay-perl libauthen-ntlm-perl texinfo-doc-nonfree 下列【新】软件包将被安装: libencode-locale-perl libfile-listing-perl libfont-afm-perl libhtml-form-perl libhtml-format-perl libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl libhttp-cookies-perl libhttp-daemon-perl libhttp-date-perl libhttp-message-perl libhttp-negotiate-perl libintl-perl libio-html-perl liblwp-mediatypes-perl liblwp-protocol-https-perl libnet-http-perl libtext-unidecode-perl libwww-perl libwww-robotrules-perl libxml-libxml-perl libxml-namespacesupport-perl libxml-parser-perl libxml-sax-base-perl libxml-sax-expat-perl libxml-sax-perl texinfo 升级了 0 个软件包,新安装了 28 个软件包,要卸载 0 个软件包,有 737 个软件包未被升级。 需要下载 3,425 kB 的软件包。 解压缩后会消耗掉 13.0 MB 的额外空间。 您希望继续执行吗? [Y/n] y 获取:1 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libencode-locale-perl all 1.03-1 [12.4 kB] 获取:2 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libhttp-date-perl all 6.02-1 [10.4 kB] 获取:3 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libfile-listing-perl all 6.04-1 [9,774 B] 获取:4 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libfont-afm-perl all 1.20-1 [14.3 kB] 获取:5 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libhtml-tagset-perl all 3.20-2 [13.5 kB] 获取:6 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libhtml-parser-perl amd64 3.71-1build1 [98.2 kB] 获取:7 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libio-html-perl all 1.00-1 [15.7 kB] 获取:8 http://cn.archive.ubuntu.com/ubuntu/ trusty/main liblwp-mediatypes-perl all 6.02-1 [21.7 kB] 获取:9 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libhttp-message-perl all 6.06-1 [78.7 kB] 获取:10 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libhtml-form-perl all 6.03-1 [23.5 kB] 获取:11 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libhtml-tree-perl all 5.03-1 [215 kB] 获取:12 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libhtml-format-perl all 2.11-1 [44.7 kB] 获取:13 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libhttp-cookies-perl all 6.00-2 [23.3 kB] 获取:14 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libhttp-daemon-perl all 6.01-1 [17.0 kB] 获取:15 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libhttp-negotiate-perl all 6.00-2 [13.4 kB] 获取:16 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libintl-perl all 1.23-1build1 [1,204 kB] 获取:17 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libnet-http-perl all 6.06-1 [24.2 kB] 获取:18 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libwww-robotrules-perl all 6.01-1 [14.1 kB] 获取:19 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libwww-perl all 6.05-2 [146 kB] 获取:20 http://cn.archive.ubuntu.com/ubuntu/ trusty-updates/main liblwp-protocol-https-perl all 6.04-2ubuntu0.1 [7,644 B] 获取:21 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libtext-unidecode-perl all 0.04-2 [115 kB] 获取:22 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libxml-namespacesupport-perl all 1.11-1 [13.2 kB] 获取:23 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libxml-sax-base-perl all 1.07-1 [21.5 kB] 获取:24 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libxml-sax-perl all 0.99+dfsg-2ubuntu1 [64.6 kB] 获取:25 http://cn.archive.ubuntu.com/ubuntu/ trusty-updates/main libxml-libxml-perl amd64 2.0108+dfsg-1ubuntu0.1 [337 kB] 获取:26 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libxml-parser-perl amd64 2.41-1build3 [294 kB] 获取:27 http://cn.archive.ubuntu.com/ubuntu/ trusty/main libxml-sax-expat-perl all 0.40-2 [11.5 kB] 获取:28 http://cn.archive.ubuntu.com/ubuntu/ trusty/main texinfo amd64 5.2.0.dfsg.1-2 [561 kB] 下载 3,425 kB,耗时 2秒 (1,303 kB/s) Selecting previously unselected package libencode-locale-perl. (正在读取数据库 ... 系统当前共安装有 213805 个文件和目录。) Preparing to unpack .../libencode-locale-perl_1.03-1_all.deb ... Unpacking libencode-locale-perl (1.03-1) ... Selecting previously unselected package libhttp-date-perl. Preparing to unpack .../libhttp-date-perl_6.02-1_all.deb ... Unpacking libhttp-date-perl (6.02-1) ... Selecting previously unselected package libfile-listing-perl. Preparing to unpack .../libfile-listing-perl_6.04-1_all.deb ... Unpacking libfile-listing-perl (6.04-1) ... Selecting previously unselected package libfont-afm-perl. Preparing to unpack .../libfont-afm-perl_1.20-1_all.deb ... Unpacking libfont-afm-perl (1.20-1) ... Selecting previously unselected package libhtml-tagset-perl. Preparing to unpack .../libhtml-tagset-perl_3.20-2_all.deb ... Unpacking libhtml-tagset-perl (3.20-2) ... Selecting previously unselected package libhtml-parser-perl. Preparing to unpack .../libhtml-parser-perl_3.71-1build1_amd64.deb ... Unpacking libhtml-parser-perl (3.71-1build1) ... Selecting previously unselected package libio-html-perl. Preparing to unpack .../libio-html-perl_1.00-1_all.deb ... Unpacking libio-html-perl (1.00-1) ... Selecting previously unselected package liblwp-mediatypes-perl. Preparing to unpack .../liblwp-mediatypes-perl_6.02-1_all.deb ... Unpacking liblwp-mediatypes-perl (6.02-1) ... Selecting previously unselected package libhttp-message-perl. Preparing to unpack .../libhttp-message-perl_6.06-1_all.deb ... Unpacking libhttp-message-perl (6.06-1) ... Selecting previously unselected package libhtml-form-perl. Preparing to unpack .../libhtml-form-perl_6.03-1_all.deb ... Unpacking libhtml-form-perl (6.03-1) ... Selecting previously unselected package libhtml-tree-perl. Preparing to unpack .../libhtml-tree-perl_5.03-1_all.deb ... Unpacking libhtml-tree-perl (5.03-1) ... Selecting previously unselected package libhtml-format-perl. Preparing to unpack .../libhtml-format-perl_2.11-1_all.deb ... Unpacking libhtml-format-perl (2.11-1) ... Selecting previously unselected package libhttp-cookies-perl. Preparing to unpack .../libhttp-cookies-perl_6.00-2_all.deb ... Unpacking libhttp-cookies-perl (6.00-2) ... Selecting previously unselected package libhttp-daemon-perl. Preparing to unpack .../libhttp-daemon-perl_6.01-1_all.deb ... Unpacking libhttp-daemon-perl (6.01-1) ... Selecting previously unselected package libhttp-negotiate-perl. Preparing to unpack .../libhttp-negotiate-perl_6.00-2_all.deb ... Unpacking libhttp-negotiate-perl (6.00-2) ... Selecting previously unselected package libintl-perl. Preparing to unpack .../libintl-perl_1.23-1build1_all.deb ... Unpacking libintl-perl (1.23-1build1) ... Selecting previously unselected package libnet-http-perl. Preparing to unpack .../libnet-http-perl_6.06-1_all.deb ... Unpacking libnet-http-perl (6.06-1) ... Selecting previously unselected package libwww-robotrules-perl. Preparing to unpack .../libwww-robotrules-perl_6.01-1_all.deb ... Unpacking libwww-robotrules-perl (6.01-1) ... Selecting previously unselected package libwww-perl. Preparing to unpack .../libwww-perl_6.05-2_all.deb ... Unpacking libwww-perl (6.05-2) ... Selecting previously unselected package liblwp-protocol-https-perl. Preparing to unpack .../liblwp-protocol-https-perl_6.04-2ubuntu0.1_all.deb ... Unpacking liblwp-protocol-https-perl (6.04-2ubuntu0.1) ... Selecting previously unselected package libtext-unidecode-perl. Preparing to unpack .../libtext-unidecode-perl_0.04-2_all.deb ... Unpacking libtext-unidecode-perl (0.04-2) ... Selecting previously unselected package libxml-namespacesupport-perl. Preparing to unpack .../libxml-namespacesupport-perl_1.11-1_all.deb ... Unpacking libxml-namespacesupport-perl (1.11-1) ... Selecting previously unselected package libxml-sax-base-perl. Preparing to unpack .../libxml-sax-base-perl_1.07-1_all.deb ... Unpacking libxml-sax-base-perl (1.07-1) ... Selecting previously unselected package libxml-sax-perl. Preparing to unpack .../libxml-sax-perl_0.99+dfsg-2ubuntu1_all.deb ... Unpacking libxml-sax-perl (0.99+dfsg-2ubuntu1) ... Selecting previously unselected package libxml-libxml-perl. Preparing to unpack .../libxml-libxml-perl_2.0108+dfsg-1ubuntu0.1_amd64.deb ... Unpacking libxml-libxml-perl (2.0108+dfsg-1ubuntu0.1) ... Selecting previously unselected package libxml-parser-perl. Preparing to unpack .../libxml-parser-perl_2.41-1build3_amd64.deb ... Unpacking libxml-parser-perl (2.41-1build3) ... Selecting previously unselected package libxml-sax-expat-perl. Preparing to unpack .../libxml-sax-expat-perl_0.40-2_all.deb ... Unpacking libxml-sax-expat-perl (0.40-2) ... Selecting previously unselected package texinfo. Preparing to unpack .../texinfo_5.2.0.dfsg.1-2_amd64.deb ... Unpacking texinfo (5.2.0.dfsg.1-2) ... Processing triggers for man-db (2.6.7.1-1) ... Processing triggers for doc-base (0.10.5) ... Processing 1 added doc-base file... 正在设置 libencode-locale-perl (1.03-1) ... 正在设置 libhttp-date-perl (6.02-1) ... 正在设置 libfile-listing-perl (6.04-1) ... 正在设置 libfont-afm-perl (1.20-1) ... 正在设置 libhtml-tagset-perl (3.20-2) ... 正在设置 libhtml-parser-perl (3.71-1build1) ... 正在设置 libio-html-perl (1.00-1) ... 正在设置 liblwp-mediatypes-perl (6.02-1) ... 正在设置 libhttp-message-perl (6.06-1) ... 正在设置 libhtml-form-perl (6.03-1) ... 正在设置 libhtml-tree-perl (5.03-1) ... 正在设置 libhtml-format-perl (2.11-1) ... 正在设置 libhttp-cookies-perl (6.00-2) ... 正在设置 libhttp-daemon-perl (6.01-1) ... 正在设置 libhttp-negotiate-perl (6.00-2) ... 正在设置 libintl-perl (1.23-1build1) ... 正在设置 libnet-http-perl (6.06-1) ... 正在设置 libwww-robotrules-perl (6.01-1) ... 正在设置 libtext-unidecode-perl (0.04-2) ... 正在设置 libxml-namespacesupport-perl (1.11-1) ... 正在设置 libxml-sax-base-perl (1.07-1) ... 正在设置 libxml-sax-perl (0.99+dfsg-2ubuntu1) ... update-perl-sax-parsers: Registering Perl SAX parser XML::SAX::PurePerl with priority 10... update-perl-sax-parsers: Updating overall Perl SAX parser modules info file... Creating config file /etc/perl/XML/SAX/ParserDetails.ini with new version 正在设置 libxml-libxml-perl (2.0108+dfsg-1ubuntu0.1) ... update-perl-sax-parsers: Registering Perl SAX parser XML::LibXML::SAX::Parser with priority 50... update-perl-sax-parsers: Registering Perl SAX parser XML::LibXML::SAX with priority 50... update-perl-sax-parsers: Updating overall Perl SAX parser modules info file... Replacing config file /etc/perl/XML/SAX/ParserDetails.ini with new version 正在设置 texinfo (5.2.0.dfsg.1-2) ... Running mktexlsr. This may take some time. ... done. 正在设置 libwww-perl (6.05-2) ... 正在设置 liblwp-protocol-https-perl (6.04-2ubuntu0.1) ... 正在设置 libxml-parser-perl (2.41-1build3) ... 正在设置 libxml-sax-expat-perl (0.40-2) ... update-perl-sax-parsers: Registering Perl SAX parser XML::SAX::Expat with priority 50... update-perl-sax-parsers: Updating overall Perl SAX parser modules info file... Replacing config file /etc/perl/XML/SAX/ParserDetails.ini with new version rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ ./build.sh http://blog.csdn.net/linuxarmsummary/article/details/12775457 msgfmt包错误 makeinfo 包错误 错误2: e.o -MD -MP -MF .deps/execute.Tpo -c -o execute.o execute.c /usr/bin/gcc -std=gnu99 -I. -O2 -I/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/host/include -I/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/host/usr/include -MT exitfail.o -MD -MP -MF .deps/exitfail.Tpo -c -o exitfail.o exitfail.c In file included from clean-temp.h:22:0, from clean-temp.c:23: ./stdio.h:456:1: error: 'gets' undeclared here (not in a function) _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); ^ mv -f .deps/exitfail.Tpo .deps/exitfail.Po /usr/bin/gcc -std=gnu99 -I. -O2 -I/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/host/include -I/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/host/usr/include -MT fatal-signal.o -MD -MP -MF .deps/fatal-signal.Tpo -c -o fatal-signal.o fatal-signal.c mv -f .deps/c-ctype.Tpo .deps/c-ctype.Po /usr/bin/gcc -std=gnu99 -I. -O2 -I/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/host/include -I/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/host/usr/include -MT fd-safer-flag.o -MD -MP -MF .deps/fd-safer-flag.Tpo -c -o fd-safer-flag.o fd-safer-flag.c mv -f .deps/c-stack.Tpo .deps/c-stack.Po make[4]: *** [clean-temp.o] Error 1 make[4]: *** Waiting for unfinished jobs.... mv -f .deps/execute.Tpo .deps/execute.Po mv -f .deps/fd-safer-flag.Tpo .deps/fd-safer-flag.Po mv -f .deps/fatal-signal.Tpo .deps/fatal-signal.Po mv -f .deps/gl_avltree_oset.Tpo .deps/gl_avltree_oset.Po make[4]: Leaving directory `/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-m4-1.4.15/lib' make[3]: *** [all] Error 2 make[3]: Leaving directory `/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-m4-1.4.15/lib' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-m4-1.4.15' make[1]: *** [all] 错误 2 make[1]:正在离开目录 `/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-m4-1.4.15' make: *** [/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-m4-1.4.15/.stamp_built] 错误 2 make:离开目录“/home/wwt/linux_r16/lichee/<em>buildroot</em>” ERROR: build <em>buildroot</em> Failed rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ find . -name stdio.in.h ./out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-m4-1.4.15/lib/stdio.in.h rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ Z:\home\wwt\linux_r16\lichee\out\sun8iw5p1\linux\common\<em>buildroot</em>\build\host-m4-1.4.15\lib\stdio.in.h // 2017/5/2 14:13 wenyuanbo add!!!! //_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); #if defined(__GLIBC__) && !defined(__UCLIBC__) && !__GLIBC_PREREQ(2, 16) _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); #endif http://www.cnblogs.com/hjj801006/p/3988220.html 'gets' undeclared here (not in a function) rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ ./build.sh 错误3: make[3]: Leaving directory `/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-autoconf-2.65/lib' Making install in doc make[3]: Entering directory `/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-autoconf-2.65/doc' restore=: && backupdir=".am$$" && \ am__cwd=`pwd` && CDPATH="${ZSH_VERSION+.}:" && cd . && \ rm -rf $backupdir && mkdir $backupdir && \ if (/bin/sh /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-autoconf-2.65/build-aux/missing --run makeinfo --version) >/dev/null 2>&1; then \ for f in autoconf.info autoconf.info-[0-9] autoconf.info-[0-9][0-9] autoconf.i[0-9] autoconf.i[0-9][0-9]; do \ if test -f $f; then mv $f $backupdir; restore=mv; else :; fi; \ done; \ else :; fi && \ cd "$am__cwd"; \ if /bin/sh /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-autoconf-2.65/build-aux/missing --run makeinfo --no-split -I . \ -o autoconf.info autoconf.texi; \ then \ rc=0; \ CDPATH="${ZSH_VERSION+.}:" && cd .; \ else \ rc=$?; \ CDPATH="${ZSH_VERSION+.}:" && cd . && \ $restore $backupdir/* `echo "./autoconf.info" | sed 's|[^/]*$||'`; \ fi; \ rm -rf $backupdir; exit $rc conftest.c:14625: must be after `@defmac' to use `@defmacx' make[3]: *** [autoconf.info] Error 1 make[3]: Leaving directory `/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-autoconf-2.65/doc' make[2]: *** [install-recursive] Error 1 make[2]: Leaving directory `/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-autoconf-2.65' make[1]: *** [install] 错误 2 make[1]:正在离开目录 `/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-autoconf-2.65' make: *** [/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-autoconf-2.65/.stamp_host_installed] 错误 2 make:离开目录“/home/wwt/linux_r16/lichee/<em>buildroot</em>” ERROR: build <em>buildroot</em> Failed rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ find . -name autoconf.texi ./out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-autoconf-2.65/doc/autoconf.texi rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ Z:\home\wwt\linux_r16\lichee\out\sun8iw5p1\linux\common\<em>buildroot</em>\build\host-autoconf-2.65\doc\autoconf.texi @r{[}@var{\varname\}@r{]}@c (修改为:) @r{[}@var{\varname\}@r{]} @r{[}@var{\varname\} = @samp{\default\}@r{]}@c (修改为:) @r{[}@var{\varname\} = @samp{\default\}@r{]} http://blog.csdn.net/laohuang1122/article/details/44098291/ Ubuntu14.04编译Allwinner lichee 两个出错解决方法 rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ ./build.sh 错误4: libtool: install: ranlib /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/host/usr/lib/libfakeroot.a libtool: finish: PATH="/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/host/bin:/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/host/usr/bin:/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/external-toolchain/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/cm/cm/R58/r58_new20161012/android/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.7/arm-linux-androideabi/bin:/home/cm/cm/R58/r58_new20161012/android/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.7/bin:/opt/jdk1.6.0_45/bin:/opt/jdk1.6.0_45/jre/bin:/sbin" ldconfig -n /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/host/usr/lib ---------------------------------------------------------------------- Libraries have been installed in: /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/host/usr/lib If you ever happen to want to link against installed libraries in a given directory, LIBDIR, you must either use libtool, and specify the full pathname of the library, or use the `-LLIBDIR' flag during linking and do at least one of the following: - add LIBDIR to the `LD_LIBRARY_PATH' environment variable during execution - add LIBDIR to the `LD_RUN_PATH' environment variable during linking - use the `-Wl,-rpath -Wl,LIBDIR' linker flag - have your system administrator add LIBDIR to `/etc/ld.so.conf' See any operating system documentation about shared libraries for more information, such as the ld(1) and ld.so(8) manual pages. ---------------------------------------------------------------------- test -z "/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/host/usr/bin" || /bin/mkdir -p "/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/host/usr/bin" /bin/sh ./libtool --mode=install /usr/bin/install -c 'faked' '/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/host/usr/bin/faked' libtool: install: /usr/bin/install -c faked /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/host/usr/bin/faked make[3]:正在离开目录 `/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-fakeroot-1.9.5' make[2]:正在离开目录 `/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-fakeroot-1.9.5' make[1]:正在离开目录 `/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-fakeroot-1.9.5' rm -rf /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-makedevs mkdir /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-makedevs cp package/makedevs/makedevs.c /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-makedevs cc -Wall -Werror -O2 /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-makedevs/makedevs.c -o /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-makedevs/makedevs /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-makedevs/makedevs.c: In function ‘main’: /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-makedevs/makedevs.c:374:6: error: variable ‘ret’ set but not used [-Werror=unused-but-set-variable] int ret = EXIT_SUCCESS; ^ cc1: all warnings being treated as errors make: *** [/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-makedevs/makedevs] 错误 1 make:离开目录“/home/wwt/linux_r16/lichee/<em>buildroot</em>” ERROR: build rootfs Failed rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ find . -name makedevs.c ./<em>buildroot</em>/package/makedevs/makedevs.c ./out/sun8iw5p1/linux/common/<em>buildroot</em>/build/host-makedevs/makedevs.c ./out/sun8iw5p1/linux/common/<em>buildroot</em>/build/busybox-1.18.3/miscutils/makedevs.c rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ http://blog.csdn.net/laohuang1122/article/details/44098291/ Ubuntu14.04编译Allwinner lichee 两个出错解决方法 rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ ./build.sh 5、编译成功: /local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/cm/cm/R58/r58_new20161012/android/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.7/arm-linux-androideabi/bin:/home/cm/cm/R58/r58_new20161012/android/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.7/bin:/opt/jdk1.6.0_45/bin:/opt/jdk1.6.0_45/jre/bin"" >> /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/_fakeroot.fs chmod a+x /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/_fakeroot.fs /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/host/usr/bin/fakeroot -- /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/build/_fakeroot.fs rootdir=/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/target table='target/generic/device_table.txt' Warning: skip syncing -d /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/target /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/images/rootfs.ext4 -N 1399 -b 42633 tune2fs 1.42.9 (4-Feb-2014) Creating journal inode: 完成 This filesystem will be automatically checked every 20 mounts or 0 days, whichever comes first. Use tune2fs -c or -i to override. e2fsck 1.42.9 (4-Feb-2014) 文件系统缺少UUID;正在生成一个。 Adding dirhash hint to 文件系统. /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/images/rootfs.ext4: clean, 1009/1440 files, 38102/42633 blocks busybox directfb directfb-examples divine dosfstools e2fsprogs ethtool ext4-utils freetype fsck-msdos fuse-exfat libfuse i2c-tools input-tools iostat iperf iw jpeg libnl libpcap libpng memstat memtester ntfs-3g openssh openssl portmap strace stress sysstat szrz tcpdump tiobench tslib udev which wireless_tools wpa_supplicant zlib target-generic-hostname target-generic-issue target-generic-getty-busybox target-finalize target-purgelocales /home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/host/bin:/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/host/usr/bin:/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/host/usr/sbin/:/home/wwt/linux_r16/lichee/out/sun8iw5p1/linux/common/<em>buildroot</em>/external-toolchain/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/cm/cm/R58/r58_new20161012/android/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.7/arm-linux-androideabi/bin:/home/cm/cm/R58/r58_new20161012/android/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.7/bin:/opt/jdk1.6.0_45/bin:/opt/jdk1.6.0_45/jre/bin make:离开目录“/home/wwt/linux_r16/lichee/<em>buildroot</em>” INFO: build rootfs OK. INFO: ---------------------------------------- INFO: build lichee OK. INFO: ---------------------------------------- rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ 6、打包: rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ ./build.sh pack INFO: packing firmware ... copying tools file copying configs file ./out/aultls32.fex ./out/aultools.fex ./out/cardscript.fex ./out/cardtool.fex ./out/diskfs.fex ./out/env_burn.cfg ./out/env.cfg ./out/image.cfg "./out/image_linux.cfg" -> "./out/image.cfg" ./out/split_xxxx.fex ./out/sys_config.fex ./out/sys_partition_dragonboard.fex ./out/sys_partition_dump.fex ./out/sys_partition.fex "./out/sys_partition_linux.fex" -> "./out/sys_partition.fex" ./out/sys_partition_private.fex ./out/sys_partition_tina.fex ./out/test_config.fex ./out/usbtool.fex ./out/usbtool_test.fex copying boot resource copying boot file packing for linux normal /home/wwt/linux_r16/lichee/tools/pack/pctools/linux/eDragonEx/ /home/wwt/linux_r16/lichee/tools/pack/out Begin Parse sys_partion.fex Add partion boot-resource.fex BOOT-RESOURCE_FEX Add partion very boot-resource.fex BOOT-RESOURCE_FEX FilePath: boot-resource.fex FileLength=453400Add partion env.fex ENV_FEX000000000 Add partion very env.fex ENV_FEX000000000 FilePath: env.fex FileLength=20000Add partion boot.fex BOOT_FEX00000000 Add partion very boot.fex BOOT_FEX00000000 FilePath: boot.fex FileLength=c5a000Add partion rootfs.fex ROOTFS_FEX000000 Add partion very rootfs.fex ROOTFS_FEX000000 FilePath: rootfs.fex FileLength=29a2400sys_config.fex Len: 0xf450 config.fex Len: 0x9ac8 split_xxxx.fex Len: 0x200 sys_partition.fex Len: 0xa80 boot0_nand.fex Len: 0x8000 boot0_sdcard.fex Len: 0x8000 u-boot.fex Len: 0xc4000 fes1.fex Len: 0x1fc0 usbtool.fex Len: 0x23000 aultools.fex Len: 0x26ead aultls32.fex Len: 0x238dd cardtool.fex Len: 0x14000 cardscript.fex Len: 0x6ea sunxi_mbr.fex Len: 0x10000 dlinfo.fex Len: 0x4000 arisc.fex Len: 0x2ed88 vmlinux.fex Len: 0x2c78baa boot-resource.fex Len: 0x453400 Vboot-resource.fex Len: 0x4 env.fex Len: 0x20000 Venv.fex Len: 0x4 boot.fex Len: 0xc5a000 Vboot.fex Len: 0x4 rootfs.fex Len: 0x29a2400 Vrootfs.fex Len: 0x4 BuildImg 0 Dragon execute image.cfg SUCCESS ! ----------image is at---------- /home/wwt/linux_r16/lichee/tools/pack/sun8iw5p1_linux_evb-30_uart0.img pack finish rootroot@cm-System-Product-Name:/home/wwt/linux_r16/lichee$ 7、刷机完成开机(请注意:sun8i login: root): UUUUUUUUUU?UU?UaUaUaUaUaU*UaUaUaUaUaUaUaUaUUa?Ua?UUUUUUUUUUUU[0.33] boot0 version : 4.0.0 [0.35] fel_flag = 0x00000000 [0.38] rtc[0] value = 0x00000000 [0.41] rtc[1] value = 0x00000000 [0.44] rtc[2] value = 0x00000000 [0.47] rtc[3] value = 0x00000000 [0.51] DRAM DRIVE INFO: V1.6 [0.54] DRAM Type =3 (2:DDR2,3:DDR3,6:LPDDR2,7:LPDDR3) [0.59] DRAM zq value: 00003bbb[0.62] DRAM CLK =600 MHZ [0.64] ID CHECK VERSION: V0.1 [0.67] using ic R16 [0.69] USE PLL DDR1 [0.75] USE PLL NORMAL [0.77] PLL FREQUENCE = 1200 MHZ [0.90] DRAM PLL DDR1 frequency extend open ! [0.94] DRAM master priority setting ok. [0.108] Auto calculate timing parameter! [0.111] para_dram_tpr0 = 0047a14f [0.114] para_dram_tpr1 = 01c2294c [0.118] para_dram_tpr2 = 00069049 [0.121] tcl = 6,tcwl = 4 [0.123] DRAM TIMING PARA0 = 0b0f180c [0.126] DRAM TIMING PARA1 = 0003040f [0.130] DRAM TIMING PARA2 = 0406050a [0.133] DRAM TIMING PARA3 = 0000400c [0.137] DRAM TIMING PARA4 = 05020405 [0.140] DRAM TIMING PARA5 = 05050403 [0.144] DRAM TIMING PARA8 = 90003310 [0.147] DRAM PHY INTERFACE PARA = 02040102 [0.151] DRAM VTC is disable [0.153] DRAM dynamic DQS/DQ ODT is on [0.157] DRAM DQS gate is PD mode. [0.160] DRAM one rank training is on,the value is 91003587 [0.169] DRAM work mode register value = 004318e4 [0.173] DRAM SIZE =512 M [0.175] set one rank ODTMAP [0.180] DRAM simple test OK. [0.182] dram size =512 [0.184] card boot number = 2 [0.187] card no is 2 [0.189] sdcard 2 line count 8 [0.192] [mmc]: mmc driver ver 2015-01-15 14:21:39 [0.203] [mmc]: ***MMC card 2*** [0.227] [mmc]: 8bit ddr!!! [0.229] [mmc]: MMC ver 4.41 [0.232] [mmc]: SD/MMC Card: 8bit, capacity: 3728MB [0.237] [mmc]: vendor: Man 00150100 Snr 00ef0719 [0.241] [mmc]: product: M4G1F [0.244] [mmc]: revision: 4.2 [0.247] [mmc]: ***SD/MMC 2 init OK!!!*** [0.250] sdcard 2 init ok [0.254] The size of uboot is 000c4000. [0.312] sum=ad4be991 [0.313] src_sum=ad4be991 [0.316] set_mmc_para,sdly 50M 0 [0.319] set_mmc_para,sdly 25M 0 [0.322] Succeed in loading uboot from sdmmc flash. [0.326] Ready to disable icache. [0.330] Jump to secend Boot. [ 0.332]U-Boot 2011.09-rc1-00019-g42e29c6-dirty (Mar 19 2015 - 17:08:40) Allwinner Technology [0.346]normal or secure os [0.348]pmbus: ready [0.350]PMU: AXP221 [0.352]PMU: AXP22x found [0.355]bat_vol=0, ratio=100 [0.357]PMU: dcdc3 1200 [0.360]PMU: pll1 1008 Mhz,PLL6=600 Mhz [0.363]AXI=336 Mhz,AHB=200 Mhz, APB1=100 Mhz [0.370]set power on vol to default [0.373]dcdc1_vol = 3000 [0.375]dcdc2_vol = 1100 [0.377]dcdc3_vol = 1200 [0.380]dcdc4_vol = 0 [0.382]dcdc5_vol = 1500 [0.384]aldo2_vol = 2500 [0.386]aldo3_vol = 3000 [0.388]find power_sply to end [0.468]vbus exist [0.469]no battery, limit to dc [0.472]fel key new mode [0.474]run key detect [0.487]no key found [0.488]no key input [0.490]dram_para_set start [0.494]dram_para_set end [0.496]DRAM: [0.498]512[0.498] MiB [0.500]relocation Offset is: 15b0a000 [0.541]smcl's set manager is NULL [0.544] [0.546]workmode = 0 [0.548]MMC: 2 [0.549][mmc]: mmc driver ver 2014-12-10 9:23:00 [0.554][mmc]: get sdc_phy_wipe fail. [0.557][mmc]: get sdc0 sdc_erase fail. [0.560][mmc]: get sdc_2xmode ok, val = 1 [0.564][mmc]: get sdc_ddrmode ok, val = 1 [0.568][mmc]: get sdc_f_max fail,use default 50000000Hz [0.573][mmc]: get card_line ok, card_line = 8 [0.577][mmc]: get sdc_ex_dly_used fail,use default [0.581][mmc]: SUNXI SD/MMC: 2[0.584] [0.595][mmc]: MMC card 2* [0.633][mmc]: ddr8 [0.643][mmc]: CID 0x1501004d 0x34473146 0x4200ef07 0x19dcce21 [0.648][mmc]: MMC ver 4.41 [0.650][mmc]: mmc clk 50000000 [0.653][mmc]: SD/MMC Card: 8bit, capacity: 3728MB [0.657][mmc]: boot0 capacity: 1000KB,boot1 capacity: 1000KB [0.663][mmc]: ***SD/MMC 2 init OK!!!*** [0.667][mmc]: erase_grp_size:0x400WrBlk * 0x200 = 0x80000 Byte [0.672][mmc]: secure_feature 0x15 [0.675][mmc]: secure_removal_type 0x0 [0.679]sunxi flash init ok In: serial Out: serial Err: serial [0.691]--------fastboot partitions-------- [0.695]-total partitions:5- [0.697]-name- -start- -size- [0.701]boot-res : 1000000 1000000 [0.706]env : 2000000 1000000 [0.710]boot : 3000000 1000000 [0.714]rootfs : 4000000 20000000 [0.718]UDISK : 24000000 0 [0.723]----------------------------------- [0.726]base bootcmd=run setargs_nand boot_normal [0.731]bootcmd set setargs_mmc [0.734]key 0 [0.735]cant find rcvy value [0.737]cant find fstbt value [0.740]no misc partition is found [0.743]to be run cmd=run setargs_mmc boot_normal [0.747]WORK_MODE_BOOT [0.749]board_status_probe [0.752]sunxi_bmp_logo_display [0.756] ** Unable to read "bootlogo.bmp" from sunxi_flash 0:1 ** [0.761]sunxi bmp info error : unable to open logo file bootlogo.bmp [0.767]Hit any key to stop autoboot: 0 [0.771]read boot or recovery all [1.63]sunxi flash read :offset 3000000, 13995844 bytes OK [1.72]no signature [1.73]ready to boot [1.75]para err in disp_ioctl, cmd = 0xa,screen id = 1 [ 1.080]Starting kernel ... [ 0.940677] [audiocodec] linein_to_spk_used type err! [ 0.946281] [audiocodec] linein_to_hp_used type err! [ 0.951806] [audiocodec] linein_to_aif2_used type err! [ 0.957502] [audiocodec] sysaudio_to_aif2_used type err! [ 0.963409] [audiocodec] : aif3 not used! [ 0.971957] [I2S0]sunxi-i2s0 cannot find any using configuration for controllers, return directly! [ 0.982149] [I2S]sndi2s0 cannot find any using configuration for controllers, return directly! [ 0.991735] [I2S1]sunxi-i2s1 cannot find any using configuration for controllers, return directly! [ 1.001881] [I2S]sndi2s1 cannot find any using configuration for controllers, return directly! [ 1.019623] otg_wakelock_init: No USB transceiver found [ 1.025634] ths_fetch_sysconfig_para: type err device_used = 1. [ 1.033262] fetch C0_LV_count from sysconfig failed Welcome to sun8i linux sun8i login: root # pwd /root # # # busybox BusyBox v1.18.3 (2017-05-02 14:51:20 CST) multi-call binary. Copyright (C) 1998-2009 Erik Andersen, Rob Landley, Denys Vlasenko and others. Licensed under GPLv2. See source distribution for full notice. Usage: busybox [function] [arguments]... or: busybox --list[-full] or: function [arguments]... BusyBox is a multi-call binary that combines many common Unix utilities into a single executable. Most people will create a link to busybox for each function they wish to use and BusyBox will act like whatever it was invoked as. Currently defined functions: [, [[, addgroup, adduser, ar, arping, ash, awk, basename, bunzip2, bzcat, cat, catv, chattr, chgrp, chmod, chown, chroot, chrt, chvt, cksum, clear, cmp, cp, cpio, crond, crontab, cut, date, dc, dd, deallocvt, delgroup, deluser, devmem, df, diff, dirname, dmesg, dnsd, dnsdomainname, dos2unix, du, dumpkmap, echo, egrep, eject, env, ether-wake, expr, false, fdflush, fdformat, fdisk, fgrep, find, fold, free, freeramdisk, fsck, fuser, getopt, getty, grep, gunzip, gzip, halt, hdparm, head, hexdump, hostid, hostname, hwclock, id, ifconfig, ifdown, ifup, inetd, init, insmod, install, ionice, iostat, ip, ipaddr, ipcrm, ipcs, iplink, iproute, iprule, iptunnel, kill, killall, killall5, klogd, last, length, less, linux32, linux64, linuxrc, ln, loadfont, loadkmap, logger, login, logname, losetup, ls, lsattr, lsmod, lspci, lsusb, lzcat, lzma, makedevs, md5sum, mdev, mesg, microcom, mkdir, mkdosfs, mke2fs, mkfifo, mkfs.ext2, mkfs.vfat, mknod, mkswap, mktemp, modinfo, modprobe, more, mount, mountpoint, mpstat, mt, mv, nameif, netstat, nice, nohup, nslookup, od, openvt, passwd, patch, pidof, ping, pipe_progress, pivot_root, poweroff, printenv, printf, ps, pwd, rdate, readahead, readlink, readmbr, readprofile, realpath, reboot, renice, reset, resize, rm, rmdir, rmmod, route, run-parts, runlevel, sed, seq, setarch, setconsole, setkeycodes, setlogcons, setsid, sh, sha1sum, sha256sum, sha512sum, sleep, sort, start-stop-daemon, strings, stty, su, sulogin, swapoff, swapon, switch_root, sync, sysctl, syslogd, tail, tar, tee, telnet, test, tftp, time, top, touch, tr, traceroute, true, tty, udhcpc, umount, uname, uniq, unix2dos, unlzma, unxz, unzip, uptime, usleep, uudecode, uuencode, vconfig, vi, vlock, watch, watchdog, wc, wget, which, who, whoami, xargs, xz, xzcat, yes, zcat # cd / # pwd / # ls -l total 2156 drwxrwxr-x 2 root root 2048 Dec 2 2016 bin drwxr-xr-x 2 root root 1024 Jan 1 00:00 boot drwxr-xr-x 8 root root 3000 Jan 1 00:00 dev drwxr-xr-x 8 root root 1024 May 2 2017 etc drwxrwxr-x 3 root root 1024 May 2 2017 home lrwxrwxrwx 1 root root 11 May 2 2017 init -> bin/busybox drwxr-xr-x 4 root root 2048 May 2 2017 lib lrwxrwxrwx 1 root root 11 May 2 2017 linuxrc -> bin/busybox drwx------ 2 root root 2182144 May 2 2017 lost+found drwxrwxr-x 2 root root 1024 May 2 2017 mnt drwxrwxr-x 2 root root 1024 May 2 2017 opt dr-xr-xr-x 82 root root 0 Jan 1 00:00 proc drwxrwxr-x 2 root root 1024 Jan 1 00:00 root drwxr-xr-x 2 root root 2048 May 2 2017 sbin dr-xr-xr-x 13 root root 0 Jan 1 00:00 sys drwxrwxr-x 5 root root 1024 Dec 2 2016 test drwxrwxrwt 2 root root 80 Jan 1 00:00 tmp drwxrwxr-x 6 root root 1024 Dec 2 2016 usr drwxrwxr-x 4 root root 1024 May 2 2017 var # # # lsmod Module Size Used by Not tainted # # # ifconfig # # ping www.baidu.com ping: bad address 'www.baidu.com' # #
JNI开发(一) 简单的C代码打包成SO库以及项目如何调用SO库
前段时间开发过程中用到了简单的JNI使用,当时发现很多网上文章总有这样那样的问题,最近趁时间充裕就记录下来,以供记忆和交流。JNI环境配置这里就不做多讲,百度一下,把脚跨过墙就好。写一个简单的SO库先在项目中<em>创建</em>一个类,里面暴露出本地代码的接口。随后使用Terminal 执行生成.h的命令,将目录先定位到java目录,再执行 njavah -jni com.monke.simplejnidemo.S
全志H3 linux系统recovery制作过程
本文介绍全志H3 recovery制作过程,代码基于friendly arm的Nano pi M1开发代码。nnn一,编译打包n     运行配置脚本: . ./<em>buildroot</em>/script/mksetup.shn     1,芯片类型选择sun8iw7p1,平台选择linux,开发板我这里就选择了dolphin-cmcc-p1n    n  2,执行命令:mklichee
qt调用so共享库
今天测试完成在linux下<em>调用</em>so共享库,和在Windows下<em>调用</em>dll一样。 QLibrary mylib("/home/mylinux/wjp/testso/libposapi.so");用了全路径,当前路径不行,还需要试验。rn#include "mainwindow.h"n#include "ui_mainwindow.h"n#includenntypedef unsigned long
生成so库供Java调用
c文件编译成<em>so库</em>供java<em>调用</em>,也就是JNI.
第17章添加新的软件包到Buildroot
1:<em>创建</em>一个软件包目录:在您的软件的目录下<em>创建</em>一个目录libfoon2:<em>创建</em>包的配置文件Config文件(使包在配置工具中显示):有两种类型: Config.in和Config.in.hostnnn Config.in文件nConfig.in文件的内容包含与我们的libfoo软件相关的选项描述,这些选项将在配置工具中使用和显示。它应该基本上包含以下内容:nnnnnconfig
Android 调用第三方jar包和so库文件(3)
本系列是分为三步走1.生成<em>so库</em>文件 打开地址2.生成jar包 打开地址3.<em>调用</em>自己生成的<em>so库</em>和jar包(本篇)本篇是第三部分,<em>调用</em>生成<em>so库</em>和jar包.一、<em>创建</em>新的Android项目二、将步骤二中生成的classes.jar文件copy到libs文件夹下并改名mylibrary.jar三、新建和java同级的文件夹jniLibs,并将步骤一中生成的<em>so库</em>copy进来四、build.gradle...
Android Studio调用 符合JNI标准和非JNI标准的so库总结
已了解解决方案:n一、既有jar包又有<em>so库</em>nnn    这种最简单,jar包和<em>so库</em>一起使用的,(比如:百度地图)只需要将jar包放在n libs目录下,然后选中右键add as library 。so 文件也放在libs目录下即可。nnn二、Android Studio <em>调用</em>符合JNI标准的 <em>so库</em> (这类so必须要知道,包含本地方法的包名和类名,否则无法<em>调用</em>)
一种另类的so库调试方法
最近搞某平台的影视软件登录算法,遇到瓶颈,因为一个参数会在so层获取一个参数,虽然用ida逆向出了c++代码,但是因为太菜,只看出了个大概的东西,细节上看不太懂,能猜出从<em>so库</em>取出的值是固定的,(这是其中一个方法的代码,类似的方法还有十几个) n n于是开始用Android studio+ideasmali动态调试,但是AndroidMainfest中关闭了debuggable,修改debug后发现
(三)NDK 开发之生成并调用 so库
1、生成so 库。nn新建一个项目,勾选 Include C++ support.然后一直next。nnnn在配置好NDK 的情况下,系统会直接生成一个<em>调用</em>C++ 的 例子,直接运行就可以。nn配置NDK:https://blog.csdn.net/lijia1201900857/article/details/83576840nn nnnn下面我们要生成 so 库。详细请看:https://bl...
c语言调用c语言的so动态库
1.环境 rnubuntu14.o4  rngcc 4.8.4rn2.库文件生成rn1)源码rn//clTest.cnnint add(int a, int b) {n return a + b;n}2)生成库文件rncd到clTest.c所在目录,输入命令rngcc -shared -o libclTest.so clTest.c会在当前目录生成文件libclTest.sorn3.主程序rn1)
嵌入式开发板上安装telnetd服务
今天总算是把开发板上安装telnetd服务的问题给解决了,在网上找了很多相关的配置,最终都不能通过telnet成功登录我的开发板,今天加班突然解决了这个问题,于是记录下来,。n具体配置和操作如下:n1,bosybox的配置nmake menuconfignnnnnnnnn2.kernel 配置nmake menuconfignnnnn3,修改配置文件nvim
Eclipse接入第三方动态库.so方案
在Android.mk中加入如下代码####### third so begininclude $(CLEAR_VARS)LOCAL_MODULE:= agora-rtcLOCAL_SRC_FILES :=../prebuilt/$(TARGET_ARCH_ABI)/libagora-rtc-sdk-jni.soinclude $(PREBUILT_SHARED_LIBRARY)include $
安装嵌入式linux系统的步骤(USB线下载方式)
首先通过将安装的辅助软件烧写进入SD卡中(可以通过linux下的dd命令也可以通过windows下提供的烧写软件实现)。将SD卡插入开发板,将开发板设置为从SD卡启动,通过USB下载线使PC机与开发板进行连接。通过USB线在安装辅助工具的帮助下,将PC上的系统烧写到开发板的Nand Flash上。rnrnrnrn细节步骤:rnrn1.首先,我们通过SD卡读卡器在windows下对SD卡进行格式化,
android ndk r4
利用NDK生成SO库,使用SO库进行JNI<em>调用</em>,在Android sdcard<em>创建</em>文件并写入数据
构建嵌入式LINUX系统 第二版(中文版)
《Building Embedded Linux Systems 2nd Edition》的中文版,PDF扫描版,资源保证是第二版的,书中详细介绍了怎么构建自己的<em>嵌入式</em>Linux系统的相关步骤。本书是学习<em>嵌入式</em>linux开发的经典必备书籍之一。
Android NDK系列(五)- AS导入so三方库,使用C/C+方法
NDK系列(一)-AS使用javah生成so文件 n NDK系列(二)-AS使用CmakeLists生成so文件 n NDK系列(三)-AS编写C文件没有提示和不识别NULL n NDK系列(四)-AS生成jar包、导入<em>so库</em>并使用方法 接着捣鼓ndk,我们在开发的时候,不可避免的需要使用一些三方库,提高自己的开发效率,同时也可以避免自己在某一方面的缺点和短板,这是我们在做安卓原生开发的套路,
C中调用.so库中的函数与dlopen调用函数的区别
一. C中<em>调用</em>.<em>so库</em>中的函数与dlopen<em>调用</em>区别n<em>调用</em>及结果 并没有区别n区别在于,直接<em>调用</em>需要在工程中加入so的引用 n而用dlopen可以直接使用动态库,更灵活n另外,如果直接<em>调用</em>方式,so文件不存在会导致整个程序无法运行 n而用dlopen动态加载,可以运行后再判断是否加载成功,即使失败,还可以保留程序其它功能ndlopen使用的时候,麻烦的是:相当于需要把.<em>so库</em>中的函数个一个一个的导出
嵌入式linux系统获取ip的方法
<em>嵌入式</em><em>linux系统</em>获取ip的方法rnrnrn方法1:uboot中设置bootargs参数和内核发出dhcp请求,此种方法比较常用,在此省略...rnrnrn方法2:进入系统后发出dhcp请求,下面介绍第2种方法rn执行脚本.sh内容(通过判断/etc/nettype.conf和/etc/net.conf来配置动态ip或者静态ip)rnsource /etc/nettype.confrnif [
buildroot 常用编译命令(前八章)
BusyBox的rn如果您已经有BusyBox配置文件,则可以直接在Buildroot配置中使用指定该文件 BR2_PACKAGE_BUSYBOX_CONFIG。否则,Buildroot将从默认的BusyBox配置文件开始。rn要对配置进行后续更改,请使用make busybox-menuconfig打开BusyBox配置编辑器。rn也可以通过环境变量指定一个BusyBox配置文件,尽管这不是建议
C语言调用so动态库的两种方式
方式1:类似静态库的<em>调用</em>(使用头文件)nn这种方式生成的程序会在启动时候就加载so动态库。 nnadd.hnnint add(int x, int y);nnadd.cnnnn#include &amp;quot;add.h&amp;quot;nnint add(int x, int y) {n return (x + y);n}nnmain.cnnnn#include &amp;amp;lt;stdio.h&amp;amp;gt;n#include &amp;quot;...
Linux下JAVA程序调用so库的接口函数实例(JNA)
目录nn1. 前言nn2. JNI<em>调用</em>过程nn3. JNA<em>调用</em>过程nn4. Linux下通过JNA技术实现JAVA程序<em>调用</em><em>so库</em>函数的实例。nn4.1 开发环境nn4.2 <em>so库</em>的生成nn4.2.1 编写文件sayhello.hnn4.2.2 编写文件sayhello.cnn4.2.3 编写编译命令文件64cmd.sh和32cmd.shnn4.2.4 编译生成<em>so库</em>nn4.3 JNA程序的编...
Linux编辑器——vi(vim)
1.简介nnvi是<em>linux系统</em>下简单易用的编辑器之一,几乎所有linux操作系统都自带vi编辑器。在终端中敲入vi 文件名,就可以打开编译器,类似windows系统下的记事本,功能强大,使用方便。nn2.vi的模式nnvi有三种模式:nn(1)命令行模式nn用户在用vi编辑文件时,首先进入的就是命令行模式。在该模式中用户可以通过上下移动光标进行复制、粘贴等操作,但无法编辑文字。nn(2)插入模式...
linux嵌入式开发平台网卡驱动解决办法
最近用了下树莓派和inter Edison,本来打算使用一下网卡,可是发现树莓派和Edison竟然都编译不了官方的驱动,报错缺少 /kenerl/bulid 目录,查了下资料,原来是这些<em>嵌入式</em>平台都为了节省空间,都没有搭载源码,而在网卡的驱动程序中有需要<em>调用</em>系统的接口,但是没有源码,这些接口也就没有了,编译的时候就找不到接口,so,报错了。nnn一编译驱动nnn解决办法有两个:n第一
Andorid 引用.so库导致的崩溃问题解决办法
使用第三方SDK的时候,经常会有.<em>so库</em>。使用时一个重要问题是:主项目和引用库项目中lib的目录结构必须保持一致,即库项目中含有arm64-v8a目录,住工程和其他库工程也必须含有arm64-v8a目录,且里面必须有相应的.so文件。n可以在build文件里面使用:nnndk {n abiFilters "armeabi", "armeabi-v7a","x86"n};n方式指定加载
as生成.so文件,并引用到其它项目中进行调用
as生成.so文件,把Android项目中比较隐私的,如:秘钥等信息存在.so文件中,保证秘钥的安全性,提高反编译的难度
电工学第六版(秦曾煌)课后答案1下载
电工学答案电工学答案电工学答案电工学答案电工学答案电工学答案电工学答案电工学答案电工学答案 相关下载链接:[url=//download.csdn.net/download/erupta1/2126779?utm_source=bbsseo]//download.csdn.net/download/erupta1/2126779?utm_source=bbsseo[/url]
潮流计算论文 关于pq法下载
潮流计算论文潮流计算论文潮流计算论文潮流计算论文潮流计算论文 相关下载链接:[url=//download.csdn.net/download/manywishes/2399021?utm_source=bbsseo]//download.csdn.net/download/manywishes/2399021?utm_source=bbsseo[/url]
写得很清楚的CSV文件格式下载
CSV文件格式,写得挺清楚,值得推荐,共享之。 相关下载链接:[url=//download.csdn.net/download/gaozf9/2787891?utm_source=bbsseo]//download.csdn.net/download/gaozf9/2787891?utm_source=bbsseo[/url]
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 云计算和嵌入式 python教程linux系统
我们是很有底线的