我在我的应用程序中使用boost-thread。当我在客户端计算机上部署此应用程序(运行Ubuntu 11.10)时,我需要确保libboost_thread.so在计算机上可用。但是,当我运行“apt-get install libboost-thread1.46”时,它似乎会引入整个开发环境(libgcc,libbost1.46-dev等)。这台机器只需要运行时环境,而不需要开发环境。我想知道是否有更好的方法来解决这个问题。
答案 0 :(得分:2)
没有这样的包异常:Ubuntu上不存在“libboost-thread1.46”包,被apt-get
视为正则表达式,而开发包也匹配表达。这两个候选包名为libboost-thread1.46-dev
和libboost-thread1.46.1,后者是您想要的包。它只依赖于三个库(libgcc,libc,libstdc ++),所有这些都需要部署,因为你的程序和libboost-thread链接它们。
因此,通过安装libboost-thread1.46.1
进行部署,一切都应该没问题。
答案 1 :(得分:1)
您可以通过下载boost tar并使用bjam
构建工具来自行构建个性化需求。
答案 2 :(得分:1)
您可以静态链接到提升。
答案 3 :(得分:1)
您还可以使用bcp并将必要的文件复制到您自己的源代码树中。我个人在我的系统上安装了标头,只是将源文件添加到我的项目(Linux上的once.cpp
,thread.cpp
,timeconv.inl
,tss_null.cpp
。