Один знаменитый в узких кругах программист взял и написал новый линковщик mold, который (по слухам) здорово ускоряет сборку нашего не маленького проекта LibreOffice.
Илмари пишет, что при использовании mold сборка LibreOffice у него стала занимать 30 минут вместо 50 минут со стадартным lld. Почти в ДВА раза! Учитывая, что у меня старое железо, и сборка вообще занимает два часа, применение mold явно имеет смысл.
Чтобы использовать mold при сборке LibreOffice (о том, как собирать свою сборку я писал ранее вот в этой статье), вам нужен установленный в вашей ОС mold и на шестом шаге "даём команду ./autogen.sh" нужно добавить к команде опцию --enable-ld=mold, либо добавить эту опцию в ваш файл autogen.input.
Вот результат тестов от самого автора mold :
Добавлю после натурного эксперимента:
mold в Ubuntu 20.04 собирается после прочтения инструкции по ссылке выше. Всё оказалось просто:
Команда sudo apt-get install -y build-essential git clang cmake libstdc++-10-dev libssl-dev libxxhash-dev zlib1g-dev pkg-config установит необходимые зависимости.
Далее команды:
git clone https://github.com/rui314/mold.git
cd mold
git checkout v1.2.0
make -j$(nproc) CXX=clang++
sudo make install
скачают репозиторий mold к вам локально, соберут бинарник версии 1.2.0 и поместят его в системный каталог.
Так как штатный компилятор GCC в Ubuntu 20.04 имеет версию 9.4, а поддержка mold появится только в GCC 12, то собирать LibreOffice, используя mold можно только юзая Clang (это тоже компилятор). Для этого в файл autogen.input в каталоге с исходниками LibreOffice надо добавить следующие строки:
CC=clang
CXX=clang++
--enable-ld=mold
Именно так, две первые строки без двух дефисов, а последняя с ними.
Далее даем команды
make clean
make
И процесс побежит.
Комментариев нет:
Отправить комментарий
Внимание! Сообщения проходят премодерацию!