zoukankan      html  css  js  c++  java
  • 在VC++静态LIB中嵌入其他LIB

    在VC++中创建静态LIB库工程,其他工程要使用该LIB时只需要H文件和LIB文件,没有DLL。
    如果该LIB内部使用了其他LIB文件,则需要将这些LIB文件一同提供给外界使用编译。
    有时LIB文件太多,对于其他工程而言,这些LIB文件没有直接使用到,增加了工程配置复杂性。

    下面介绍在VC++IDE环境中将内部所需的各个LIB文件集成到一个LIB的方法。

    选择“Project | Settings”菜单进入到LIB项目设置界面,切换到“Library”选项卡,
    在该页下方的“Project Options”编辑框中,我们可以看到类似如下的文字:
    /nologo /out:"..\..\Lib\VC60\Debug\MyLib.lib"
    在末尾加上其他LIB文件名即可合并LIB到最终的一个LIB中,在这里是MyLib.lib,
    例如“Project Options”设置为:
    /nologo zip.lib rar.lib "../Lib/Other.lib" /out:"..\..\Lib\VC60\Debug\MyLib.lib"

    另外,操作系统标准的LIB文件最好不要加入,否则会有警告或冲突,例如user32.lib、shlwapi.lib
    操作系统标准的LIB文件需要放到最终DLL或EXE中。

    另外,这个配置的原理是调用VC IDE 的 lib工具的功能,具体在VC控制台下看Lib程序的命令提示,
    还有好多功能,比如从Lib中提取Obj...
    相关问题还有Link,比如查看程序实际链接那些lib库(link /verboseb  命令),
    这对引用很多Lib引起的链接错误很有帮助。
    lib, link 的相关参数还有很多,可能会用在一些生僻的地方。

  • 相关阅读:
    kafka 项目实战
    7.DHCP的相关命令
    3.centos 7执行service iptables save报错问题
    39.NFS(网络文件系统)
    37.Samba 文件共享服务1--配置共享资源
    36.Samba 文件共享服务1--安装及配置参数解释
    35.简单文件传输协议
    34.vsftpd服务程序--虚拟用户模式
    33.vsftpd服务程序--本地用户模式
    32.vsftpd服务程序--匿名开放模式
  • 原文地址:https://www.cnblogs.com/rhcad/p/1605113.html
Copyright © 2011-2022 走看看