Я всегда использовал Visual Studios, встроенный в GUI-поддержку, для настройки моих проектов, часто используя листы свойств, чтобы несколько проектов использовали общий набор.
Одна из моих главных проблем заключается в управлении несколькими проектами, конфигурациями и платформами. Если вы просто делаете все с помощью основного графического интерфейса (щелкните правой кнопкой мыши проект → свойства), он быстро становится беспорядочным, трудно поддается и подвержен ошибкам (например, не удается правильно определить какой-либо макрос или использовать неправильную библиотеку времени выполнения и т.д.). Имея дело с тем, что разные люди помещают туда библиотеки зависимостей в разных местах (например, мои все живут в "C:\Libs\[C, С++]\[lib-name] \" ), а затем часто управляют различными версиями этих библиотек по-разному (выпуск, отладка, x86, x64 и т.д.) также является большой проблемой, поскольку он значительно усложняет время его настройки в новой системе, а затем возникают проблемы с управлением версиями и сохранением всех путей..
Листы свойств делают это немного лучше, но я не могу иметь один лист с отдельными настройками для разных конфигураций и платформ (выпадающие окна с серым цветом), в результате у меня есть много листов, которые, если унаследованы в правильном порядке, делают то, что Я хочу ( "x86", "x64", "debug", "release", "общий", "каталоги" (имеет дело с ранее упомянутой проблемой зависимостей, определяя пользовательские макросы, такие как BoostX86LibDir) и т.д.) И если унаследовано не так (например, "общий" до "x64" и "debug" ) приводит к таким проблемам, как попытка связать некорректную версию библиотеки или неправильное присвоение имени...
То, что я хочу, - это способ справиться со всеми этими разбросанными зависимостями и создать набор "правил", которые используются всеми моими проектами в решении, например, имя библиотеки вывода как "mylib- [vc90, vc100] - [x86, x64] [- d].lib", без необходимости делать все это для каждого отдельного проекта, конфигурации и комбинации платформы, а затем синхронизировать их все правильно.
Мне известно о переходе на совершенно разные системы, такие как CMake, которые создают нужные файлы, однако это усложняет ситуацию в других местах, делая так, что даже простые задачи, такие как добавление нового файла в проект, требуют дополнительных изменений в другом месте, что не я тоже доволен тем, что, если есть какие-то возможности с интеграцией VS2010, которые могут отслеживать эти изменения.