如何指定使用静态库libstdc++.a而不是动态库libstdc++.so

pi1ot 2002-08-25 11:26:20
我用来编译程序的系统完整的安装了g++和libstdc++,调用了libstdc++.so.xxx,但是运行程序的系统的lib目录只有静态的libstdc++.a.xxx,没有相应的so文件。

如何在编译时指定使用静态的.a文件而不是默认的.so?

我看了一遍g++的参数,没有找到。
...全文
929 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
blh 2002-08-26
  • 打赏
  • 举报
回复
1.It is -lstdc++,not -llibstdc++
2.-static
wwwunix 2002-08-26
  • 打赏
  • 举报
回复
编译时用-static参数。
pi1ot 2002-08-25
  • 打赏
  • 举报
回复
对了,-llibstdc++ 不行.
avbot 连通 IRC、XMPP 和 QQ群, 并作为 AVIM 群机器人实现 AVIM 群聊功能. 能实时记录聊天信息。每日自动生成新的日志文件。使用方法和介绍参考 社区维基的avbot介绍编译请参考 社区维基的avbot编译指导For Windows 编译注意windows 版本有自动编译版,请到 ftp://ci.avplayer.org 下载。想了解 avbot 最重要的子模块 libwebqq 请点开 libwebqq 目录查看其 README.md支持的系统cmake >= 3.0GCC 系centos >= 7ubuntu >= 14.04debian >= 7和其他一些 gcc >= 4.8 的系统。MSVC 系VisutalStudio 2013 (支持 Vista 以上系统)VisutalStudio 2013 - vc120_xp toolset (支持 Windows XP 以上系统)启用步骤cmake -G "VisualStudio 12 2013 Win64" -T "vc120_xp"icc 系icc >= 14clang 系clang >= 3.4编译注意事项请不要在源码文件夹里直接执行 cmake. 务必创建一个专用的文件夹存放编译中间文件,如建立个 build 文件夹。 然后在 build 文件夹里执行 cmake PATH_TO_AVBOT因为 cmake 有很多时候,需要删除 build 文件夹重新执行,而在源码内部直接 cmake ,则因为文件夹混乱,不好清除中间文件boost 相关boost 需要至少 1.57 版本。boost 请静态编译, gentoo 用户注意 USE=static-libs emerge boostwin 下, boost 请使用 link=static runtime-link=static 执行静态编译 (包括 mingw 下)。linux 下如果必须自己编译 boost 的话,请使用参数 link=static runtime-link=shared --layout=system variant=release --prefix=/usr 执行编译。link=static 表示编译为静态库, runtime-link=static 则表示,应用程序最终会使用静态链接的 C 运行时。这个在 windows 平台是必须的要求。因为 VC 的 C 和 C 运行时打包起来非常麻烦。(mingw 的也一样)linux 那边 runtime-link=shared 表示使用动态链接的 libstdc .so, libstdc .so 无需静态链接,不是么 ;)添加 --layout=system variant=release 才能编译出 libbosot_context.a 这样的不带各种后缀的库版本。MSVC 相关理论上 2012 版本也是支持的,不过没有测试过。cmake 生成好 VC 工程然后打开 avbot.sln 即可。如果 boost 在 c:/boost 则无需额外设置 如果不是,需要设定 BOOST_ROOT, 可以在 cmake-gui 里点 configure 按钮前,通过 "Add Enytry" 按钮添加。关于历史avbot 的历史剧烈膨胀, 达到 127MB 之巨, 已经严重影响到国内用户执行 git clone 了. 正好 avbot 经历了一次重构, 因此重构后 avbot 丢弃全部历史轻装上阵. 当然历史并非真的丢弃, 已经有一份完整的历史在 https://github.com/microcai/avbot 备份了.关于商业开发avbot 提供一份商业授权. 因为 avbot 对 XMPP 协议的支持是使用的 gloox, gloox 是个GPL授权的库. 因此 xmpp 支持会被禁用. 除非你同时购买了 gloox 的商业授权.购买商业授权后, 您可以:1. 修改avbot的代码并无需公开自己的修改 2. 获得为期一年的技术支持 (可续) 3. 将 avbot 集成到自己的商业产品中 标签:avbot  聊天机器人  avplayer

19,612

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧