如何在不同位置使用C语言编写的包中的函数

如何在不同位置使用C语言编写的包中的函数,c,matrix,C,Matrix,我正在尝试使用一个名为的线性代数包。我已经按照给定的说明完成了安装,现在可以使用了。现在我想使用hnfproj/src/lift/lift.c文件中的一些函数。我想创建自己的矩阵示例,并分别检查每个函数的输出。我不清楚怎么做。(我只知道C语言的基础知识,在文件夹中创建.C文件并在我的Ubuntu终端中运行。) 我知道我应该写一个C文件,包括这个“#include”文件名,并在我的文件“main.C”中创建一个矩阵。我不知道如何在不同的位置包含文件名。当我编译时,我不能使用“gcc-o程序main

我正在尝试使用一个名为的线性代数包。我已经按照给定的说明完成了安装,现在可以使用了。现在我想使用hnfproj/src/lift/lift.c文件中的一些函数。我想创建自己的矩阵示例,并分别检查每个函数的输出。我不清楚怎么做。(我只知道C语言的基础知识,在文件夹中创建.C文件并在我的Ubuntu终端中运行。) 我知道我应该写一个C文件,包括这个“#include”文件名,并在我的文件“main.C”中创建一个矩阵。我不知道如何在不同的位置包含文件名。当我编译时,我不能使用“gcc-o程序main.c lift.c”。我的“main.c”文件位于另一个文件夹中。我不想在包文件夹中创建任何make文件。那么,我如何使用“main.c”文件中的“lift.c”文件(位于单独的文件夹“main”中),并在“main”文件夹中创建所有可执行的make文件呢


如果很难给出答案,如果你能向我推荐一些可以了解这一点的资料,我将不胜感激。谢谢

无需将
lift.c
直接包含在
main.c
中,您可以从main调用
lift.c
中的函数

在编译方面,您可以使用:

gcc -o program main.c file_location/lift.c
如果需要其他选项,请添加它们(大多数标志位于开始处;库位于结束处,位于源代码之后)。您还可以将每个文件分别编译为目标代码,然后将目标文件链接在一起:

  gcc -c main.c
  gcc -c file_location/lift.c
  gcc -o program main.o lift.o
提及


我在两个不同的位置有两个文件