Я хотел бы установить devtools на кластере под управлением CentOS 5.4 (чтобы получить версию gcc выше, чем по умолчанию. Мне нужен gcc>4.7 для использования некоторых функций C++11)
Однако у меня нет прав root. Возможно ли установить devtools в моей домашней папке пользователя без прав root? Действия, указанные вэтотответ предположим, что root-доступ доступен. Спасибо за любую информацию или ссылки.
решение1
Да, конечно. Но есть несколько вещей, о которых следует знать.
Вам следует скомпилировать из исходного кода и указать префикс для вашего домашнего каталога:
./configure --prefix=$HOME
Конечно, добавьте параметры по мере необходимости. make install
Затем установка будет выполнена в /home/yourdir/bin, /home/yourdir/lib и т. д. Возможно, вам придется вручную запустить «ldconfig» в вашем каталоге lib, чтобы создать сокращенные символические ссылки на ваши библиотеки.
В вашей оболочке сначала добавьте путь к вашему личному каталогу 'bin', если это еще не сделано. Например, добавьте это в ваш .bashrc:
PATH=$HOME/bin:$PATH
LD_LIBRARY_PATH=$HOME/lib:$LD_LIBRARY_PATH
export PATH LD_LIBRARY_PATH
Это гарантирует, что ваша собственная копия gcc будет найдена первой; LD_LIBRARY_PATH делает то же самое для ваших собственных динамических библиотек.
Обратите внимание, что более новые версии gcc могут потребовать более новые версии binutils, ассемблера и различных библиотек, так что в итоге вы можете получить гораздо больше, чем просто gcc. Кроме того, я думаю, что рекомендуется сначала скомпилировать только компилятор C (с --enable-languages=C), а затем перекомпилировать gcc с самим собой, чтобы скомпилировать компилятор C++.
Наконец, вышесказанное может помешать существующим системным библиотекам C++; в прошлом у меня были проблемы с подключением библиотек C++, скомпилированных разными версиями gcc, к моим программам. Библиотеки C обычно не имеют этой проблемы.
решение2
Я не думаю, что вы можете обновить GCC, если у вас нет прав root. Попробуйте скачать rpm и установить его, но шансы очень малы.