我在 Lib_file.h 和 Lib_file.cpp 中编写了一些代码。我希望将此代码转换为静态库。我能够编译代码(使用命令g++ -I <necessary include files> -o Lib_file.o Lib_file.cpp
)来获取 Lib_file.o。我还可以使用该ar rvs Lib_file.a Lib_file.o
命令将其添加到存档中。现在,当我尝试使用 -L 选项在其他代码中使用这个库时,我得到未定义的引用错误。此错误指向我的 Lib_file.o 中的代码。所以我的问题是如何让我的 Lib_file.cpp 中的代码链接到它使用的库。
到目前为止,我已经尝试了以下选项
一、创建Lib_file.o后,我尝试了以下命令
g++ -L<include path> -l<.a files> Lib_file.o
。在执行此命令时,我收到以下错误
/usr/lib/../lib64/crt1.o:在函数“_start”中: init.c:(.text+0x20): undefined reference to `main' collect2: ld 返回 1 个退出状态
二、我尝试使用 ar 命令将所有必要的 .a 文件与我的 Lib_file.o 一起包含在新存档中。当我尝试将 Lib_file.a 库与我的应用程序一起使用时,仍然出现未定义的引用错误
请帮帮我