我一直在尝试使用CMake,已经成功添加了GLEW,但是在尝试添加Ultralight时一直与之对抗。
Ultralight SDK包含4个.lib和4个.dll文件(我正在尝试使用.lib文件):ultralight Lib folder
头文件也位于include文件夹中,例如:ultralight include folder
所以我尝试了这个CMakelist.txt:
cmake_minimum_required (VERSION 3.8)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
PROJECT(HumbugEngine)
include(ExternalProject)
find_package(OpenGL REQUIRED)
set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin)
#
# Dependencies
#
#
# ULTRALIGHT
#
set(ULTRALIGHTS_DIR_SDK "deps/ultralight")
set(ULTRALIGHT_INCLUDE_DIR "${ULTRALIGHTS_DIR_SDK}/include")
set(ULTRALIGHT_LIBRARY_DIR "${ULTRALIGHTS_DIR_SDK}/lib")
add_library(ultralight STATIC "${ULTRALIGHT_LIBRARY_DIR}/Ultralight.lib")
add_library(ultralightCore STATIC "${ULTRALIGHT_LIBRARY_DIR}/UltralightCore.lib")
add_library(webcore STATIC "${ULTRALIGHT_LIBRARY_DIR}/WebCore.lib")
add_library(appcore STATIC "${ULTRALIGHT_LIBRARY_DIR}/AppCore.lib")
set_target_properties(ultralight PROPERTIES LINKER_LANGUAGE CXX)
set_target_properties(ultralightCore PROPERTIES LINKER_LANGUAGE CXX)
set_target_properties(webcore PROPERTIES LINKER_LANGUAGE CXX)
set_target_properties(appcore PROPERTIES LINKER_LANGUAGE CXX)
#
# GLEW
#
add_definitions(-DGLEW_STATIC)
add_subdirectory(deps/glew EXCLUDE_FROM_ALL)
#
# Headers
#
include_directories(
${PROJECT_SOURCE_DIR}/include
${ULTRALIGHT_INCLUDE_DIR}
)
#
# Sources
#
file(GLOB PROJECT_SOURCES "src/*.cpp")
add_executable(${PROJECT_NAME} ${PROJECT_SOURCES})
target_link_libraries(
${PROJECT_NAME}
${OPENGL_LIBRARIES}
libglew_static
ultralight ultralightCore webcore appcore
)
我的构建文件夹如下:build image
构建成功,我没有任何错误,但是在视觉上我不断得到
LINK : fatal error LNK1104: cannot open file 'Debug\ultralight.lib'
感谢您的帮助,找不到关于我做错了什么的提示,我是CMake的初学者。
PS:我无法发布图片,因为我刚刚创建了此帐户:(