[MSVC] "Building 13 actions with 8 processes..."
От: Homunculus Россия  
Дата: 19.10.20 10:27
Оценка:
MSVC 2019

Компиляция программы происходит через раз. Код не меняю, просто вызываю у проекта Clean и Rebuild

То компилит, то нет

Ошибка, когда не компилит — "error C3859: Failed to create virtual memory for PCH"

Заметил, кто когда компиляция успешна, то в начале процесса компиляции в Output пишется

"Building N actions with 8 processes..."

И N < 8

Если же N > 8, то компиляция не успешна

Я понимаю, что ему не хватает памяти запихнуть прекомпайл хидер? Но это знание не помогает решить проблему
Все советы, что я вычитал — говорят в настройках Винды увеличить эту самую память. Но это решение мне не поможет, потому что компиляция происходит удаленно и я не имею доступ ни к компьютеру с компилятором, ни к настройках компилятора

Единственно что я могу — это прописать какие-то pragma в коде

Вот собтвенно и вопрос — как через pragma решить эту проблему?
Re: [MSVC] "Building 13 actions with 8 processes..."
От: Maniacal Россия  
Дата: 19.10.20 11:03
Оценка: 8 (1)
Здравствуйте, Homunculus, Вы писали:

H>Единственно что я могу — это прописать какие-то pragma в коде


H>Вот собтвенно и вопрос — как через pragma решить эту проблему?


Единственный выход, если нет доступа к файлу .vcxprog проекта это вначале каждого исходника поставить #pragma hdrstop чтобы PCH не генерировались для них. А так — в .vcxproj можно добавить тег
<ItemDefinitionGroup Condition=...
    <ClCompile>
        <AdditionalOptions>/Zm100</AdditionalOptions>,


не 100, конечно, гуглить по коэфициентам /Zm

Я так понял, дополнительные опции компиляции можно ещё указывать в переменной среды окружения CL
Отредактировано 19.10.2020 11:16 Maniacal . Предыдущая версия .
Re: [MSVC] "Building 13 actions with 8 processes..."
От: Mr.Delphist  
Дата: 19.10.20 14:05
Оценка:
Здравствуйте, Homunculus, Вы писали:

H>MSVC 2019


H>Компиляция программы происходит через раз. Код не меняю, просто вызываю у проекта Clean и Rebuild


H>То компилит, то нет


H>Ошибка, когда не компилит — "error C3859: Failed to create virtual memory for PCH"


H>Заметил, кто когда компиляция успешна, то в начале процесса компиляции в Output пишется


H>"Building N actions with 8 processes..."


H>И N < 8


H>Если же N > 8, то компиляция не успешна


H>Я понимаю, что ему не хватает памяти запихнуть прекомпайл хидер? Но это знание не помогает решить проблему

H>Все советы, что я вычитал — говорят в настройках Винды увеличить эту самую память. Но это решение мне не поможет, потому что компиляция происходит удаленно и я не имею доступ ни к компьютеру с компилятором, ни к настройках компилятора

К файлу проекта-то доступ есть? В свойствах проекта ищем C++/General/Multi-processor compilation, и ставим "No"

https://devblogs.microsoft.com/visualstudio/tuning-c-build-parallelism-in-vs2010/
Re: [MSVC] "Building 13 actions with 8 processes..."
От: swingus  
Дата: 09.11.20 21:47
Оценка: +1
Если ещё актуально, то мой совет для 64 битной хост машины и 64 битной Винды https://stackoverflow.com/questions/46056263/use-the-64-bit-visual-c-toolset-in-visual-studio-2017 , вкратце, добавить опцию <PreferredToolArchitecture>x64</PreferredToolArchitecture> в vcxproj файл. Изменение /Zm опции приходится тонко подстраивать при изменении кода и не всегда помогает.

Здравствуйте, Homunculus, Вы писали:

H>MSVC 2019


H>Я понимаю, что ему не хватает памяти запихнуть прекомпайл хидер? Но это знание не помогает решить проблему
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.