1 编译NIM_Duilib

在上一篇文章NIM_Duilib – 使用Visual Studio 2019编译NIM_Duilib我们详细介绍了如何在Visual Studio中编译NIM_Duilib,以及如何生成NIM_Duilib相关的静态库的。在这篇文章中我们将详细介绍如何在Visual Studio中从零开始构建一个NIM_Duilib项目。

2 在Visual Studio中从零开始构建NIM_Duilib项目

在NIM_Duilib的github仓库中提供了一个快速入门文档,在该文档中介绍的构建一个新的NIM_Duilib项目的方式是引用NIM_Duilib的已有的lib项目,这种方式耦合度太大,所以本文主要介绍的是从引入第三方库的方式构建NIM_Duilib项目。

2.1 创建一个桌面应用程序项目

在Visual Studio中点击创建新项目,选择Windows桌面向导,

NIM_Duilib – 在Visual Studio中配置新的NIM_Duilib项目开发环境-StubbornHuang Blog

然后输入项目名称以及选择项目位置,然后应用程序类型选择桌面应用程序,其他选项勾选空项目

NIM_Duilib – 在Visual Studio中配置新的NIM_Duilib项目开发环境-StubbornHuang Blog

2.2 拷贝代码文件

这里的项目主要是以NIM_Duilib中example的basic为样本,将basic的所有代码文件添加到当前项目中。

2.3 在项目中引入NIM_Duilib库

首先新建一个third文件夹,然后在third中新建一个NIM_Duilib文件夹,在NIM_Duilib文件夹中新建一个include文件夹,将NIM_Duilib仓库下的base、duilib、ui_components、build文件夹拷贝到include文件夹中。

然后在NIM_Duilib文件夹中新建一个lib文件夹,然后将NIM_Duilib相关的静态库按平台(Win32,x64)、配置类型(Debug、Release)进行拷贝。

到目前为止我们就有了NIM_Duilib的包含头文件和lib库,之后就是常规的在Visual Studio中配置第三方库的步骤:

  • 在项目属性->C/C++->常规,附加包含目录中填入include目录的相对路径。

  • 在项目属性->链接器->常规,附加库目录中填入lib目录的相对路径。

  • 在项目属性->链接器->输入,附加依赖项中填入相关的lib的名称,Debug静态库为:base_d.lib、duilib_d.lib、libcef_dll_wrapper_d.lib、ui_components_d.lib,Release静态库为:base.lib、duilib.lib、libcef_dll_wrapper.lib、ui_components.lib。

2.4 项目属性配置

此外,我们还需要进行如下的项目配置:

  • 项目属性->C/C++->代码生成,将 Debug 模式的运行库修改为 /MTd,将 Release 模式的运行库修改为 /MT
  • 项目属性->C/C++->预处理器,在预处理器定义中增加定义OS_WIN
  • 项目属性->C/C++->语言,将符合模型,全部修改为

这些配置非常重要(已踩坑),如果没有修改会在项目编译时出现编译和链接错误。

2.5 项目运行

以下是basic项目运行成功的截图

NIM_Duilib – 在Visual Studio中配置新的NIM_Duilib项目开发环境-StubbornHuang Blog

3 查看我的测试项目

我把上面的项目已经放到了github上,项目地址:https://github.com/HW140701/NIM_Duilib_ConfigurationExample

有缘人可以参考这个项目配置,在Debug模式下运行项目时需要将项目根目录下的resources文件夹拷贝到exe所在的文件夹。

参考