для замены подкоманды строки ошибки cmake требуется не менее четырех аргументов

#cmake

Вопрос:

У меня есть ошибка:

 CMake error at CMake/winresource.cmake:7 
string sub-command REPLACE requires at least four arguments
Call Stack (most recent call first):
CMake/winresouce.cmake:33 (_add_win_resource)
project/src/libs/ch/CMakeLists.txt:243 (add_win_resource)

CMake/winresource.cmake:7 

    string(REPLACE "." "," WIN_RESOURCE_FILEVERSION ${PROJECT_VERSION})

CMake/winresouce.cmake:33 (_add_win_resource)

    _add_win_resource(${TARGET} "resource.rc.in" "") 

project/src/libs/ch/CMakeLists.txt:243 (add_win_resource)

    add_version_header(${TARGET}) add_win_resource(${TARGET})
 

Комментарии:

1. Мне кажется, что PROJECT_VERSION переменная , разыменованная в качестве 4-го параметра для string(REPLACE) , либо не определена, либо пуста.

2. @Tsyvarev как это узнать?

3. Вы можете добавлять message вызовы в соответствующие места для выходных значений переменных.

4. @Tsyvarev Я пытаюсь отправить сообщение(${PROJECT_VERSION}} и получить ответ: сообщение вызвано с неправильным количеством аргументов

5. Итак, это снова говорит о том, что PROJECT_VERSION пусто. Попробуй message("${PROJECT_VERSION}") .