![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
niXman |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 211 Регистрация: 4.7.2009 Репутация: 0 Всего: 0 |
Здравствуйте.
Подскажите, можно ли заставить сию IDE собирать проект параллельно в несколько потоков? При сборке проекта, заметил, что компилятор использует только одно ядро, а хотелось бы чтоб все. Ну чтоб быстрее процесс шел. --------------------
if ( !c++ ) { *power--; this->wussiness += 10;} |
|||
|
||||
Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 41 Всего: 154 |
Tools -> Options -> Projects and Solutions -> Build and Run -> maximum number of parallel project builds
правда для этого, нужно что-бы твой sloutions содержал несколько проектов |
|||
|
||||
niXman |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 211 Регистрация: 4.7.2009 Репутация: 0 Всего: 0 |
Так проект всего один, но большой, долго собирается, а процессор не используется на полную. Я предполагал что есть возможность настроить IDE так, чтоб make распределял компиляцию. Добавлено через 1 минуту и 21 секунду Или при сборке из IDE make не используется? В общем каким способом можно реализовать задуманное? --------------------
if ( !c++ ) { *power--; this->wussiness += 10;} |
|||
|
||||
Alek86 |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
вопрос в тему
в 2005 если есть 3 проекта (2 lib и 1 exe), причем Lib2 использует функции из Lib1, а Exe - функции из Lib2, то: 1. если поставить в Exe зависимости на Lib1 и Lib2, то обе либы собираются параллельно 2. если установить зависимость Exe от Lib2, а у Lib2 зависимость от Lib1, то либы собираются строго последовательно (второй способ предпочтительней (если появится Exe2, то у нее нужно зависимость только от Lib2 делать)) никто не знает, почему во втором способе последовательно? Это ж либы, их, вроде, можно и параллелить. Добавлено через 1 минуту и 4 секунды как вариант разбить проект на главный и несколько либ либы будут параллельно компилиться |
|||
|
||||
niXman |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 211 Регистрация: 4.7.2009 Репутация: 0 Всего: 0 |
Ну так не указывай зависимость либы от либы. --------------------
if ( !c++ ) { *power--; this->wussiness += 10;} |
|||
|
||||
Alek86 |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
вопрос не в этом, а почему параллелит сори, что в твоей теме, просто вспомнилось, да и вопрос примерно туда же |
|||
|
||||
niXman |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 211 Регистрация: 4.7.2009 Репутация: 0 Всего: 0 |
Не знаю. Я меньше недели пользую сию IDE ![]() По теме: Может использовать другую систему сборки? Кто-то знает, cmake позволяет такое реализовать, и возможно ли его привязать к этой IDE? Это сообщение отредактировал(а) niXman - 21.10.2009, 09:52 --------------------
if ( !c++ ) { *power--; this->wussiness += 10;} |
|||
|
||||
Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 41 Всего: 154 |
при сборке из IDE make не используется, да и вообще, в поставку VC++ 2008 такое приложение не входит ![]() есть nmake, но он то-же не используется, для сборки проекта используется vcbuild.exe и кстати, ты сам ответил на свой вопрос, раз проект большой и долго собирается, то его нужно разбить на части возможно так-же использовать precompiled headers Добавлено через 4 минуты и 14 секунд ну это-же очевидно, если ты установил зависимость target2 от target1, то студия сначала соберет target1, а затем target2, так как перед сборкой target2 нужно собрать все, от чего он зависит, что-бы что-то собиралось параллельно, нужно что-бы зависимости между проектами имели форму дерева |
|||
|
||||
Alek86 |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
||||
|
||||
Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 41 Всего: 154 |
cmake есть смысл использовать, только если ты будешь собирать свой проект на разных платформах. Но проблему это не решит, так как cmake создает решение для visual studio, после чего ты открываешь его и собираешь так-же как ты делаешь это сейчас. |
|||
|
||||
niXman |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 211 Регистрация: 4.7.2009 Репутация: 0 Всего: 0 |
Не хотелось бы... Сейчас ознакомлюсь. А по поводу:
Можете прокомментировать? --------------------
if ( !c++ ) { *power--; this->wussiness += 10;} |
||||
|
|||||
niXman |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 211 Регистрация: 4.7.2009 Репутация: 0 Всего: 0 |
Уже прокомментировали. Спасибо. Тема закрыта.
--------------------
if ( !c++ ) { *power--; this->wussiness += 10;} |
|||
|
||||
Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 41 Всего: 154 |
почему тупейший? если target1 - стат. библиотека, а target2 - приложение, то добавив зависимость между проектами, ты избавишь себя от необходимости вручную подключать библиотеку target1.lib ![]() к тому-же, откуда системе сборки знать, что библиотеки можно собрать независимо друг от друга, если это конечно возможно? |
|||
|
||||
Alek86 |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1299 Регистрация: 30.1.2007 Где: Киев Репутация: 21 Всего: 25 |
||||
|
||||
Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 41 Всего: 154 |
||||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |