安装sqlite c++库遇到的问题
作者:互联网
安装sqlite c++库遇到的问题
编译环境,vs2017+64bit+MFC gui
问题1
严重性 代码 说明 项目 文件 行 禁止显示状态
错误 C1047
对象或库文件“D:\open_source\sqlite3\sqlite3pp-master\headeronly_src\sqlite3.lib”是使用比创建其他对象所用编译器旧的编译器创建的
;请重新生成旧的对象和库 SplitDemo D:_sync_work3\rst_DL_3win\SplitDemo\LINK 1
解决办法:Release模式下->属性->常规->项目默认值->全程序优化 将这里的默认项 “使用链接时间代码生成”改为“无全程序优化, 接下来就可以运行了。
原始文章link
问题2
严重性 代码 说明 项目 文件 行 禁止显示状态
警告 LNK4098 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library SplitDemo D:_sync_work3\rst_DL_3win\SplitDemo\LINK 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 studio\2017\community\vc\tools\msvc\14.16.27023\atlmfc\include\afx.h 24
VS2013运行MFC程序错误提示
LINK : warning LNK4098: 默认库“MSVCRT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library
解决方法:
编译选项设置如下:
1、【项目】->【属性】->【配置属性】->【C/C++】->【代码生成】->【运行时库】,设置为“多线程DLL(/MD)
2、【项目】->【属性】->【配置属性】->【连接器】->【输入】->【忽略指定库】,输入:msvcrt.lib
或者:
【项目】->【属性】->【配置属性】->【连接器】->【命令行】,输入:/NODEFAULTLIB:msvcrt.lib
标签:sqlite,MFC,lib,禁止显示,c++,NODEFAULTLIB,SplitDemo,安装,属性 来源: https://blog.csdn.net/heraldww/article/details/102723119