关于Linux C引用静态类库的问题

时间:2020-11-29 13:12:41
本人初次接触Linux C编程。编译了一个静态类库spooles.a。在编译spooles.a之前,spooles文件夹中有mic.h等一系列头文件,spooles.h引用了misc.h等头文件。在另一个程序(CCX)中需要引用到这个类库。编译好了将其拷贝到/usr/lib目录下。但是好像无法引用spooles.a啊!在CCX执行make命令的时候出现错误,显示如下:
In file included from arpack.c:26:
spooles.h:26:18: error: misc.h: No such file or directory
spooles.h:27:22: error: FrontMtx.h: No such file or directory
spooles.h:28:21: error: SymbFac.h: No such file or directory
请问这是什么问题?是我编译spooles.a出错了呢还是spooles.a文件拷贝的位置不对?求解答,最好详细点,谢谢!

8 个解决方案

#1


gcc  ...  -I/your_header_file_path ...spooles.a

#2


楼主 man gcc 看看怎么编译

#4


头文件需要包括在gcc能找到的文件夹下

#5


二楼正解 111

#6


引用 2 楼 zhxianbin 的回复:
楼主 man gcc 看看怎么编译

 多谢!但是不是编译一个C,而是需要把一堆C使用makefile命令编译好。用的命令是make,出错了。

#7


引用 6 楼 u013710880 的回复:
Quote: 引用 2 楼 zhxianbin 的回复:

楼主 man gcc 看看怎么编译

 多谢!但是不是编译一个C,而是需要把一堆C使用makefile命令编译好。用的命令是make,出错了。
  编译单个c是基本,Makefile 本身不是编译器,也是 gcc 编译,所以一切 gcc 指令 的错误还是要弄清 gcc 的用法

#8


要输入目标地址

#1


gcc  ...  -I/your_header_file_path ...spooles.a

#2


楼主 man gcc 看看怎么编译

#3


#4


头文件需要包括在gcc能找到的文件夹下

#5


二楼正解 111

#6


引用 2 楼 zhxianbin 的回复:
楼主 man gcc 看看怎么编译

 多谢!但是不是编译一个C,而是需要把一堆C使用makefile命令编译好。用的命令是make,出错了。

#7


引用 6 楼 u013710880 的回复:
Quote: 引用 2 楼 zhxianbin 的回复:

楼主 man gcc 看看怎么编译

 多谢!但是不是编译一个C,而是需要把一堆C使用makefile命令编译好。用的命令是make,出错了。
  编译单个c是基本,Makefile 本身不是编译器,也是 gcc 编译,所以一切 gcc 指令 的错误还是要弄清 gcc 的用法

#8


要输入目标地址