找不到库
首先看hyperlink
Linux静态库命名规范,必须是"lib[your_library_name].a":lib为前缀,中间是静态库名,扩展名为.a。
动态链接库的名字形式为 libxxx.so,前缀是lib,后缀名为“.so”:
针对于实际库文件,每个共享库都有个特殊的名字“so name”。在程序启动后,程序通过这个名字来告诉动态加载器,该载入哪个共享库。
在文件系统中,soname仅是一个链接到实际动态库的链接。对于动态库而言,每个库实际上都有另一个名字给编译器来用。它是一个指向实际库镜像文件的链接文件(lib+soname+.so)。
报错为:
cannot find -lInclude,那么需要找的动态库名字就叫做libInclude.so。把这个库的路径加入到makefile中,语法为:
g++ TestStaticLibrary.cpp -L ../DynamicLibrary -lInclude