Хорошо ... Вы заслуживаете награду за это.

nux-машине из проекта cmake я пытаюсь вызвать git с помощью execute_process, чтобы я мог включить информацию из системы контроля версий в свое приложение.

Я создал небольшой тест, чтобы попытаться напечатать git-версию:

cmake_minimum_required (VERSION 2.8)

set (git_cmd "/usr/bin/git --version")
#set (git_cmd "ls") # returns success if you uncomment this line 
message(STATUS "git cmd: ${git_cmd}")
execute_process(COMMAND ${git_cmd}
  WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
  RESULT_VARIABLE git_result
  OUTPUT_VARIABLE git_ver)

message(STATUS "git ver[${git_result}]: ${git_ver}")

configure_file (
  "${PROJECT_SOURCE_DIR}/versionInfo.h.in"
  "${PROJECT_BINARY_DIR}/versionInfo.h"
  )

Который дает следующий вывод при запуске make:

-- git cmd: /usr/bin/git --version
-- git ver[No such file or directory]: 
-- Configuring done
-- Generating done
-- Build files have been written to: /home/rsanderson/build/githash: 

Но если я изменю команду наls результат действителен, и я вижу распечатку каталога. Я также проверил, с чем этот git действительно находится в / usr / bin.

Есть идеи о том, что мне здесь не хватает?

Ответы на вопрос(1)

Ваш ответ на вопрос