Skip to content

Latest commit

 

History

History
136 lines (66 loc) · 6.59 KB

build_on_win_with_gui.md

File metadata and controls

136 lines (66 loc) · 6.59 KB

English | 中文

CMakeGUI + VS 2019 IDE编译FastDeploy

注:此方式仅支持编译FastDeploy C++ SDK

目录

使用CMake GUI进行基础配置

步骤一:首先,打开CMake GUI,先初始化FastDeploy工程:

image

步骤二:点击Configure后,在弹窗中设置编译"x64"架构:

image

初始化完成后,显示如下:

image

步骤三:由于FastDeploy目前只支持Release版本,因此,先将"CMAKE_CONFIGURATION_TYPES"修改成"Release"

image

接下来,用户可根据自己实际的开发需求开启对应的编译选项,并生成sln解决方案。以下,针对编译CPU和GPU版本SDK各举一个例子。

编译CPU版本 C++ SDK设置

步骤一:勾选CPU版本对应的编译选项。注意CPU版本,请不要勾选WITH_GPU和ENABLE_TRT_BACKEND

image

这个示例中,我们开启ORT、Paddle、OpenVINO等推理后端,并且选择了需要编译TEXT和VISION的API

步骤二:自定义设置SDK安装路径,修改CMAKE_INSTALL_PREFIX

image

由于默认的安装路径是C盘,我们可以修改CMAKE_INSTALL_PREFIX来指定自己的安装路径,这里我们将安装路径修改到build\fastdeploy-win-x64-0.2.1目录下。

image

编译GPU版本 C++ SDK设置

步骤一:勾选GPU版本对应的编译选项。注意GPU版本,请需要勾选WITH_GPU

image

这个示例中,我们开启ORT、Paddle、OpenVINO和TRT等推理后端,并且选择了需要编译TEXT和VISION的API。并且,由于开启了GPU和TensorRT,此时需要额外指定CUDA_DIRECTORY和TRT_DIRECTORY,在GUI界面中找到这两个变量,点击右侧的选项框,分别选择您安装CUDA的路径和TensorRT的路径

image

image

步骤二:自定义设置SDK安装路径,修改CMAKE_INSTALL_PREFIX

image

由于默认的安装路径是C盘,我们可以修改CMAKE_INSTALL_PREFIX来指定自己的安装路径,这里我们将安装路径修改到build\fastdeploy-win-x64-gpu-0.2.1目录下。

使用Visual Studio 2019 IDE进行编译

步骤一:点击"Generate",生成sln解决方案,并用Visual Studio 2019打开

image

这个过程默认会从下载一些编译需要的资源,cmake的dev警告可以不用管。生成完成之后可以看到以下界面:

CPU版本SDK:

image

GPU版本SDK:

image

左侧界面,可以看到所有编译需要的include路径和lib路径已经被设置好了,用户可以考虑把这些路径记录下来方便后续的开发。右侧界面,可以看到已经生成fastdeploy.sln解决方案文件。接下来,我们使用Visual Studio 2019打开这个解决方案文件(理论上VS2022也可以编译,但目前建议使用VS2019)。

image

步骤二:在Visual Studio 2019点击"ALL BUILD"->右键点击"生成"开始编译

image

CPU版本SDK编译成功!

image

GPU版本SDK编译成功!

image

步骤三:编译完成后,在Visual Studio 2019点击"INSTALL"->右键点击"生成"将编译好的SDK安装到先前指定的目录

image

image

SDK成功安装到指定目录!

编译所有examples(可选)

可以在CMake GUI中勾选BUILD_EXAMPLES选项,连带编译所有的examples,编译完成后所有example的可执行文件保存在build/bin/Release目录下

image

image

特别提示

如果是用户自行编译SDK,理论上支持Windows 10/11,VS 2019/2022,CUDA 11.x 以及 TensorRT 8.x等配置,但建议使用我们推荐的默认配置,即:Windows 10, VS 2019, CUDA 11.2 和 TensorRT 8.4.x版本。另外,如果编译过程中遇到中文字符的编码问题(如UIE example必须传入中文字符进行预测),可以参考Visual Studio的官方文档,设置源字符集为/utf-8解决: