有个问题是conv2需要的是libcblas.so, 但是服务器没有这个动态库,只有相应的静态库
其实动态库和静态库链接的方法是一样的,但是静态库对库名排列的顺序是由要求的,动态库没有
所以对于util/Makefile中
LINK_LIBS := -L$(ATLAS_LIB_PATH) -latlas -lcblas
要改为
LINK_LIBS := -L$(ATLAS_LIB_PATH) -lcblas -latlas
这是因为latlas依赖lcblas
另外,-L$(ATLAS_LIB_PATH)只是指明了库的目录,后面的-lcblas才是所用到的库的名字
也可以这么写
... /usr/lib64/atlas/libcbas.a /usr/lib64/atlas/libatlas.a
直接指明要用哪个库文件

本文探讨了在服务器环境下,当需要使用libcblas.so动态库而服务器仅提供相应静态库时,如何通过调整链接命令LINK_LIBS来实现库的正确加载。通过实例演示了如何将链接命令中的库名排列顺序进行修改,确保latlas依赖于lcblas得以正常运行。
3947

被折叠的 条评论
为什么被折叠?



