项目中需要使用glew库来实现高质量的透明图片绘制,所以在c++层需要引入外部库glew32.lib。
1、 下载 GLEW:GLEW Download
2、 新建目录windows\runner\gl,并将 glew.h 头文件和glew32.lib静态库文件复制到gl目录中。
3、 在runner目录下的CMakeLists.txt文件中添加:
cmake_minimum_required(VERSION 3.14)
project(runner LANGUAGES CXX)
# 添加外部库路径,必需放在add_executable()之前;
link_directories("${CMAKE_CURRENT_SOURCE_DIR}/gl/")
add_executable(${BINARY_NAME} WIN32
"flutter_window.cpp"
"main.cpp"
"utils.cpp"
"win32_window.cpp"
"${FLUTTER_MANAGED_DIR}/generated_plugin_registrant.cc"
"Runner.rc"
"runner.exe.manifest"
)
apply_standard_settings(${BINARY_NAME})
target_compile_definitions(${BINARY_NAME} PRIVATE "NOMINMAX")
# 链接外部库,必需放在add_executable()之后;glew32.lib只需要库名称即可。
target_link_libraries(${BINARY_NAME} PRIVATE flutter flutter_wrapper_app glew32)
target_include_directories(${BINARY_NAME} PRIVATE "${CMAKE_SOURCE_DIR}")
add_dependencies(${BINARY_NAME} flutter_assemble)
4、 在flutter_window.cpp文件中添加包含:
#include "gl/glew.h"
#pragma comment (lib,"glew32.lib")
经过以上步骤,便可以轻松引入外部库并使用。