动态库的编译,该怎么解决
动态库的编译
自己写一个test.c 然后生成一个动态库文件 libtest.so . 然后我把它cp到 /usr/lib。然后我的问题是用gcc编译的时候,它不是默认的去这个目录下找到对应的库文件吗 为什么一定要指定(-l test)呢
------解决方案--------------------
我的理解:gcc不会自动打开所有的库文件去搜索某个函数,他只找-l指定的库文件,还有就是默认的最基本的glibc。所谓”默认的去这个目录下找到对应的库文件“,应该是说,gcc需要找某个库的时候去那个目录,问题是gcc不知道需要找哪个库除非你用-l告诉它。
自己写一个test.c 然后生成一个动态库文件 libtest.so . 然后我把它cp到 /usr/lib。然后我的问题是用gcc编译的时候,它不是默认的去这个目录下找到对应的库文件吗 为什么一定要指定(-l test)呢
------解决方案--------------------
我的理解:gcc不会自动打开所有的库文件去搜索某个函数,他只找-l指定的库文件,还有就是默认的最基本的glibc。所谓”默认的去这个目录下找到对应的库文件“,应该是说,gcc需要找某个库的时候去那个目录,问题是gcc不知道需要找哪个库除非你用-l告诉它。