1. linux下的so,o,lo,a,la文件有什么区别
o: 编译的目标文件
a: 静态库,其实就是把若干o文件打了个包
so: 动态链接库(共享库)
lo: 使用libtool编译出的目标文件,其实就是在o文件中添加了一些信息
la: 使用libtool编译出的库文件,其实是个文本文件,记录同名动态库和静态库的相关信息
2. 嵌入式Linux开发中的文件I/O是什么
嵌入式linux开发中的文件I/O就是对外设进行文件抽象,也就是认为一切外部设备都是文件,所有对外设的访问都通过文件方式。多任务就是用一个CPU执行多个任务,这个任务叫做进程或线程。
I/O输入/输出(Input/Output),分为IO设备和IO接口两个部分。
在POSIX兼容的系统上,例如Linux系统,I/O操作可以有多种方式,比如DIO(Direct I/O),AIO(Asynchronous I/O 异步I/O),Memory-Mapped I/O(内存映设I/O)等,不同的I/O方式有不同的方式和性能,在不同的应用中可以按情况选择不同的I/O方式。
输入输出I/O流可以看成对字节或者包装后的字节的读取就是拿出来放进去双路切换;实现联动控制系统的弱电线路与被控设备的强电线路之间的转接、隔离,以防止强电窜入系统,保障系统的安全;
3. linux o 文件不是ELF文件 那个怎么汇编
首先.o文件目标文件,也是ELF,.o就是汇编生成的,但是二进制文件不一定可执行
用.o生成可执行文件不叫汇编,叫链接,.o与运行所需的库进行链接最终生成可执行文件或者库。
操作的话就用gcc就好了,不同的参数执行不同的功能,比如说-o,-shared等,网上资料很多,用好gcc或者g++工具就ok
4. c语言 linux .o文件 不是ELF格式的 那这是什么文件
.o文件是编译过程中的一个中间文件
一次完整的编译,可以分为编译和链接两个阶段
编译就是.c生成.o,一般用gcc
链接就是.o生成elf,一般用ld
不过用gcc也可以完成链接,gcc会识别文件扩展名调用ld的
更细分,还有cpp的预编译,as的汇编编译
cpp gcc as ld这个是完整的一次编译过程
5. linux下的so,o,lo,a,la文件有什么区别
它们的具体区别并不算太大,只是链接后的不同,具体区别如下:
6. linux下 为什么要生成.o文件 .o文件和.c文件还有生成的可执行文件有啥区别啊
linux下.c只是简单的文本文件,.o是编译之后的二进制文件,操作方法如下;
1、首先在电脑中打开linux,然后安装gcc g++编译工具。
7. linux 使用.o文件
gcc foo.c -o foo.o表示将foo.c文件进行编译、链接,产生foo.o的可执行文件。linux下没有后缀一说。gcc foo.c命令直接产生a.out可执行文件,而“-o foo.o”这个参数用于将a.out文件赋一个你想要的文件名。此命令已经包含编译、链接的过程,直接生成可执行文件了(Windows下就是.exe文件)输入以下命令来查看文件格式:# file foo.ofoo.o: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, not stripped
8. 在Linux中 *.o 是什么东西
obj文件。不过Linux中并不以后缀名来区分文件的。也就是说你一个文本文档一样可以命名为xx.o
9. linux系统中 “.o”文件一般是什么语言写的
.o是目标二进制文件,一般来说就是一堆指令码组成的文件,他本身有已重定位和未重定位之分,一般采用的是elf文件格式(建议可以参考elf文件的说明)。可以通过gcc工具链中的objmp工具(如果是ppc的使用objmpppc.exe -S 目标.o、如果是mips的使用objmpmips.exe 目标.o)
10. linux中的.lo是什么文件
o: 编译的目标文件
a: 静态库,其实就是把若干o文件打了个包
so: 动态链接库(共享库)
lo: 使用libtool编译出的目标文件,其实就是在o文件中添加了一些信息
la: 使用libtool编译出的库文件,其实是个文本文件,记录同名动态库和静态库的相关信息