Установка gcc на linux без компилятора c - PullRequest
14 голосов
/ 13 августа 2010

Как я могу установить gcc в системе, в которой нет компилятора c? эта система является базовым межсетевым экраном linux и не имеет компилятора c.

Ответы [ 5 ]

14 голосов
/ 13 августа 2010

Полагаю, у вас есть устройство под управлением Linux и shell-access, но не установлен ни менеджер пакетов, ни компилятор.

Итак, вам необходимо выполнить кросс-компиляцию gcc и всей цепочки инструментов (по крайней мере,binutils) - это довольно просто, потому что ./configure сценарии gcc, binutils, gdb и т. д. поддерживают кросс-компиляцию с опцией --target=.Поэтому все, что вам нужно сделать, это выяснить целевую архитектуру (uname подсказки), а затем загрузить, распаковать исходные коды gcc на linux-host и запустить ./configure --target=$YOUR_TARGET.

. Теперь вы можетесоздайте кросс-компилятор gcc - он все еще работает на вашем хосте, но создает двоичные файлы для вашей цели (устройства брандмауэра).

Это может быть достаточно для вас, типичный настольный ПК намного быстрее, чем обычное устройство, поэтому может иметь смысл скомпилировать все, что вам нужно на настольном ПК, с помощью кросс-компилятора и кросс-binutils.

Но если вы действительно хотите это сделать, теперь вы также можете использовать кросс-компилятор дляскомпилируйте gcc, работающий на вашей цели (установите это как --host= опция) и скомпилируйте для своей цели (установите это как --target опция).

Вы можете найти подробную информацию о разрешенных хосте / целях и примерах вgcc документация: http://gcc.gnu.org/install/specific.html.

1 голос
/ 13 августа 2010

Это зависит от дистрибутива, если он основан на Debian или некоторых других больших версиях, вы можете установить gcc через apt-get или аналогичный инструмент.

Если это более базовая система, вам нужно скомпилировать gccсамостоятельно на другом компьютере и скопируйте его.Будет проще, если у вас есть другой компьютер с такой же архитектурой (например, i386, arm или x86_64).

Я думаю, что вы, возможно, захотите скомпилировать его статически, чтобы у вас не было зависимостей отвнешние библиотеки.

0 голосов
/ 13 августа 2010

Поскольку вы используете Endian Firewall, см. «Создание блока разработки» по следующей ссылке:

http://alumnus.caltech.edu/~igormt/endian/tips.html

0 голосов
/ 13 августа 2010

Как вы планируете загрузить весь исходный код, необходимый для GCC, на ваш компьютер? Не могли бы вы смонтировать ISO-образ на эту машину и установить оттуда?

0 голосов
/ 13 августа 2010

Если это дистрибутив на основе Debian, вы можете использовать

sudo apt-get install gcc

Примечание: возможно, вы должны изменить "gcc" в соответствии с конкретной версией пакета debian.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...