guard2002
驱动中牛
驱动中牛
  • 注册日期2002-05-21
  • 最后登录2017-03-07
  • 粉丝0
  • 关注0
  • 积分46分
  • 威望65点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
  • 社区居民
阅读:1363回复:10

再问个关于链接库的问题

楼主#
更多 发布于:2003-07-07 08:27
经常在一些动态/静态链接库的源程序中看到这样的情况:
其中的BUILD选项不仅包括动态链接库的RELEASE/DEBUG,它的project settings包括LINK和MIDL选项页。同时还可以包括静态链接库的RELEASE/DEBUG,而它的project settings则包括LIBRARY选项页。

而通过VC的向导产生的project要不就是生成动态链接库,要不生成静态链接库。要通过Build\\configurations中Add一个配置时则没有上述效果
请问如何达到上述效果呢,看哪些方面的资料?

谢谢!

最新喜欢:

mapoflmapofl
guard2002
驱动中牛
驱动中牛
  • 注册日期2002-05-21
  • 最后登录2017-03-07
  • 粉丝0
  • 关注0
  • 积分46分
  • 威望65点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2003-07-07 12:16
等了半天好象没人回
还请大家帮忙啦
wywwwl
驱动大牛
驱动大牛
  • 注册日期2002-08-16
  • 最后登录2018-04-07
  • 粉丝1
  • 关注0
  • 积分-10分
  • 威望135点
  • 贡献值6点
  • 好评度76点
  • 原创分0分
  • 专家分0分
  • 社区居民
板凳#
发布于:2003-07-07 14:57
友情帮顶 :D
琢磨悟真知
jason.gao
驱动小牛
驱动小牛
  • 注册日期2002-05-08
  • 最后登录2003-11-12
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-07-07 15:48
晕,看了半天,不知道你想干什么。

于是,我建了一个static lib,看到library选项无非是output filename,而你在DLL的编译选项里(手工)加上:

/out:\"???.dll\"
/implib:\"???.lib\"

就可以起到同样的作用了呀
我打字很快。
guard2002
驱动中牛
驱动中牛
  • 注册日期2002-05-21
  • 最后登录2017-03-07
  • 粉丝0
  • 关注0
  • 积分46分
  • 威望65点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
  • 社区居民
地下室#
发布于:2003-07-09 11:29
应该是我没有说明白

建了一个static lib,但我想通过\"project settings\"左边中可以选择生成DLL。
如果仅在OUTPUT中加/out:\"???.dll\" ,保存时提示说只能用.LIB扩展名。

我想能在static lib的工程里同时能生成DLL文件,同时在DLL设置时可以看到LINK和MIDL选项页。


我贴了个附件,只是希望能达到它的效果

谢谢

附件名称/大小 下载次数 最后更新
2003-07-09_lib.exe (98KB)  0
guard2002
驱动中牛
驱动中牛
  • 注册日期2002-05-21
  • 最后登录2017-03-07
  • 粉丝0
  • 关注0
  • 积分46分
  • 威望65点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
  • 社区居民
5楼#
发布于:2003-07-10 16:11
不知大家看了没有
希望给个意见
jason.gao
驱动小牛
驱动小牛
  • 注册日期2002-05-08
  • 最后登录2003-11-12
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-07-10 19:53
你不知道static lib是干嘛的吗?用它,当然不需要(也不可能用到)对应的DLL!

我前面说的是对DLL工程,你可以通过那种方式修改输出的DLL名和引入的LIB名。


实在搞不懂你想干什么。如果你想用一套代码同时生成静态和动态
库,你建两个工程就可以了。也不会有多麻烦

我这么耐心地回答你,一定要给分我哦  :mad::D:(;)
我打字很快。
guard2002
驱动中牛
驱动中牛
  • 注册日期2002-05-21
  • 最后登录2017-03-07
  • 粉丝0
  • 关注0
  • 积分46分
  • 威望65点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
  • 社区居民
7楼#
发布于:2003-07-11 11:17
但我在例子里看到它在一个工程里就实现了同时可以生成LIB和DLL,

当然在生成LIB时不需要用DLL了,但有时需要用DLL来减少文件的体积。

所以就有时需要生成LIB,有时需要生成DLL了。

给分先!

谢了
请继续关注
guard2002
驱动中牛
驱动中牛
  • 注册日期2002-05-21
  • 最后登录2017-03-07
  • 粉丝0
  • 关注0
  • 积分46分
  • 威望65点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
  • 社区居民
8楼#
发布于:2003-07-11 11:18
我怎么不可以再加分了?
奇怪
jason.gao
驱动小牛
驱动小牛
  • 注册日期2002-05-08
  • 最后登录2003-11-12
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2003-07-11 12:03
 
一个工程里就实现了同时可以生成LIB和DLL,

肯定也是可以的(应该相当于两套configuration),毕竟都是一些编译选项。你分析一下dsp文件看看是些什么选项。

分好像只能加一次。这次免了,下次有机会多给点我就是啦 :D :D

我打字很快。
guard2002
驱动中牛
驱动中牛
  • 注册日期2002-05-21
  • 最后登录2017-03-07
  • 粉丝0
  • 关注0
  • 积分46分
  • 威望65点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
  • 社区居民
10楼#
发布于:2003-07-11 13:52
没问题

感谢帮助
游客

返回顶部