Как заставить gcc & ld (сделать полностью) использовать меньше памяти?

Я должен скомпилировать компьютерный источник с моими источниками, которые слишком велики, и я не могу их контролировать. Так как моей памяти немного, я вынужден использовать меньше памяти. В противном случае он будет убит ОС (точнее). Что я могу сделать?

0
задан 12 June 2016 в 05:38

2 ответа

Как насчет того, чтобы добавить больше подкачки к Вашей машине как решение? Это добавит больше виртуальной памяти и может позволить Вам создавать свой код без уничтожителя OOM, уничтожающего компилятор. Если Вы не хотите возиться с созданием Вашего раздела подкачки, больше Ваш, мог бы добавить временный файл подкачки. Например, добавляя основанную на файле подкачку на 4 ГБ:

dd if=/dev/zero of=swap.img bs=1M count=4096
mkswap swap.img
chmod 0600 swap.img 
sudo chown root:root swap.img
swapon swap.img
3
ответ дан 12 June 2016 в 05:38

Вы попытались использовать nice? Это позволяет устанавливать пользовательский приоритет для Ваших процессов. nice диапазоны от-20 до 19, будучи 19 самый низкий приоритет и-20 самое высокое. Вы могли попробовать что-то вроде этого:

nice -n 19 command_you_want_to_execute

Пример:

nice -n 19 firefox

Редактирование : разработка немного на моем ответе, если Ваша ОС уничтожает Ваш процесс, который это - потому что использует ресурсы, которые необходимы для корректного функционирования Вашей системы. При предоставлении процессу более низкого приоритета те ресурсы будут автоматически выделены более важным системным задачам.

-1
ответ дан 12 June 2016 в 05:38

Другие вопросы по тегам:

Похожие вопросы: