C++ g++;具有共享库的未定义引用

C++ g++;具有共享库的未定义引用,c++,g++,shared-libraries,C++,G++,Shared Libraries,我正在尝试使用以下命令编译具有共享库的文件: g++ -L. -lsubmit main.cpp 它输出: /tmp/ccRFpx1v.o: In function `main': main.cpp:(.text+0x5): undefined reference to `Submit_test()' collect2: error: ld returned 1 exit status 我在工作目录中有main.cpp和libsubmit.so。这是我的主要.cpp void Submit_

我正在尝试使用以下命令编译具有共享库的文件:

g++ -L. -lsubmit main.cpp
它输出:

/tmp/ccRFpx1v.o: In function `main':
main.cpp:(.text+0x5): undefined reference to `Submit_test()'
collect2: error: ld returned 1 exit status
我在工作目录中有main.cpp和libsubmit.so。这是我的主要.cpp

void Submit_test();
int main()
{
    Submit_test();
}
下面是
nm-D--demangle libsubmit.so

...
0000000000000e0e T Submit_test()
...

我应该如何编译代码?

这可能是一个重复的过程


TLDR建议您将链接库放在对象/源文件之后。

是否包含库的头文件?还可以看看这个问题:我将-lsubmit移到了末尾,它确实解决了这个问题