Вычитал, что GUIDы и прочая шляпа тут не нужна, и облегчил его.
Копирую его в my_project1.vcxproj.filters — в проекте cpp/h файлы автоматом раскладываются по соответствующим папочкам. Хорошо, подкладываю таким же образом к другим проектам. Нифига. cpp/h лежат в одной куче, как и лежали. Но папочки Source Files/Header Files/Resource Files — появились, но файлы туда не помещены.
Что за фигня?
Второй вопрос филосовский. Нафига вот это сделали в отдельном файле? Раньше в студии так и было — всё в файле проекта, и было норм, но потом, блин, улучшили. Уродский эклипсовский способ, там примерно такое же дерьмо. Нет ли какого-нибудь способа делать папки в основном проекте, не используя отдельно лежащие .filters?
Здравствуйте, reversecode, Вы писали:
R> R>чем только не люди не сношаются R>что бы cmake не использовать
Я как-то имел немного дела с чисто виндовым проектом, который был сделан на CMake. Так он по полчаса генерил конфигурации, и подо что? Правильно, под вижуалку. И зачем это нужно?
с удивлением наблюдаю
и переписываю под себя всякие Г проекты
где пять разновидность makefile под все возможные линупсы
и четыре разные папки vs2015 vs2017 vs2019 vs2022 под винду
и задалбывает смотреть и пулить с гита говно изменения, когда добавляют или меняют какие то файлы
хосподи, откуда такие бараны берутся, думаю про себя ...
один cmake файлы
и можно нагенерить под любую платформу
добавить, удалить факлик, всего одно изменение в этом cmake файлике
так что марти, продолжай дальше ручками свои vs проекты редактировать
мозоли не натри
сайт cmake не открывается?
стягиваешь нужный себе билд
малюешь простенький cmake файл под свои файлы
и никада не сношаешь себе мозг редактированием файлов студии
никада не видел то бы марти и пффф присутствовали на форуме вместе
оба с питера
оба сношаются с виндой, иногда тараня ембеддед
Здравствуйте, пффф, Вы писали:
П>Вычитал, что GUIDы и прочая шляпа тут не нужна, и облегчил его.
Это из официальной документации?
Зачем нужно его облегчать? Экономим байты в проектном файле или пючисто спортивный интерес?
Тут конечно подкинули переводить на CMake, но если у вас простой проект и нет нужды в удобных зависимостях через пакетные менеджеры и нет необходимости поддерживать разные компиляторы, то CMake вам не нужен.
_NN>Зачем нужно его облегчать? Экономим байты в проектном файле или пючисто спортивный интерес?
Чтобы не мешались и глаза не мозолили
_NN>Тут конечно подкинули переводить на CMake, но если у вас простой проект и нет нужды в удобных зависимостях через пакетные менеджеры и нет необходимости поддерживать разные компиляторы, то CMake вам не нужен.
Да, проект небольшой, нет нужды в зависимостях и нет необходимости поддерживать разные компиляторы.
И в студийных проектах мне нравится XML, его можно распарсить при нужде, а CMake — какаха ещё та, хотя в кроссплатформе без него уже сложно
ученые говорят что мамонты вымерли что то около 10 тыс лет назад
я же читая это треш с xml и само редактированием файлов студии
читаю что мамонты живы, мамонты будут жить
давайте вы месяц по юзаете cmake
а потом перейдете опять на свое редактирование вручную файлов проекта студии
и посмотрим на результат
90/10 что вы никогда не вернетесь к своим файлам студии
и да
cmake это не только про кроссплатформ
это генерацию из трех простых и интуитивно понятных строчек синтаксиса
в сложно заумно иб.нутую конфигурацию студии
которую насколько я помню в cmake поддерживает чуть ли не сам ms
Здравствуйте, reversecode, Вы писали:
R>давайте вы месяц по юзаете cmake R>а потом перейдете опять на свое редактирование вручную файлов проекта студии R>и посмотрим на результат
Я юзаю симейк несколько лет, иногда без него не обойтись, к сожалению. Чего стоят его if, в котором нельзя вызвать функцию, а надо затолкать результат функции в переменную, а потом только проверить. Да, но кто сказал, что затолкать результат вызова функции в переменную — это просто?
R>90/10 что вы никогда не вернетесь к своим файлам студии
С удовольствием выкидываю симейк, если это возможно
R>и да R>cmake это не только про кроссплатформ R>это генерацию из трех простых и интуитивно понятных строчек синтаксиса R>в сложно заумно иб.нутую конфигурацию студии R>которую насколько я помню в cmake поддерживает чуть ли не сам ms
Да, то что симейк для студии генерит — трэшак ещё тот.
_NN>>Зачем нужно его облегчать? Экономим байты в проектном файле или пючисто спортивный интерес?
П>Чтобы не мешались и глаза не мозолили
Вы часто смотрите на эти файлы filters ?
Ну написано там что-то как-то ну и пусть.
Вон sln вообще не xml и там чёрт ногу сломит когда появляются конфликты.
Если хотите принципиальной чистоты в проектных файлах то генераторы как cmake , gn вам в помощь.
Правда придётся отказаться от удобного графического интерфейса работы с проектом.
Здравствуйте, пффф, Вы писали:
П>Здравствуйте, _NN_, Вы писали:
_NN>>Если хотите принципиальной чистоты в проектных файлах то генераторы как cmake , gn вам в помощь.
П>Блин. Ещё один. П>Если по существу вопроса нечего сказать, может не стоит вообще отвечать?
Я не вижу ничего проблемного в том что будет GUID. есть себе и есть.
Если это так принципиально то стоит задать вопрос в поддержке VS: https://developercommunity.visualstudio.com/
Здравствуйте, reversecode, Вы писали:
R>это генерацию из трех простых и интуитивно понятных строчек синтаксиса
cmake это рабочее решение для проекта любой сложности на С++ , но синтаксис в нем это ужас-ужас.
Здравствуйте, пффф, Вы писали: П>Копирую его в my_project1.vcxproj.filters — в проекте cpp/h файлы автоматом раскладываются по соответствующим папочкам. Хорошо, подкладываю таким же образом к другим проектам. Нифига. cpp/h лежат в одной куче, как и лежали. Но папочки Source Files/Header Files/Resource Files — появились, но файлы туда не помещены.
Если в файле .vcxproj есть, например, <ClCompile Include="main.cpp" />, то с пустым .vcxproj.filters — раскидывается автоматически.
При этом в .vcxproj.filters не создается узел main.cpp -> Source Files. Так работает и без GUID.
А вот если в .vcxproj записи о файле нет, то он только в External Dependencies попадет.
На узле проекта: Add — Existing item, Select all (или не all), профит! Раскидает автоматом по указанным в .vcxproj.filters фильтрам (папкам).
Здравствуйте, пффф, Вы писали:
П>Второй вопрос филосовский. Нафига вот это сделали в отдельном файле? Раньше в студии так и было — всё в файле проекта, и было норм, но потом, блин, улучшили. Уродский эклипсовский способ, там примерно такое же дерьмо. Нет ли какого-нибудь способа делать папки в основном проекте, не используя отдельно лежащие .filters?
Не помню конкретно про filters, но когда проектный файл стали разбивать на части, стало можно эксклюдить ненужные из версионного контроля.
Здравствуйте, Alekzander, Вы писали:
П>>Второй вопрос филосовский. Нафига вот это сделали в отдельном файле? Раньше в студии так и было — всё в файле проекта, и было норм, но потом, блин, улучшили. Уродский эклипсовский способ, там примерно такое же дерьмо. Нет ли какого-нибудь способа делать папки в основном проекте, не используя отдельно лежащие .filters?
A>Не помню конкретно про filters, но когда проектный файл стали разбивать на части, стало можно эксклюдить ненужные из версионного контроля.
Это про .vcxproj.user. А .vcxproj.filters вполне себе просятся под версионный контроль
П>Копирую его в my_project1.vcxproj.filters — в проекте cpp/h файлы автоматом раскладываются по соответствующим папочкам.
Никогда у меня не работало так.
П>Хорошо, подкладываю таким же образом к другим проектам. Нифига. cpp/h лежат в одной куче, как и лежали. Но папочки Source Files/Header Files/Resource Files — появились, но файлы туда не помещены.
П>Что за фигня?
Имхо, оно срабатывает только когда новых файлов в проект добавляешь. Тогда же и прописывает добавленные файлы в .filters