Скомпилируйте GCC и установите в DESTDIR - PullRequest
1 голос
/ 11 декабря 2011

Я пытаюсь установить GCC в /my/custom/path/gcc

, но по какой-то причине он устанавливается в обычный путь установки.

используемые мной команды:

configure --target=i686-pc-linux-gnu --disable-nls --enable-languages=c,c++ --without-headers
make DESTDIR=/my/custom/path/gcc
make DESTDIR=/my/custom/path/gcc install

Что я делаю не так?

1 Ответ

2 голосов
/ 11 декабря 2011

Вы должны запустить (в новом дереве сборки вне дерева исходного кода)

/your/source/path/to/gcc/configure --target=i686-pc-linux-gnu --prefix=/my/custom/path/gcc ...

, и тогда GCC будет установлен в /my/custom/path/gcc/bin/ с включаемыми файлами в /my/custom/path/gcc/include/, библиотеками в /my/custom/path/gcc/lib/и т. д.

Я предлагаю использовать /opt/ или $HOME/pub в качестве префикса, и вас также может заинтересовать опция --program-suffix=-foo

(сделайте это в новом новом дереве сборки внеисходное дерево; ваше предыдущее - гнилое)

После последовательной компиляции с помощью make вы можете запустить в своем дереве сборки

make install DESTDIR=/tmp/mygccinst/

и, наконец, вы можете скопировать определенные файлы с помощьючто-то вроде

cp -va /tmp/mygccinst/ /

Возможно, вам понадобится запустить эту копию от имени root ...

PS Префикс установки встроен в двоичный файл драйвера gcc, который на самом деле работает cc1или cc1plus и т.д ...

...