metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2013-05-14 01:49 pm

С++

А почему в C++ не принято делать автоматическое управление зависимостями?
Ну вот если в VS есть два проекта - почему прописывать в зависимый проект include и lib для каждой конфигурации сборки приходится руками, и если не использовать auto-linking - еще и имя в список библиотек добавлять приходится.

[identity profile] trueblacker.livejournal.com 2013-05-14 10:54 am (UTC)(link)
вообще-то какое-то управление там есть, хотя я и не пользуюсь
вроде бы по крайней мере с lib как-то работает, механику не помню уже

[identity profile] metaclass.livejournal.com 2013-05-14 11:00 am (UTC)(link)
auto-linking есть - как минимум visual studio поддерживает. У меня так буст линкуется - папку с ним указать надо явно, а вот имена нужных либ линкер достает автоматически.

[identity profile] trueblacker.livejournal.com 2013-05-14 11:02 am (UTC)(link)
если я правильно помню, имя либы определяется через особые #pragma
это никак не связано с зависимостью проектов в солюшене

[identity profile] trueblacker.livejournal.com 2013-05-14 11:02 am (UTC)(link)
тут речь конкретно про буст, разумеется

[identity profile] aamonster.livejournal.com 2013-05-14 11:02 am (UTC)(link)
Механика простая - #pragma comment в хедере, в итоге в obj попадает указание линкеру, что надо влинковывать. Но, кажется, в список зависимостей эти либы не попадают, и если либа изменилась - перелинковывать не будет.

[identity profile] trueblacker.livejournal.com 2013-05-14 11:05 am (UTC)(link)
нет, pragma - это другое
я так понимаю речь чисто о солюшене, а не о том, что попадает в сырцы
на уровне солюшена тоже что-то есть по-моему, по крайней мере в части поиска либов в зависимых аутпутах