![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux 编译
文章平均质量分 75
小艾的01
这个作者很懒,什么都没留下…
展开
-
Makefile方法编译Linux下多文件工程
1.Linux下多文件的工程项目编译方法(Makefile)main:message.o sqlite.o main.o order_transact.o ioctrol.oarm-linux-gcc message.o sqlite.o main.o order_transact.o ioctrol.o -lsqlite3 -L /usr/local/arm/sqlite_arm/ -l原创 2014-02-23 21:17:15 · 983 阅读 · 0 评论 -
Makefile选项CFLAGS,LDFLAGS,LIBS
CFLAGS 表示用于 C 编译器的选项,CXXFLAGS 表示用于 C++ 编译器的选项。这两个变量实际上涵盖了编译和汇编两个步骤。CFLAGS: 指定头文件(.h文件)的路径,如:CFLAGS=-I/usr/include -I/path/include。同样地,安装一个包时会在安装路径下建立一个include目录,当安装过程中出现问题时,试着把以前安装的包的include目录加入转载 2015-01-23 14:00:37 · 767 阅读 · 0 评论 -
Segmentation fault到底是何方妖孽
前两天和阿彬扯淡的时候(注意不是扯蛋),他说自己一个礼拜解决了三个Core dump,华丽丽之极,让我对其敬仰、膜拜之情如滔滔之江水,绵绵不绝。今天我也来谈一下Linux环境下开发时经常遇到的“Segmetation fault”的一点点个人看法,也算是抛砖引玉了。 (备注:我的glibc版本是2.12,GCC版本4.4.6,内核版本2.6.32-279) Linux上开发时最转载 2014-12-12 13:37:50 · 4087 阅读 · 1 评论 -
更新Linux内核头文件(linux headers)
一般来说,如果不是自己编译kernel,那么更新头文件是比较容易的事情,在Ubuntu/Fedora等操作系统上,可以直接安装相应的linux-headers软件包,下面就演示了在Ubuntu上安装内核头文件的过程。master@jay-intel:~/workspace/c-study$ uname -r3.2.0-33-genericmaster@jay-intel:~/works转载 2014-12-11 09:35:46 · 12026 阅读 · 0 评论 -
聊一下我在LINUX环境下用过的C/C++编辑器
昨天有个朋友问我想在LINUX环境下学习C++,用什么IDE好?想想我也玩LINUX几年了,就总结一下我在LINUX环境下用过的C/C++编辑器(或IDE)吧。在Windows上,肯定是Visual Studio一家独大,在LINUX上,可以选择的IDE就大多了。。1:gedit 虽然这只是一个普通的本文编辑器(外加关键字高亮),但却是我初学LINUX时所用的C++编辑器。不过,转载 2014-12-26 14:45:43 · 662 阅读 · 0 评论 -
linux 编译指定库、头文件的路径问题
1. 为什么会出现undefined reference to 'xxxxx'错误?首先这是链接错误,不是编译错误,也就是说如果只有这个错误,说明你的程序源码本身没有问题,是你用编译器编译时参数用得不对,你没有指定链接程序要用到得库,比如你的程序里用到了一些数学函数,那么你就要在编译参数里指定程序要链接数学库,方法是在编译命令行里加入-lm。2.-l参数和-L参数-l参数就转载 2014-12-08 13:34:33 · 620 阅读 · 0 评论 -
linux中常用的头文件
#include 是在linux-2.6.29/include/linux下面寻找源文件。#include 是在linux-2.6.29/arch/arm/include/asm下面寻找源文件。#include 是在linux-2.6.29/arch/arm/mach-s3c2410/include/mach下面寻找源文件。#include 在linux-2.6.31转载 2014-12-08 13:13:26 · 699 阅读 · 0 评论 -
Linux下gcc编译中关于头文件与库文件搜索路径相关问题(一)
在交叉编译的时候我们需要用到其他的库,在 config 时候可以通过 “-I” 来指定头文件目录,但是每次都需要设置的话难免有些麻烦,找到一个简单的方法。看下文的红色部分。 有大量的环境变量可供设置以影响 GCC 编译程序的方式。利用这些变量的控制也可使用合适的命令行选项。一些环境变量设置在目录名列表中。这些名字和 PATH 环境变量使用的格式相同。特殊字符 PATH_SEPARATOR转载 2014-12-08 13:40:51 · 674 阅读 · 0 评论 -
linux静态链接库与动态链接库的区别及动态库的创建(转)
一、引言通常情况下,对函数库的链接是放在编译时期(compile time)完成的。所有相关的对象文件(object file)与牵涉到的函数库(library)被链接合成一个可执行文件(executable file)。程序在运行时,与函数库再无瓜葛,因为所有需要的函数已拷贝到自己门下。所以这些函数库被成为静态库(static libaray),通常文件名为“libxxx.a”的形式转载 2014-12-18 09:04:36 · 678 阅读 · 0 评论 -
Linux makefile 教程 非常详细,且易懂
最近在学习Linux下的C编程,买了一本叫《Linux环境下的C编程指南》读到makefile就越看越迷糊,可能是我的理解能不行。 于是google到了以下这篇文章。通俗易懂。然后把它贴出来,方便学习。 后记,看完发现这篇文章和《Linux环境下的C编程指南》的makefile一章所讲述的惊人的相似,只是这篇文章从一个实例切入,在有些地方比较好理解转载 2014-02-23 21:39:52 · 762 阅读 · 0 评论 -
linux内核编译Kconfig总结
linux内核make menuconfig生成.config时,会调用GUI配置工具,这个GUI配置工具具体调用的就是内核各目录下的Kconfig文件,Kconfig文件层次结构和各内核目录中层次相似,最终形成GUI的各级配置菜单。下面首先介绍Kconfig文件规则:Kconfig文件的基本要素:1.config条目(entry) config TMPFS_POSIX_AC转载 2016-09-13 10:34:05 · 3166 阅读 · 0 评论