函数库冲突

xspace_time 2011-05-14 09:54:51
使用pcre.lib静态库时,和MSVCRT.LIB冲突

使用选项/NODEFAULTLIB:MSVCRT.LIB忽略掉了该库,程序得以成功链接

但是假如程序中又用到了几个MSVCRT.LIB中的函数,那么忽略了就会导致找不到函数,那么两个互相冲突的库不能使用,又不能忽略任何一个,该怎么办呢

能把库中的函数分解出来成独立的obj文件吗

但是有冲突的动态链接库就没有这个问题

当然希望大家写两个互相冲突的库尝试以下解决方法
...全文
95 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
xspace_time 2011-05-14
  • 打赏
  • 举报
回复
也许自己写库不使用其它的库还差不多,不过就那几条循环,跳转,判断,移位,又不调用WINAPI,技术又不高,能实现的东西实在太少了
xiaopoy 2011-05-14
  • 打赏
  • 举报
回复
不使用所有的库,自己手工在link.exe的设置里指定
xspace_time 2011-05-14
  • 打赏
  • 举报
回复
那就用动态库了,一会回来结贴,似乎regex库的例子比较多,哪个库比较好用呢,函数就和直接使用正则表达式测试软件一样,传入源字符串的地址,再传入查找方式基本上就可以的库,当然其它内存分配等如果需要的话再像汇编一样直接设置以下也许比较简单明确吧
無_1024 2011-05-14
  • 打赏
  • 举报
回复
用动态库生成的lib会好一点的
老邓 2011-05-14
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 masterz 的回复:]

避免用静态库。静态库容易导致/MT和/MD混用。通常第三方的库/MT和/MD不通一。
[/Quote]
++
动态库是更好的选择!
尤其是涉及到多模块调用时。
问题往往是由静态链接引起。
masterz 2011-05-14
  • 打赏
  • 举报
回复
避免用静态库。静态库容易导致/MT和/MD混用。通常第三方的库/MT和/MD不通一。
xunxun 2011-05-14
  • 打赏
  • 举报
回复
分解出来obj很多,而且obj很多都是互相依赖,会更麻烦。

这种情况反正要注意/MT和/MD不要混用(包含那些在代码里写的pragma什么自动链接的也不要滥用)

24,854

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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