Как скомпилировать программы на Linux-системах, когда у меня нет привилегий sudo для установки зависимостей dev

Как мне пойти на компиляцию программ, зависящих от библиотек, чьи пакеты разработки (заголовки и т. Д.) Не установлены в системе, когда у меня нет доступа к sudo?

В этом конкретном случае у меня Ubuntu 12.04, но я надеюсь на более общее решение, потому что мне кажется странным, что мне нужны права администратора только для установки пакетов dev, чтобы я мог скомпилировать.

В производных системах Debian вы можете получить исходный код (даже в качестве пользователя без root), используя источник apt-get source если source.list имеет некоторые записи deb-src. В противном случае он застревает с загрузкой из исходного источника проекта со стандартными инструментами.

Как только у вас есть этот источник, тогда:

 ./configure --prefix=/home/me/mysoftware make make install 

Будет работать для большинства дистрибутивов источников, используя autotools или аналогичные.

Как только вы это сделаете, вы захотите установить в свой профиль переменные среды LD_LIBRARY_PATH и PATH.

Когда вы настраиваете другие вещи, которые зависят от программного обеспечения, установленного таким образом, вам нужно установить PKG_CONFIG_PATH, CFLAGS, CXXFLAGS, LDFLAGS и, возможно, использовать другие аргументы конфигурации для «помощи» configure, чтобы найти свой специальный путь установки.

Конечно, было бы проще просто открыть билет поддержки для кого-то с полномочиями root.