linux使用boost编译链接正常,运行出现找不到共享库的异常提示
linux使用boost编译链接正常,运行出现找不到共享库的错误提示?
我照网上的办法 把boost1.42装上了,在codeblocks中写了一个测试程序,编译链接都正常了,一运行就出现error while loading shared libaries:libboost_date_time.so.1.42,
这是什么原因?
我在安装boost的时候没有用ldconfig命令,刚使用Ubuntu不熟悉,不会用这些命令,会不会与此有关?
在windows下我用boost编译好以后链接都是静态的,程序发布的时候不需要带上dll,在Linux里可以这样吗?
------解决方案--------------------
与你的配制有关,在linux下你编译成动态调用的了
解决方案(在不修改调用基出上)
1.笨方法:
找到libboost_date_time.so.1.42(应该在/usr/lib/boost下)文件,将它cp到你程序目录下
2.找到libboost_date_time.so.1.42所在路径,然后用
export PATH=$PATH:/usr/lib/boost库路径
你的程序就可以运行了
另外,记得boost库在gcc下可以用静态编译的选项,具体看一下boost的HELP DOC吧.
------解决方案--------------------
把库装在/usr/loca/lib目录下了吧。。。
------解决方案--------------------
把boost的安装目录加入环境变量。/etc/profile文件中是环境变量。
还有就是makefile编译的时候-L指出库的安装路径。
------解决方案--------------------
把boost的安装目录加入环境变量。/etc/profile文件中是环境变量。
还有就是makefile编译的时候-L指出库的安装路径。
------解决方案--------------------
我照网上的办法 把boost1.42装上了,在codeblocks中写了一个测试程序,编译链接都正常了,一运行就出现error while loading shared libaries:libboost_date_time.so.1.42,
这是什么原因?
我在安装boost的时候没有用ldconfig命令,刚使用Ubuntu不熟悉,不会用这些命令,会不会与此有关?
在windows下我用boost编译好以后链接都是静态的,程序发布的时候不需要带上dll,在Linux里可以这样吗?
------解决方案--------------------
与你的配制有关,在linux下你编译成动态调用的了
解决方案(在不修改调用基出上)
1.笨方法:
找到libboost_date_time.so.1.42(应该在/usr/lib/boost下)文件,将它cp到你程序目录下
2.找到libboost_date_time.so.1.42所在路径,然后用
export PATH=$PATH:/usr/lib/boost库路径
你的程序就可以运行了
另外,记得boost库在gcc下可以用静态编译的选项,具体看一下boost的HELP DOC吧.
------解决方案--------------------
把库装在/usr/loca/lib目录下了吧。。。
------解决方案--------------------
把boost的安装目录加入环境变量。/etc/profile文件中是环境变量。
还有就是makefile编译的时候-L指出库的安装路径。
------解决方案--------------------
把boost的安装目录加入环境变量。/etc/profile文件中是环境变量。
还有就是makefile编译的时候-L指出库的安装路径。
------解决方案--------------------