首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

关于live555不同库的有关问题

2013-10-30 
关于live555不同库的问题公司有个视频服务器项目,原先都是在Debug下,现在改成Release,调试会出错:1groups

关于live555不同库的问题
公司有个视频服务器项目,原先都是在Debug下,现在改成Release,调试会出错:
1>groupsock.lib(Groupsock.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“2”不匹配值“0”(StkErrReport.obj 中)
1>groupsock.lib(NetInterface.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“2”不匹配值“0”(StkErrReport.obj 中)
1>LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library
1>LINK : warning LNK4098: 默认库“MSVCRTD”与其他库的使用冲突;请使用 /NODEFAULTLIB:library
1>F:\rtmp\MyPrj\StkNetVideoServer\Release\StkNetVideoServer.exe : fatal error LNK1319: 检测到 2 个不匹配项

项目里面用到了rtmp服务(这个是请别人做的)和视频代理服务,应该还是Debug和Release库的问题,但是用到的同一个live555库,该怎么改。
[解决办法]

方法一:

既然冲突,那就禁用掉。在工程属性里面的库依赖。

1>LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library
1>LINK : warning LNK4098: 默认库“MSVCRTD”与其他库的使用冲突;请使用 /NODEFAULTLIB:library

我判断你应该是使用了不同版本的库导致的。

方法二:

可以尝试修改一下

//debug      Multi-threaded (/MT)
 
//release    Multi-threaded Debug (/MTd)

//以上为静态库版本

生成两种版本的均可。但是连接使用的时候注意对应版本。

//debug     Multi-threaded DLL Debug (/MDD)
 
//release   Multi-threaded DLL (MD)

//以上为动态库版本

热点排行