安装sqlite c++库遇到的问题
编译环境,vs2017+64bit+MFC gui
问题1
严重性 代码 说明 项目 文件 行 禁止显示状态
错误 C1047
对象或库文件“D:open_sourcesqlite3sqlite3pp-masterheaderonly_srcsqlite3.lib”是使用比创建其他对象所用编译器旧的编译器创建的
;请重新生成旧的对象和库 SplitDemo D:_sync_work3rst_DL_3winSplitDemoLINK 1
解决办法:Release模式下->属性->常规->项目默认值->全程序优化 将这里的默认项 “使用链接时间代码生成”改为“无全程序优化, 接下来就可以运行了。
原始文章link
问题2
严重性 代码 说明 项目 文件 行 禁止显示状态
警告 LNK4098 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library SplitDemo D:_sync_work3rst_DL_3winSplitDemoLINK 1
这个是2个lib文件都定义了相同的函数导致的,需要屏蔽其中一个,解决办法如下:
原始文章
文章很长,我就不复制粘贴了
问题3
LNK4098 默认库 与其他库的使用冲突;请使用 /NODEFAULTLIB:library
严重性 代码 说明 项目 文件 行 禁止显示状态
错误 C1189 #error: Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version.
Please #define _AFXDLL or do not use /MD[d] SplitDemo c:program files (x86)microsoft visual studio2017communityvctoolsmsvc14.16.27023atlmfcincludeafx.h 24
VS2013运行MFC程序错误提示
LINK : warning LNK4098: 默认库“MSVCRT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library
解决方法:
编译选项设置如下:
1、【项目】->【属性】->【配置属性】->【C/C++】->【代码生成】->【运行时库】,设置为“多线程DLL(/MD)
2、【项目】->【属性】->【配置属性】->【连接器】->【输入】->【忽略指定库】,输入:msvcrt.lib
或者:
【项目】->【属性】->【配置属性】->【连接器】->【命令行】,输入:/NODEFAULTLIB:msvcrt.lib
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!