linux编译

编译Linux3.16内核时出错说找不到includenux/compiler-gcc5.h

对着背影说爱祢 提交于 2019-12-04 17:46:21
问题: 编译Linux3.16内核时 交叉编译环境用sudo apt-get install gcc-arm-linux-gnueabi命令获取时,出错说找不到includenux/compiler-gcc5.h 解决: 第一种方法:gcc版本和Linux内核不匹配所致,编译Linux4.8.12就不会报错了 第二种方法:如果实在要编译Linux3.16可以用下面方法 sudo apt-get autoremove gcc-5把gcc5卸载了 然后sudo apt-get installgcc-4.7-arm-linux-gnueabi换成4.7, 然后更改内核源码根目录下的Makefile,把CC=$(CROSS_COMPILE)gcc改成CC= $(CROSS_COMPILE)gcc-4.7,(如果还有错,就把这条语句附近的gcc全都改成gcc-4.7) 顺利编译! 来源: CSDN 作者: missyr 链接: https://blog.csdn.net/qingtian12138/article/details/53607993

解决编译openwrt mkimage时出现“linux/compiler-gcc7.h: No such file or directory”错误

元气小坏坏 提交于 2019-12-04 17:45:57
fatal error: linux/compiler-gcc6.h: No such file or directory fatal error: linux/compiler-gcc7.h: No such file or directory 最近安装了ubuntu18.04,然后编译openwrt中的mkimage时出现以上错误。 原因是电脑安装的gcc版本较高,为gcc7; 解决方案是给mkimage打个patch openwrt / tools / mkimage / patches / 200-compiler-support.patch diff --git b/include/linux/compiler-gcc.h a/include/linux/compiler-gcc.h index e057bd2..22ab246 100644 --- b/include/linux/compiler-gcc.h +++ a/include/linux/compiler-gcc.h @@ -5,14 +5,28 @@ /* * Common definitions for all gcc versions go here. */ -#define GCC_VERSION (__GNUC__ * 10000 \ - + __GNUC_MINOR__ * 100 \ - + _

[ERROR] 编译内核报错: include/linux/compiler-gcc.h:86:30: fatal error: linux/compiler-gcc5.h: No such file

喜你入骨 提交于 2019-12-04 17:45:43
编译内核时遇到如下错误,猜测make时用系统当前的gcc编译的,gcc版本太高,编译内核时在内核源代码中找不到对应的头文件。有网友说需要把/usr/src本身内核源码里面复制一个头文件进去,但是有可能找不到。因此本文解决思路是降低gcc版本。 20180620更新:在这里下一个就可以用gcc5 h了 ttps://raw.githubusercontent.com/torvalds/linux/v4.0/include/linux/compiler-gcc5.h 0x01报错信息: include/linux/compiler-gcc.h:86:30: fatal error: linux/compiler-gcc5.h: No such file or directory compilation terminated. /home/thinkycx/Desktop/kernel-pwn/linux-2.6.32.1/./Kbuild:35: recipe for target 'kernel/bounds.s' failed make[1]: *** [kernel/bounds.s] Error 1 Makefile:982: recipe for target 'prepare0' failed make: *** [prepare0] Error 2 0x02解决方案:

编译Linux内核出现include/linux/compiler-gcc.h:106:30: fatal error: linux/compiler-gcc5.h错误

左心房为你撑大大i 提交于 2019-12-04 17:45:24
编译Linux内核出现include/linux/compiler-gcc.h:106:30: fatal error: linux/compiler-gcc5.h:No such file or directory错误 当前学习linux内核编译,就是把当前系统的内核更换,在进行编译的时候出现了下面的错误,搜索了很多资料,有很多人回答时候文不对题,为了解决这个问题,我在这里做一个笔记: 错误截图 解决方案 来源: CSDN 作者: AnApplePie 链接: https://blog.csdn.net/u014525494/article/details/53573298

Qt Creator 插件开发(1):编译 Qt Creator

只谈情不闲聊 提交于 2019-12-04 17:06:57
从技术架构角度来说,Qt Creator 可以看做是一个插件平台,其大部分功能都是以插件的形式提供的。 本系列文章将着重介绍如何开发 Qt Creator 插件,以扩展 Qt Creator 的现有功能。虽然 Qt Creator 的最新版本已经提供了插件项目,但是从最底层开发 Qt Creator 插件,对于理解其架构也有相当的作用。因此,本文将不依赖于 Qt Creator 提供的项目向导,而是直接以 .pro 文件创建插件。同时,希望在学习 Qt Creator 插件开发基础之上,了解 Qt Creator 的架构。本系列文章原文出自 http://www.vcreatelogic.com/downloads/files/Writing-Qt-Creator-Plugins.pdf 。 本系列文章在 Windows 平台上,使用 mingw 版本 Qt 进行测试。Linux 平台请自行进行修改。 当我们从 http://qt.nokia.com/downloads 下载 QtSDK 时,我们已经获得了最新版本的 Qt Creator 。如果你下载的是 Windows 平台 mingw 版本的 QtSDK,其中包含的 Qt Creator 是使用 MSVC 进行编译的,而 Qt Framework 和 Qt Designer 则使用的是 mingw

Qt5.7.0编译移植到Linux-Arm-A9

爷,独闯天下 提交于 2019-12-04 16:26:32
Linux环境下编译Qt5.7.0 我的系统是Ubuntu 16.04编译器是arm-linux-gnueabihf-gcc5.4,在ubuntu16.04中直接安装即可。 编译: 第一步: 下载qt-everywhere-opensource-src-5.7.0.tar.gz,这个Qt官方有。安装arm-linux-gnueabihf-gcc: $ sudo apt install gcc-arm-linux-gnueabi $ sudo apt install gcc-arm-linux-gnueabihf 第二步: 找个英文目录,把qt-everywhere-opensource-src-5.7.0.tar.gz放进去。用终端解压: $: tar -zxvf qt-everywhere-opensource-src-5.7.0.tar.gz 最好别右击“提取到此处”,这个解压好像和命令解压不同,到编译的时候就坑了。 第三步: 修改编译配置文件,在目录:qt-everywhere-opensource-src-5.7.0/qtbase/mkspecs/linux-arm-gnueabi-g++/下面qmake.conf。(注意我的改动)改为: # # qmake configuration for building with arm-linux-gnueabi-g++ #

glib系列2 APP编译

☆樱花仙子☆ 提交于 2019-12-04 15:44:08
编译命令 gcc main.c `pkg-config --cflags glib-2.0 --libs glib-2.0` 头文件 $ ls /usr/local/include/glib-2.0/ gio glib glib.h glib-object.h glib-unix.h gmodule.h gobject $ pkg-config --cflags glib-2.0 --libs glib-2.0 -I/usr/local/include/glib-2.0 -I/usr/local/lib/x86_64-linux-gnu/glib-2.0/include -L/usr/local/lib/x86_64-linux-gnu -lglib-2.0 来源: https://www.cnblogs.com/Dream-Chaser/p/11871981.html

JAVA知识总结(一):概述

送分小仙女□ 提交于 2019-12-04 15:22:17
第一次写文章,有点小紧张,不过没关系,因为我面对的都是小白。好了废话少说,直接开始吧。 我主要说一下JAVA的发展和开发java的基本知识及JAVA的主要特性。 一、JAVA的主要特性: 1、 一方面,Java语言的语法与C语言和C++语言非常接近,这使得大多数程序员都很容易学习和使用。另一方面,Java丢弃了C++中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java语言不使用指针,而是引用。并提供了自动的废料收集,使得程序员不必为内存管理而担忧。 2、Java是面向对象的,具有类,接口等; 3、Java是解释型的语言,Java程序在Java平台上被编译为字节码格式,然后可以在实现这个Java平台的任何系统中运行。即所谓的“一次编译,永久使用”。 下面解释一下解释型语言和编译型语言的区别? (A)解释型语言:,解释性语言编写的程序不进行预先编译,以文本方式存储程序代码。在发布程序时,看起来省了道编译工序。但是,在运行程序的时候,解释性语言必须先解释再运行。 (B)编译型语言:程序在执行之前需要一个专门的编译过程,把程序编译成为机器语言的文件,运行时不需要重新翻译,直接使用编译的结果就行了。程序执行效率高,依赖编译器,跨平台性差些。如C、C++、Delphi等。 二、JAVA的开发工具(JDK),工具及运行环境(JRE) (1

arm-linux-系列工具,ld,ar,as,objcopy

跟風遠走 提交于 2019-12-04 13:36:37
ref :http://www.360doc.com/content/14/0509/09/17268421_376009916.shtml 一、编译器相关知识学习 GNU GCC简介: GNU GCC是一套面向嵌入式领域的交叉编译工具,支持多种编程语言、多种优化选项并且能够支持分步编译、支持多种反汇编方式、支持多种调试信息格式,目前支持X86、ARM7、StrongARM、PPC4XX、MPC8XX、MIPS R3000等多种CPU。 GNU GCC的基本功能包括:输出预处理后的C/C++源程序(展开头文件和替换宏) 输出C/C++源程序的汇编代码 输出二进制目标文件 生成静态库 生成可执行程序 转换文件格式 GCC 组成: 1. C/C++交叉编译器arm-elf-gcc arm-elf-gcc是编译的前端程序,它通过调用其他程序来实现将程序源文件编译成目标文件的功能。 编译时,它首先调用预处理程序(cpp)对输入的源程序进行处理,然后调用 cc1 将预处理后的程序编译成汇编代码,最后由arm-elf-as将汇编代码编译成目标代码。 arm-elf-gcc具有丰富的命令选项,可以控制编译的各个阶段,满足用户的各种编译需求。 2. 汇编器 arm-elf-as arm-elf-as将汇编语言程序转换为ELF (Executable and Linking Format

gcc 和 库

依然范特西╮ 提交于 2019-12-04 12:08:28
一、gcc编译器编译的四个流程 简:     预处理 、编译 、汇编 、链接 详:   c和c++ 编译器是集成的,编译一般分为4个步骤:   预处理(preprocessing)         gcc -E XX.c -o XX.i      --->宏替换,展开头文件   编译(compilation)           gcc -S XX.i -o XX.s      --->检查语法,生成汇编文件   汇编 (assembly)           gcc -c XX.s -o XX.o      --->生成目标文件(二进制文件)   链接(linking)             gcc XX.o -o XXX       --->链接库,检查环境变量,生成可执行文件   执行     ./XXX 支持后缀: .c c原始程序 .C/.cc/.cxx c++原始程序 .m Objective-C原始程序 .i 已 经过预处理的c原始程序 .ii 已 经过预处理的c++原始程序 .s/.S 汇编语言原始程序 .h 预处理文件(头文件) .o 目标文件 .a/.so 编译后的库文件(动态库,静态库) 常见错误: 1.头文件错误 预处理阶段(Can not find include file head.h) -I 头文件路径 2.C语法错误 编译阶段 (syntex