‘壹’ 新手:linux下使用第三方C库(openssl),是调用.so文件还是直接调用.h文件
不管什么库文件,你都既要在包含.h文件(不然编译通不过:有未声明的函数),也要在gcc选项里面指定.so文件的位置(不然链接通不过:未知的符号)
比如
gcc -I include_path -L lib_path -lyourlib
include_path改成你头文件的目录
lib_path改成你动态库文件的目录
-lyourlib 改成l加上你要引用的库文件名字
比如libpthread.so就改成-lpthread
‘贰’ 关于 Linux c 的函数库文件的 路径问题
要学会用man,特别是man2(系统调用)和man3(C函数库),比如:
mansqrt
会显示需要引用的头文件,编译时需要的动态链接库
如果重复,则需要指定手册章节,比如
manwrite显示的是write程序帮助,如果想看系统调用,则要输入man2wirte
另外,/lib64:/lib:/usr/lib64:/usr/lib这些是系统缺省的,不用指定
‘叁’ Linux系统下的C代码如何往单片机上移植(那些库文件如何处理的)
Linux移植到arm上,主要有三大部分:
1)bootload部分,也就是引导程序设计,一般都有现成的移植程序,如Uboot
2)Linux内核,通过内核裁剪和arm-linux-gcc编译后,
3)文件系统移植
内容还是很多,三言两语无法解释清楚,还是找个视频看看吧
多高深的一门技术。怎么可能在这上面几句话学会嘛。。找点资料看看吧
‘肆’ linux下,C语言头文件在哪
一、 C标准库头文件,以及Linux的标准库文件的对应头文件,默认放在/usr/include下。 如图:
标识出了最常用的几个头文件。
二、 自定义头文件,或者集成头文件,需要在编译的时候指定。可以在命令行中指定,也可以在makefile中指定。
指定自定义头文件路径方式为:
-IPATH1 -IPATH2...
如当前目录下的inc文件夹,指定为头文件, 那么在编译a.c时,可以命令写作:
gcc a.c -I./inc -o a.out