在运行时链接外部库
Linking external library in runtime
我正在尝试编译使用 FMOD 和 CMake 的简单程序。编译似乎没问题,但我的应用程序因 0xC0000135
而崩溃,即 STATUS_DLL_NOT_FOUND
我的CMakeList.txt
cmake_minimum_required(VERSION 3.7)
project(fmod-test)
set(FMOD_DIR "D:/FMOD SoundSystem/FMOD Studio API Windows")
set(CMAKE_CXX_STANDARD 11)
set(SOURCE_FILES main.cpp)
add_executable(fmod-test ${SOURCE_FILES})
include_directories(${FMOD_DIR}/api/lowlevel/inc ${FMOD_DIR}/api/studio/inc)
link_directories("${FMOD_DIR}/api/lowlevel/lib" "${FMOD_DIR}/api/studio/lib")
target_link_libraries(fmod-test
"${FMOD_DIR}/api/lowlevel/lib/fmod_vc.lib"
"${FMOD_DIR}/api/studio/lib/fmodstudio_vc.lib")
这是我的 cmake 配置或环境的问题吗?
我应该将 DDL 放在某个特定位置还是在 CMakeLists.txt 旁边的某个地方提供它们的路径?
通过将 api/lowlevel/lib
和 api/studio/lib
添加到 PATH 变量来解决。
感谢 kvr 的建议。
我正在尝试编译使用 FMOD 和 CMake 的简单程序。编译似乎没问题,但我的应用程序因 0xC0000135
而崩溃,即 STATUS_DLL_NOT_FOUND
我的CMakeList.txt
cmake_minimum_required(VERSION 3.7)
project(fmod-test)
set(FMOD_DIR "D:/FMOD SoundSystem/FMOD Studio API Windows")
set(CMAKE_CXX_STANDARD 11)
set(SOURCE_FILES main.cpp)
add_executable(fmod-test ${SOURCE_FILES})
include_directories(${FMOD_DIR}/api/lowlevel/inc ${FMOD_DIR}/api/studio/inc)
link_directories("${FMOD_DIR}/api/lowlevel/lib" "${FMOD_DIR}/api/studio/lib")
target_link_libraries(fmod-test
"${FMOD_DIR}/api/lowlevel/lib/fmod_vc.lib"
"${FMOD_DIR}/api/studio/lib/fmodstudio_vc.lib")
这是我的 cmake 配置或环境的问题吗? 我应该将 DDL 放在某个特定位置还是在 CMakeLists.txt 旁边的某个地方提供它们的路径?
通过将 api/lowlevel/lib
和 api/studio/lib
添加到 PATH 变量来解决。
感谢 kvr 的建议。