как иметь работающий компилятор в пустой Ubuntu без прав root

Я стараюсь изо всех сил иметь работающий компилятор на новой установке Ubuntu, не имея доступа к корневым привилегиям на машине (моего пользователя также нет в списке sudoers). Для меня это совершенно нетривиально. Я не могу найти ни портативного gcc для Ubuntu (или Linux в целом), ни какой-либо рецепт для его создания.

Так как в недавно установленной Ubuntu у вас даже нет make, и нет компилятора для его сборки, по крайней мере я обнаружил, что могу загрузить файл make-x.xx.deb с помощью apt-get download make (он не конечно, требуют sudo, поскольку он просто загружает пакет deb), извлекаем его с помощью dpkg -x (dpkg -i --force-not-sudo не работает ...) и вручную указываем на извлеченный двоичный файл.

Я пытался сделать то же самое с gcc, загружая также все пакеты, которые apt-get install скачали бы. Неудивительно, что это не сработало. Даже не добавляя в PATH, LD_LIBRARY_PATH, LIBRARY_PATH, COMPILER_PATH многие папки сделали волшебство. Исправляя одну проблему за другой, последней непреодолимой ошибкой с путями с путями было /usr/bin/ld: cannot find /usr/lib/x86_64-linux-gnu/libmvec_nonshared.a

Как я и ожидал, компилятор gcc жестко задан для поиска хотя бы одной библиотеки в месте, где я ничего не могу написать ( /usr/lib/...). Может быть, есть и другие, о которых я не знаю, которые позже потерпят неудачу.

Я также пытался загрузить готовый двоичный файл clang с веб-сайта LLVM. Проблема в том, что компилятор clang без установленного gcc полностью не работает. Я могу взглянуть на заголовки gcc, извлеченные из файлов .deb выше, но, в конце концов, происходит сбой, потому что не удается найти исполняемый файл ld в системе для этапа компоновки (мне пришлось удалить извлеченный вручную gcc с пути для других проблем).

Итак, я спрашиваю предложения: как установить gcc (или любую другую достойную среду компилятора / сборки) в Ubuntu без прав администратора? Я не могу думать, что это еще не решено как проблема [подлить масла в огонь, на окнах легко и возможно с парой загрузок с официальных сайтов].

Единственная идея, которую я придумал, - это собрать ее на другой идентичной машине, на которой у меня есть права администратора, с помощью переключателей --prefix и --disable-shared, и найти разумное место для хранения полученного пакета (после tar.gz лечение) онлайн. Но полученный скрипт не выглядит правдоподобным, когда вы видите, что он собирается загрузить компилятор с неизвестного личного сайта ...

1
задан 18 January 2018 в 20:57

1 ответ

Наконец, я получил уведомление о способе установки без прав администратора make + gcc на только что установленную Ubuntu, без необходимости сводить с ума при написании собственных сценариев bash для извлечения из файлов .deb. Мне просто нужно было положиться на conda!

Во-первых, установить miniconda (не требует привилегий)

Во-вторых, использовать conda для установки make, gcc, ... (все доступно на официальном сайте anaconda). канал тоже!).

0
ответ дан 18 January 2018 в 20:57

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

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