Установка GCC 3.2: Как разрешить ошибку “lvalue требуемый как инкрементный операнд”?

Я использую Ubuntu 10.04, и текущая версия GCC, установленного в моей системе, 4.4. Для некоторой определенной потребности я хочу установить GCC 3.2.

Я начал с этих шагов:

$mkdir gcc-build
$cd gcc-build
$tar zxvf gcc-3.2.tar.gz
$mkdir -p gcc-bin
$mkdir -p usr/local
$cd gcc-bin
$../gcc-build/gcc-3.2/configure --prefix=../gcc-build/usr/local

Это настроило успешно. Но когда я использовал ниже команды

$make bootstrap

Я получил ошибку

../gcc-build/gcc-3.2/gcc/read-rtl.c:653: error: lvalue required as increment operand
make[1]: *** [read-rtl.o] Error 1
make[1]: Leaving directory `../gcc-build/gcc-bin/gcc'
make: *** [all-gcc] Error 2

Кто-либо помогите мне разрешить эту ошибку. Или предложите некоторые альтернативные пути.Спасибо.

1
задан 19 February 2014 в 11:54

2 ответа

Однажды я столкнулся с подобной проблемой. У меня был этот модуль 'r8169', который не принимал пакеты от моего проводного соединения. Затем мне пришлось собрать предыдущий модуль 'r8168' из исходного кода. Это дало мне такие же ошибки, как ваша.

Возможное решение - перейти в режим суперпользователя. Введите

sudo su

Затем введите свой пароль. Консоль покажет вам «#» вместо «$» для написания команд. Затем попробуйте свои команды снова.

#mkdir gcc-build
#cd gcc-build
#tar zxvf gcc-3.2.tar.gz
#mkdir -p gcc-bin
#mkdir -p usr/local
#cd gcc-bin
#../gcc-build/gcc-3.2/configure --prefix=../gcc-build/usr/local
# make bootstrap

(и любые другие команды, если они остались). Надеюсь, это должно сработать.

0
ответ дан 19 February 2014 в 11:54

После нескольких испытаний я нашел одно решение.

Я добавил зеркала ниже в /etc/apt/sources.list

deb http://snapshot.debian.org/archive/debian/20070730T000000Z/ lenny main
deb-src http://snapshot.debian.org/archive/debian/20070730T000000Z/ lenny main
deb http://snapshot.debian.org/archive/debian-security/20070730T000000Z/ lenny/updates main
deb-src http://snapshot.debian.org/archive/debian-security/20070730T000000Z/ lenny/updates main

С этими зеркалами я могу установить GCC 3.3 (но не GCC 3.2), используя

$sudo apt-get install g++-3.3   

Не не забудьте выполнить $sudo apt-get update перед вышеприведенной командой.

1113 Это фактически удовлетворяет мою потребность. И чтобы запустить программу с использованием GCC 3.3, выполните

$gcc-3.3 input_file

, потому что в противном случае, если вы введете $gcc input_file, он будет использовать GCC по умолчанию (GCC 4.4 в моем случае) для компиляции программы , Мы можем изменить способ использования желаемой версии, просто создав жесткую ссылку на версию, которую вы хотите пометить для команды gcc. Мы можем сделать следующее

$cd /usr/bin
$sudo ln gcc-3.3 gcc

Так что теперь всякий раз, когда вы набираете $gcc input_file, он будет использовать желаемую версию gcc для компиляции программы.

0
ответ дан 19 February 2014 в 11:54

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

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