Как статически ссылаться на antlr-runtime.lib без dll
Я пытаюсь статически связать библиотеку времени выполнения C++ ANTLR 4 с программой в Windows. Сборка сделана с помощью CMake. Однако, когда я запускаю программу, она говорит, что antlr-runtime.dll отсутствует (я не хочу предоставлять antlr-runtime.dll как отдельную DLL).
Вот соответствующие строки из CMakeLists.txt:
add_library(antlr_runtime_lib STATIC IMPORTED)
if(MSVC)
set_target_properties(antlr_runtime_lib PROPERTIES
IMPORTED_LOCATION "$ENV{ANTLR4_LIB_DIR}/antlr4-runtime.lib")
elseif(UNIX)
set_target_properties(antlr_runtime_lib PROPERTIES
IMPORTED_LOCATION "$ENV{ANTLR4_LIB_DIR}/libantlr4-runtime.a")
endif()
target_link_libraries(parser_lib_test antlr_runtime_lib)
На Mac и Linux работает нормально. Кроме того, статические библиотеки, которые я сам создал, также хорошо работают в Windows, поэтому я не уверен, в чем проблема.