У меня есть проект make file, который использует несколько инструментов, таких как cppcheck
или asn1c
.Есть несколько разработчиков, которые используют этот проект на своих локальных Linux-машинах.Проблема в том, что на каждой машине с Linux есть разные версии необходимых инструментов.Так, например, у одного разработчика есть cppcheck 1.8, а у другого - 1.6.Теперь я сталкиваюсь с неприятностями, потому что разные версии инструментов ведут себя по-разному.Например, некоторые разработчики успешно работают через cppcheck, а некоторые нет.
Поэтому я спрашиваю, как обрабатывать разные версии зависимостей?
У меня есть несколько идей:
- Добавление исходного кода инструментов в проект и компиляция инструментов перед запуском самого процесса сборки.
- Статическая компиляция инструментов и добавление двоичного файла в проект.Таким образом, каждый разработчик будет использовать один и тот же двоичный файл.
- Предоставить виртуальную машину или удаленный доступ каждому разработчику.Таким образом, каждый использует одну и ту же среду
- Поручите всем разработчикам, какой дистрибутив Linux использовать, и обновляйте свою систему.