linux编译

基于Zynq的GNULinux在线编译调试记录

匿名 (未验证) 提交于 2019-12-02 21:53:52
--20171228 1、实验环境 、鼠标×2、键盘×1、USB分线器×1、ZedBoard开发板套件×1、AD-FMCOMMS2-EBZ×1、网线×1、SD卡×1。 2、软件安装 2.1、安装VMware Workstation Pro12 软件来源: http://bbs.feng.com/read-htm-tid-9815751.html 安装教程: VMware Workstation 12 Pro 虚拟机安装步骤详解_百度经验 。 2.2、安装虚拟系统ubuntu-14.04.5-desktop-amd64 软件来源: https://www.ubuntu.com/download/desktop 安装教程: VMware12安装虚拟机教程、Ubuntu16.04安装教程_百度经验 http://www.jb51.net/article/97295.htm 2.3、交叉编译环境的搭建 gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabihf.tar.xz https://releases.linaro.org/components/toolchain/binaries/7.2-2017.11/arm-linux-gnueabihf/ 2.3.2下载 gcc-linaro-7.2.1-2017.11-x86_64_arm

././include/linux/kconfig.h:4:32: fatal error: generated/autoconf.h: No such file or directory 解决办法

核能气质少年 提交于 2019-12-02 21:52:29
  我在编写内核驱动模块的时候报了一个非常奇怪的错误,如下图:      在目录下看了一下确实没有发现这个文件,感觉很奇怪,因为我记得之前编译模块是没有错误的,所以不可能是我代码写的有问题。   查阅了资料很多说要清除配置重新生成.config之类的,我也照做了但是并没有什么卵用。   最后发现是因为我执行了make mrproper(或make distclean),执行make mrproper的打印信息如下:      很明显make mrproper这条指令清除了generated底下的东西。   解决办法是重新编译一遍内核:make zImage 来源: https://www.cnblogs.com/Suzkfly/p/11763948.html

Centos 6.9 编译安装gcc 4.8.5

眉间皱痕 提交于 2019-12-02 21:36:40
前言 GCC (GNU Compiler Collection,GNU编译器合集)是linux以及其他类UNIX平台上进行开源项目,软件开发等必不可少的工具链组成之一。(其他的还有clang以及llvm等编译器) 对于程序员以及系统管理员而言,经常需要从软件的源码进行手动编译安装, 不论是configure脚本,还是make工具,最终都需要调用gcc(或者其它编译器)来进行实际的编译工作。 另外,各种软件也经常需要使用gcc的新版特性,并且与旧版gcc共存,根据实际的需求进行调用。 实验环境:VMware Workstation Pro 14(试用版) 系统平台: CentOS release 6.9 (Final) 内核 2.6.32-696.el6.x86_64 软件包:minimal最小化安装 基础知识 glibc GNU C Library https://www.gnu.org/ GNU C库项目提供了 GNU系统和GNU / Linux系统的核心库,以及许多其他使用Linux作为内核的系统。glibc是Linux系统中最底层的API,几乎其它任何的运行库都要依赖glibc。这些库提供了关键的API, 包括ISO C11,POSIX.1-2008,BSD,操作系统特定的API等等。这些API包括open, read,write,malloc,printf,

动态库和静态库的制作与使用 【转载】原文链接https://www.cnblogs.com/WindSun/p/11287927.html

瘦欲@ 提交于 2019-12-02 19:59:12
概述 Linux操作系统支持的函数库分为静态库和动态库,动态库又称共享库。linux系统有几个重要的目录存放相应的函数库,如/lib /usr/lib。 静态函数库:   这类库的名字一般是libxxx.a;利用静态函数库编译成的文件比较大,因为整个函数库的所有数据都会被整合进目标代码中,他的优点就显而易见了,即编译后的执行程序不需要外部的函数库支持,因为所有使用的函数都已经被编译进可执行文件了。当然这也会成为他的缺点,因为如果静态函数库改变了,那么你的程序必须重新编译,而且体积也较大。 动态函数库:   这类库的名字一般是libxxx.so,动态库又称共享库;相对于静态函数库,动态函数库在编译的时候并没有被编译进目标代码中,你的程序执行到相关函数时才调用该函数库里的相应函数,因此动态函数库所产生的可执行文件比较小。由于函数库没有被整合进你的程序,而是程序运行时动态的申请并调用,所以程序的运行环境中必须提供相应的库。动态函数库的改变并不影响你的程序,所以动态函数库的升级比较方便。而且如果多个应用程序都要使用同一函数库,动态库就非常适合,可以减小应用程序的体积。 Linux静态函数库的创建和使用 例程add.h add.c sub.h sub.c main.c: add.h #ifndef ADD_H #define ADD_H int add(int x,int y);

ubuntu下编译vlc-android源代码

旧时模样 提交于 2019-12-02 19:33:17
一、安装所有必需的软件 1, # sudo apt-get install ant autoconf automake autopoint libtoo lgawk gcc g++pkg-config cmake patch subversion git Ant工具在最后编译android源码生成apk文件会用到,所以需要安装。如果手动安装了ant,需要在环境变量中配置好ant的 path,或者在进行编译之前在命令行执行export PATH=$PATH:/xxx/ant/bin,保证可以在执行编译的命令行中执行ant命令即可。 2, 除了以上软件/工具之外,还有两个必须的工具,就是Android的SDK和NDK。SDK和NDK的安装方法就不再详述了,网上有很多安装方法的文章。 二、环境变量配置 配置ANDROID_SDK # export ANDROID_SDK=/path/to/android-sdk(请把path改为自己的路径) 配置ANDROID_NDK # export ANDROID_NDK=/path/to/android-ndk 配置PATH变量 # export PATH=$PATH:$ANDROID_SDK/tools:$ANDROID_SDK/platform-tools 配置NEON相关信息(一般编译的时候,会编译NO_NEON和支持NEON两种包出来) #

cygwin和mingw编译软件的疑问

旧巷老猫 提交于 2019-12-02 18:54:58
对于cygwin和mingw的区别已有基本了解。先已有mingw+msys环境,mingw版gcc在mingw官网下载,版本4.5.2,安装了一些的开发库,但在mingw中编译gnu程序,少有顺利通过的,mingw版的gcc编译出来是原生的win32程序。考虑到mingw对linux环境的模拟“不够纯”,重新下载安装cygwin,现只有一个基本的运行环境。可以确定,cygwin中预装的程序(/bin目录下的大量工具)对cyg*.dll的动态库有依赖,目前没有安装cygwin版的gcc。 我的疑问是: 1.直接把mingw版的gcc放到$PATH路径中,这样在cygwin的终端环境中编译gnu软件或者一些开发库和在msys终端编译是一致的效果吗?比如,失败的话,同样的错误;成功的话,同样不依赖于cyg*.dll动态库? 2.通过setup另下一个cygwin版的gcc(其实在cygwin官网上同时看到有gcc和mingw-gcc就很疑惑了),在cygwin的终端环境中编译软件,如果遇到源代码直接调用win32API而不是unix风格的系统调用,cygwin版的gcc能否编译成功? 若可以编译成功,是不是程序运行依赖于上述的dll? 3.同时保留有两个版本的gcc(mingw的和cygwin的),个人想在编译常用工具或开发库(如gnu的工具)时使用cygwin版的,这样在本地运行

Android 之 JNI 开发 详解

自古美人都是妖i 提交于 2019-12-02 18:50:16
NDK项目源码地址 : -- 第一个JNI示例程序下载 : GitHub - https://github.com/han1202012/NDKHelloworld.git 一. JNI介绍 1. JNI引入 JNI概念 : Java本地接口, Java Native Interface , 它是一个 协议 , 该协议用来沟通Java代码和外部的本地C/C++代码, 通过该协议 Java代码可以调用外部的本地代码, 外部的C/C++ 代码可以调用Java代码; C和Java的侧重 : -- C语言 : C语言中最重要的是 函数 function; -- Java语言 : Java中最重要的是 JVM, class类, 以及class中的方法; C与Java如何交流 : -- JNI规范 : C语言与Java语言交流需要一个适配器, 中间件, 即 JNI, JNI提供了一种规范; -- C语言中调用Java方法 : 可以让我们在C代码中找到Java代码class中的方法, 并且调用该方法; -- Java语言中调用C语言方法 : 同时也可以在Java代码中, 将一个C语言的方法映射到Java的某个方法上; -- JNI桥梁作用 : JNI提供了一个桥梁, 打通了C语言和Java语言之间的障碍; 2. Android中的应用程序框架 正常情况下的Android框架 : 最 顶层 是

1.python简介

蹲街弑〆低调 提交于 2019-12-02 18:21:15
简介 1、python语言介绍 python的创始人:Guido Van Rossum 2、python是一门什么样的语言 编程语言主要从以下几个角度进行分类:编译型,静态型,动态性,强类型定义语言和弱类型定义语言 (1)编译型:有一个负责翻译的程序来对我们的源代码进行转换,生成对应的可执行代码,这个过程就是编译(Compile),而负责编译的程序就被称为编译器(Compiler) (2)通常我们所说的动态语言,静态语言是指动态类型语言和静态类型语言 (3)动态类型语言:是指在运行期间采取做数据类型检查的语言。即在用动态类型的语言编程时,永远也不用给任何变量指定数据类型,该语言会在你第一次赋值给变量时,在内部将数据类型记录下来。典型的是python和Ruby (4)静态类型语言:数据类型是在编译期间检查的,也就是说在写程序的时候要声明所有变量的数据类型。C/C++是静态类型语言的典型代表,其他的静态类型语言还有C#,JAVA 3、Python能做什么 网络应用、科学运算、GUI程序、系统管理工具、其他等等 Web应用开发 Python经常被用于Web开发。比如,通过mod_wsgi模块,Apache可以运行用Python编写的Web程序。Python定义了WSGI标准应用接口来协调Http服务器与基于Python的Web程序之间的通信。一些Web框架,如Django

【软考】【软件设计师】【知识模块】【第2章:程序设计语言基础知识】

旧时模样 提交于 2019-12-02 17:04:01
程序设计语言基础知识 2.1 程序设计语言概述   2.1.1 程序设计语言基本概念     低级语言,面向机器的语言,如汇编语言、机器语言;       特性:进行程序设计效率低,程序的可读性差,难以修改、维护,优势是运行速度特别快;     高级语言,面向各类应用的程序设计语言。如C、C++ 、Java、Python、Delphi 、Pascal、Php          语言处理程序:负责将高级语言翻译成计算机能理解的0和1的程序;     语言之间的翻译基本方式:       汇编、解释、编译;       汇编:对使用汇编语言写成的源程序进行翻译成目标程序(机器可直接执行)的过程;       解释:将源程序翻译成中间代码(需要配合专有解释器才可执行)的过程;       编译:将源程序翻译成机器可直接执行的目标程序的过程;                解释和编译的区别在于:       对源程序进行编译后的目标程序可以在机器上直接执行,不需要源程序和编译程序配合执行;机器上运行的是与源程序等价的目标程序。       对源程序进行解释后的中间代码,需要源程序和解释程序(解释器)配合执行;            程序语言的定义涉及的三个范畴:       语义、语法、语用;     所谓高级语言,即不依赖机器硬件的;     所谓通用的程序设计语言

cmake简介

耗尽温柔 提交于 2019-12-02 16:01:26
一、cmake的由来 cmake是kitware公司以及一些开源开发者在开发几个工具套件(VTK)的过程中所产生的衍生品。后来经过发展,最终形成体系,在2001年成为一个独立的开放源代码项目。其官方网站是www.cmake.org,可以通过访问官方网站来获得更多关于cmake的信息,而且目前官方的英文文档比以前有了很大的改进,可以作为实践中的参考手册。 cmake的流行离不开KDE4的选择。KDE开发者在使用autotools近10年之后,终于决定为KDE4项目选择一个新的工程构建工具。之所以如此,用KDE开发者们自己话来说,就是:只有少数几个“编译专家”能够掌握KDE现在的构建体系。在经历了unsermake,scons以及cmake的选型和尝试之后,KDE4最终决定使用cmake作为自己的构建系统。在迁移过程中,进展一场的顺利,并获得了cmake开发者的支持。所以,目前的KDE4开发版本已经完全使用cmake来进行构建。 随着cmake 在KDE4项目中的成功,越来越多的项目正在使用cmake作为其构建工具,这也使得cmake正在成为一个主流的构建体系。 二、为何要使用项目构建工具 “Hello, world!“这个最经典的程序相信我们每个人都写过。无论在什么平台下,编译和运行这个程序都仅需要非常简单的操作。但事实上,hello,world最多只能算是一个实例程序