一直很少在linux编程,更不用说在linux下调用开源库。最近遇到了点问题,将生成的程序在本机上跑没有问题,在其他机器上跑遇到一些问题,原来是动态库的相关问题。
一、linux下安装了openssl,makfile文件里面并没有将库文件包含进来的话,虽然编译开关加上-lssl -lcrypto,可以编译通过,但是调用的时候需要态库。查看程序依赖动态库的命令"ldd test" 运行,ldd test ,可以看到程序依赖的动态库
二、如果在makfile文件里面加上LIB = ../libs ,libs文件夹下加上libssl.a,libcrypto.a ,重新编译,查看生成的程序的依赖动态库,可以看出程序不在依赖libssl.so.10等动态库了