Compile
文章平均质量分 65
shaoyizhe2006
这个作者很懒,什么都没留下…
展开
-
静态库和动态库的区别
库从本质上来说是一种可执行代码的二进制格式,可以被载入内存中执行。库分静态库和动态库两种。 静态库和动态库的区别1. 静态函数库 这类库的名字一般是libxxx.a;利用静态函数库编译成的文件比较大,因为整个 函数库的所有数据都会被整合进目标代码中,他的优点就显而易见了,即编译后的执行程序不需要外部的函数库支持,因为所有使用的函数都已经被编译进去了。当然这也会成为他的转载 2013-03-26 17:29:50 · 792 阅读 · 0 评论 -
几个动态链接库相关的命令
locate locate ***.so(查找动态链接库位置)ldconfig(修改动态链接库加载文件ld.so.conf后,运行 ldconfig添加库生效)原创 2012-08-30 13:43:08 · 605 阅读 · 0 评论 -
用CMake写一个简单的交叉编译测试工程
CMake确实要比qmake强大很多,适应范围也更广:不但可以用于Qt工程构建,还可以用于非Qt工程,甚至交叉编译。而且,要实现交叉编译,实在是简单之极!CMakeLists.txt的内容如下:set(CMAKE_SYSTEM_NAME Windows)set(CMAKE_C_COMPILER i486-mingw32-gcc)set(CMAKE_CXX_COMPILE转载 2012-07-24 14:16:49 · 809 阅读 · 0 评论 -
解决Clock skew detected.
问题:[ 92%] Building C object CMakeFiles/dyna.x.dir/mystrings/StrEdit.c.o[100%] Building C object CMakeFiles/dyna.x.dir/mystrings/mystring.c.oLinking C executable dyna.xmake[1]: Warning: File `S转载 2013-02-18 10:30:57 · 8044 阅读 · 0 评论 -
Linux core 文件介绍
1. core文件的简单介绍在一个程序崩溃时,它一般会在指定目录下生成一个core文件。core文件仅仅是一个内存映象(同时加上调试信息),主要是用来调试的。2. 开启或关闭core文件的生成用以下命令来阻止系统生成core文件:ulimit -c 0下面的命令可以检查生成core文件的选项是否打开:ulimit -a该命令将显示所有的用户定制,其中选项-a代表“a转载 2012-10-22 17:15:02 · 537 阅读 · 0 评论 -
CMake的交叉编译
CMake的交叉编译问题(Linux x86 - Linux arm11) 如果你的英文比较好,那么可以看这里:http://www.cmake.org/Wiki/CMake_Cross_Compiling,这是CMake官方网站上一篇介绍如何交叉编译的文章,我也是主要参考这篇文章完成了我的交叉编译。但是我的交叉编译过程不是翻译它的,是根据我自己交叉编译的过程,从了解CMake到转载 2012-09-13 16:08:26 · 18785 阅读 · 3 评论 -
openssl移植
下载openssl-1.0.0.tar.gz: http://www.openssl.org/source/一、正常编译./config shared --prefix=/opt/project/uto/openssl/normal-openssl-install/makemake install二、交叉编译1. ./config no-asm sh转载 2012-09-13 16:04:14 · 5336 阅读 · 0 评论 -
gcc的一些选项
gcc的执行过程虽然我们 称gcc是C语言的编译器,但使用gcc由C语言源代码文件生成可执行文件的过程不仅仅是编译的过程,而是要经历四个相互关联的步骤∶预处理(也称预编 译,Preprocessing)、编译(Compilation)、汇编(Assembly)和连接(Linking)。命令gcc首先调用 cpp进行预处理,在预处理过程中,对源代码文件中的文件包含(include)、预编译语转载 2012-09-13 15:44:30 · 986 阅读 · 0 评论 -
wildcard linux
1、wildcard : 扩展通配符2、notdir : 去除路径3、patsubst :替换通配符例子:建立一个测试目录,在测试目录下建立一个名为sub的子目录$ mkdir test$ cd test$ mkdir sub在test下,建立a.c和b.c2个文件,在sub目录下,建立sa.c和sb.c2 个文件建立一个简单的Makefilesrc=$(w转载 2012-05-02 13:28:57 · 2686 阅读 · 0 评论 -
Linux下core文件产生的一些注意问题
转自:http://blog.csdn.net/fengxinze/article/details/6800175 前面转载了一篇文章关于core文件的产生和调试使用的设置,但在使用有一些需要注意的问题,如 在什么情况 才会正确地产生core文件。 列出一些常见问题:一,如何使用core文件1. 使用core文件在core文件所在目录下转载 2012-10-22 17:16:11 · 804 阅读 · 0 评论 -
关于linux source,export命令及一些疑惑的解决
source命令用法: source FileName 作用:在当前bash环境下读取并执行FileName中的命令。 注:该命令通常用命令“.”来替代。 如:source .bash_rc 与 . .bash_rc 是等效的。 source命令(从 C Shell 而来)是bash shell的内置命令。点命令,就是个点符号,(从Bourne Shell而来)是sourc转载 2013-01-08 10:09:04 · 822 阅读 · 0 评论 -
交叉编译库依赖问题的解决方法
http://jianbo.de/b/archives/503在交叉编译移植程序的时候,我们常常会遇到这样的情况:要编译的程序依赖于某个动态/静态链接库。而这个库也需要我们编译移植。在编译没有别的依赖的链接库的时候很简单,设置好交叉工具链、目标架构就可以了。而在编译有依赖需求的程序的时候,我们常常遇到找不到头文件、找不到库文件的问题。很是烦人。要解决这个问题,其实还是很容易的。只需转载 2013-01-12 00:14:03 · 6671 阅读 · 0 评论 -
Linux下动态链接库的使用
Linux下的静态链接库,做起来比较容易,只要将目标文件用ar打包就可以,下面写一下动态链接库的制作和使用方法,完全是根据个人理解和经验总结,有不对的地方还请大家指正。动态链接库的生成:代码上与写静态链接库没什么区别,主要是在编译时,以两个文件举例:/*mylib.h*/void Print();/*mylib.c*/#include stdio.h>转载 2013-01-10 16:26:01 · 751 阅读 · 0 评论 -
Linux 2.6.x 内核模块加载错误 “Invalid module format” 解决办法
问 题: 可以正常编译我写的驱动模块,但是加载(insmod)的时候提示错误: insmod: error inserting 'xxx.ko': -1 Invalid module format;用# dmesg | tail 看到如下信息:xxx: version magic '2.6.23.1 SMP mod_unload 686 4KSTACKS ' should be '2.6.23转载 2012-10-18 11:00:02 · 2118 阅读 · 1 评论 -
举例分析Linux动态库和静态库
函数库分为静态库和动态库两种。创建Linux静态库和Linux动态库和使用它们在这里将以举例的形式详述一下。静态库在程序编译时会被连接到目标代码中,程序运行时将不再需要该静态库。动态库在程序编译时并不会被连接到目标代码中,而是在程序运行是才被载入,因此在程序运行时还需要动态库存在。 第1步:编辑得到举例的程序——hello.h、hello.c和main.c; hello.h(见程序1)转载 2012-01-30 16:46:14 · 377 阅读 · 0 评论 -
基于Ubuntu 11.10/12.04编译OpenCV 2.3.x和2.4.x(适用于Fedora和红帽子rhel 6.2)
版权声明:对于本博客所有原创文章,允许个人、教育和非商业目的使用,但务必保证文章的完整性且不作任何修改地以超链接形式注明原始作者、出处及本声明。 博客地址:http://blog.csdn.net/shuxiao9058 原始作者:季亚 前言:看过本人博客的朋友都知道,我这个人还是比较青睐于红帽子系统的,目前经常使用的Linux是rhel转载 2012-10-08 17:42:43 · 1243 阅读 · 0 评论 -
Linux undefined reference to av_register_all
编译时gcc -Wall a.c -o a.out -lm -lavcodec -lavformat -lavutil原创 2012-09-24 14:38:17 · 2865 阅读 · 0 评论 -
symbol avpriv_float_dsp_init, version LIBAVUTIL_51 not defined in file libavutil.so.51 with link tim
* 下载ffmpeg和x264的源码这个自己google* 配置文件选项./configure --enable-shared --enable-shared --enable-gpl --enable-nonfree --enable-x11grab --enable-libmp3lame --enable-libtheora --enable-libx264 --ena转载 2012-09-08 18:21:24 · 2527 阅读 · 1 评论 -
compat-wireless 交叉编译
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://wb127.blog.51cto.com/2232662/788953内核需要选中Bus support -> PCI support,否则编译会报错:compat-wireless-2012-02-22/drivers/net/wireless/ath/ath转载 2012-05-03 20:11:18 · 3184 阅读 · 0 评论 -
GCC编译选项
[介绍] gcc and g++分别是gnu的c & c++编译器 gcc/g++在执行编译工作的时候,总共需要4步 1.预处理,生成.i的文件[预处理器cpp] 2.将预处理后的文件不转换成汇编语言,生成文件.s[编译器egcs] 3.有汇编变为目标代码(机器代码)生成.o的文件[汇编器as] 4.连接目标代码,生成可执行程序[链接器ld] [参数详解] -x l转载 2013-08-23 15:41:15 · 626 阅读 · 0 评论