2019-01-01 21:03
⁄ 工业·编程
⁄ 共 1837字
1、静态库和动态库的区别
(1)所谓静态库(*.a),就是程序link的时候就把静态库中的东西取出来,放到生成的可执行文件中,当这个可执行文件执行时,就不需要再次调用这个静态库了。
(2)所谓动态库(*.so),就是程序link的时候,只是将库中的 符号包含,并没有包含静态库里的内容,等到可执行程序在执行
时,需要依赖动态库中的内容,也就是“随用随取”。
(3)在linux编程中,对于静态库和动态库,在makefile中引用方式一模...
linux编程阅读全文
2018-12-29 20:55
⁄ 工业·编程
⁄ 共 548字
由于在linux中,内核空间和用户空间的内存是不能之间互相访问的,所以需要借助上面2个函数完成数据传输。
copy_to_user:从内核空间复制数据到用户空间
copy_from_user:从用户空间复制数据到内核空间。
在进行驱动相关程序设计时,经常会用到这两个函数,因为底层驱动显然是内核空间,调用驱动的是用户空间。
具体函数模型解释如下:
unsigned long copy_to_user(void __user *to, const void *from, u...
linux编程阅读全文
2018-11-20 17:18
⁄ 工业·编程
⁄ 共 372字
在开始学习嵌入式Linux的时,由于Linux是一种全新的操作系统,跟我们曾经熟悉的Windows的学习思路完全不同,所以在学习的过程中看不到目的,不知道从何开始,不知道为什么学,不知道学什么,所以总结一下嵌入式Linux开发流程,举例,现在手上有一块开发板,那么我们应该怎么进行嵌入式Linux开发呢,流程如下:
1.移植bootloader,如u-boot,vivi等。
2.裁剪Linux。
3.移植Linux。
4.制作根文件系统。
5.移植文件系统。
6.开发LC...
linux编程, 嵌入式阅读全文
2016-08-27 06:35
⁄ 工业·编程
⁄ 共 3033字
一、 在Windows下比较流行的GCC移植版主要有三个。他们是 MinGW,Cygwin和Djgpp。
1.MinGW 的主要方向是让GCC的Windows移植版能使用Win32API来编程。
(使用Win32API的代码可用MinGW的gcc编译,有点像用Linux开发环境开发Windows程序 如果你只是想在windows下使用gcc编译器也不想依赖其他的dll,mingw是很好的一个选择。 )
2.Cygwin 的目标是能让Unix下的程序代码在Windows下直接被编译。
(模拟Linux环...
Cgywin, GCC, linux编程, MinGW, MSYS阅读全文
2016-07-27 22:00
⁄ 工业·编程
⁄ 共 7926字
1.查看文件大小
查看当前文件夹下所有文件大小(包括子文件夹)
du -sh
# du -h
15M ./package
16K ./.fontconfig
4.0K ./.cache
5.1M ./.rpmdb
20M .
查看指定文件夹下所有文件大小(包括子文件夹)
# du -h ftp
3.8G ftp/sanya/doc
3.8G ftp/sanya
4.0K...
linux编程阅读全文
2016-07-04 06:48
⁄ 工业·编程
⁄ 共 1954字
Linux下对文件操作有两种方式:系统调用(system call)和库函数调用(Library functions)。可以参考《Linux程序设计》(英文原版为《Beginning Linux Programming》,作者是Neil Matthew和Richard Stones)第三章: Working with files。系统调用实际上就是指最底层的一个调用,在linux程序设计里面就是底层调用的意思。面向的是硬件。而库函数调用则面向的是应用开发的,相当于应用程序的api,采用这样的方式有很多种原因,第...
linux编程阅读全文
2016-06-22 22:39
⁄ 工业·编程
⁄ 共 2870字
最近在Linux下编程发现一个诡异的现象,就是在链接一个静态库的时候总是报错,类似下面这样的错误:
(.text+0x13): undefined reference to `func'
关于undefined reference这样的问题,大家其实经常会遇到,在此,我以详细地示例给出常见错误的各种原因以及解决方法,希望对初学者有所帮助。
1. 链接时缺失了相关目标文件(.o)
测试代码如下:
然后编译。
gcc -c test.c ...
linux编程阅读全文
2016-06-01 20:21
⁄ 工业·编程
⁄ 共 122字
1)到https://www.foxitsoftware.com/products/pdf-reader/下载;
2)tar -xvf 解压缩,得到到的是.run文件;
3)chmod +x 该文件;
4)./该文件,跳出安装界面,一步步到安装下去即可。
linux编程阅读全文
2016-05-31 20:12
⁄ 工业·编程
⁄ 共 1253字
tar
-c: 建立压缩档案
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件
这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。
-z:有gzip属性的
-j:有bz2属性的
-Z:有compress属性的
-v:显示所有过程
-O:将文件解开到标准输出
下面的参数-f是必须的
-f: 使用档案名字,切记,这个参数是最后一个参数,后...
linux编程阅读全文
2016-05-29 19:57
⁄ 工业·编程
⁄ 共 1088字
Linux下如何查看版本信息, 包括位数、版本信息以及CPU内核信息、CPU具体型号等等,整个CPU信息一目了然。
1、# uname -a (Linux查看版本当前操作系统内核信息)
Linux localhost.localdomain 2.4.20-8 #1 Thu Mar 13 17:54:28 EST 2003 i686 athlon i386 GNU/Linux
2、# cat /proc/version (Linux查看当前操作系统版本信息)
Linux version 2.4.20-8 (bhcompile@porky.devel.redhat.com)
(gc...
linux编程阅读全文