Меню

Ошибка неправильная архитектура amd64

I’m trying to install the Redox-OS files via curl -sf https://raw.githubusercontent.com/redox-os/redox/master/bootstrap.sh -o bootstrap.sh && bash -e bootstrap.sh (as referenced in the Book) and I get the Unable to locate package libc6-dev-i386.

When installing the libc6-dev-i386 via packages.ubuntu.com and using the GUI package installer, I receive Error: Wrong architecture 'amd64'. Using dpkg and apt-get I also receive Unable to locate package.... I’ve tried using dpkg --force-all as referenced in a few Stack Overflow articles, but to no avail.

I am running LXLE Linux 14.04.4 32-bit.

How can I install libc6-dev-i386?

asked Jul 1, 2016 at 17:03

naltun's user avatar

naltunnaltun

1852 gold badges2 silver badges12 bronze badges

The «wrong architecture ‘amd64′» error is because you tried to install a 64-bit («amd64») package on a 32-bit («i386») system. The libc6-dev-i386 package is sort of a strange one because it’s built only for 64-bit systems, but it actually contains 32-bit software. It’s meant to help with compiling 32-bit programs on 64-bit systems.

Since you’re running a 32-bit system, libc6-dev is the package you need. That contains the necessary headers and libraries for compiling 32-bit programs. (On a 64-bit system, libc6-dev provides files for compiling 64-bit programs, which is why there’s also a libc6-dev-i386 package with the 32-bit files.)

Your bootstrap.sh script has the name libc6-dev-i386 hard-coded in it, which means the script assumes it’s being run on a 64-bit system. The simplest thing to do is probably to just edit the script and change libc6-dev-i386 to libc6-dev, then run it again.

answered Jul 1, 2016 at 21:57

Wyzard's user avatar

WyzardWyzard

2,3342 gold badges16 silver badges15 bronze badges

1

I’m trying to install the Redox-OS files via curl -sf https://raw.githubusercontent.com/redox-os/redox/master/bootstrap.sh -o bootstrap.sh && bash -e bootstrap.sh (as referenced in the Book) and I get the Unable to locate package libc6-dev-i386.

When installing the libc6-dev-i386 via packages.ubuntu.com and using the GUI package installer, I receive Error: Wrong architecture 'amd64'. Using dpkg and apt-get I also receive Unable to locate package.... I’ve tried using dpkg --force-all as referenced in a few Stack Overflow articles, but to no avail.

I am running LXLE Linux 14.04.4 32-bit.

How can I install libc6-dev-i386?

asked Jul 1, 2016 at 17:03

naltun's user avatar

naltunnaltun

1852 gold badges2 silver badges12 bronze badges

The «wrong architecture ‘amd64′» error is because you tried to install a 64-bit («amd64») package on a 32-bit («i386») system. The libc6-dev-i386 package is sort of a strange one because it’s built only for 64-bit systems, but it actually contains 32-bit software. It’s meant to help with compiling 32-bit programs on 64-bit systems.

Since you’re running a 32-bit system, libc6-dev is the package you need. That contains the necessary headers and libraries for compiling 32-bit programs. (On a 64-bit system, libc6-dev provides files for compiling 64-bit programs, which is why there’s also a libc6-dev-i386 package with the 32-bit files.)

Your bootstrap.sh script has the name libc6-dev-i386 hard-coded in it, which means the script assumes it’s being run on a 64-bit system. The simplest thing to do is probably to just edit the script and change libc6-dev-i386 to libc6-dev, then run it again.

answered Jul 1, 2016 at 21:57

Wyzard's user avatar

WyzardWyzard

2,3342 gold badges16 silver badges15 bronze badges

1

Содержание

  1. LiveInternetLiveInternet
  2. —Поиск по дневнику
  3. —Подписка по e-mail
  4. —Постоянные читатели
  5. —Статистика
  6. Добавление/удаление 32/64-bit архитектур в Ubuntu Linux
  7. Как проверить включена ли в dpkg архитектура i386
  8. Debian: простое превращение i386 в amd64
  9. Dpkg, apt и sources.list
  10. Завершение

LiveInternetLiveInternet

Поиск по дневнику

Подписка по e-mail

Постоянные читатели

Статистика

Добавление/удаление 32/64-bit архитектур в Ubuntu Linux

Добавление/удаление 32/64-bit архитектур в Ubuntu Linux

Как добавить/удалить 32-bit/64-bit архитектуру в Ubuntu Linux, вы задавались данным вопросом? Решение есть.

Так вот, например работая на компьютере с 32-bit архитектурой, вы хотите установить приложение которое не доступно для вашей архитектуры, но доступно для 64-bit, в данном случае есть выход. Конечно не всегда он срабатывает, но выручает часто.

Наведу пример, скачали мы пакет определенного приложения, пускай это будет pak-name-amd64.deb, вам нужно установить данный пакет в Ubuntu, вы попробуете конечно выполнить установку пакета подобным способом:

pak-name-amd64.deb is for architecture amd64 ; the package cannot be built on this system

dpkg: ошибка при обработке параметра teamviewer (—install):
проблемы зависимостей — оставляем не настроенным
При обработке следующих пакетов произошли ошибки:
teamviewer

dpkg: error processing package teamviewer (—install):
проблемы зависимостей — оставляем не настроенным
При обработке следующих пакетов произошли ошибки:
teamviewer

Так же если кому интересно, советовал бы посмотреть видео, так же узнаете некоторые дополнительные команды:

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

Источник

Как проверить включена ли в dpkg архитектура i386

Исполнимые файлы различаются в зависимости от архитектуры центрального процессора — 64-битные или 32-битные. Следовательно, различаются и установочные пакеты, которые собраны для той или иной архитектуры.

64-битные пакеты обозначаются как amd64. По умолчанию в дистрибутивах Linux включена поддержка пакетов только той архитектуры, которая соответствует центральному процессору, сейчас это практически всегда 64-битный ЦПУ. Но иногда возникает необходимость установить 32-битные библиотеки или приложения. Это может понадобиться, например, для кросскомпиляции или, более близкий для рядового пользователя пример, для программы Wine, чтобы она могла поддерживать максимальный спектр запускаемых приложений.

Для проверки архитектуры вашего компьютера вы можете использовать команду (точнее говоря, это архитектура пакетов, которые устанавливает dpkg, но обычно это одно и то же):

Для добавления поддержки архитектуры i386 (32-бита) используется команда:

Как узнать, была ли подключена поддержка не родных архитектур и каких именно? Это можно сделать командой:

Если будет выведено

значит архитектура i386 уже включена.

print foreign architectures

Кстати, отдельные пакеты можно установить без добавления посторонних архитектур с помощью опции —force-architecture, например:

Но если в вашей системе установлены пакеты удаляемой архитектуры, то операция будет отклонена.

Список подключённых архитектур хранится в файле /var/lib/dpkg/arch.

Источник

Debian: простое превращение i386 в amd64

Это краткая статья о том, как без переустановки организовать 64-битную архитектуру на вашем 32-битном Debian/Deabian-based дистрибутиве (который вы могли по-невнимательности загрузить вместо 64bit).

* Ваше железо должно изначально поддерживать amd64, магию творить никто не собирается.
* Это может повредить систему, так что действуйте очень осторожно.
* Всё проверялось на Debian10-buster-i386.
* Не делайте этого, если хоть что-то здесь не понимаете.

Dpkg, apt и sources.list

Сразу к делу, если вы сумaсшедший всё взвесили, начинаем подготовку пакетов (в принципе здесь порядок не имеет значения, но по пунктам удобнее)

1. Выбираем amd64 в /etc/apt/sources.list, вставляя ‘ [arch=amd64] ‘ между debdeb-src и URL

Это нужно для того, чтобы в будущем загружались только 64-х битные пакеты.

2.Добавляем amd64 в dpkg, чтобы он не ругался:

3.Обновляем список пакетов:

Разумеется всё это не имеет смысла без 64-х битного ядра, поэтому устанавливаем его:

После установки ядра grub перенастроится автоматически.

Завершение

После перезагрузки наша система уже сможет работать с amd64, но с пакетами могут возникнуть некоторые проблемы. У меня для их решения было достаточно выполнить данные команды:

Хотя сильно на этот счёт беспокоиться тоже не стоит — все нужные пакеты со временем сами установятся как зависимости, а ненужные удаляются так:

Источник

Я пытаюсь установить Ubuntu 12.10, и, кстати, у меня не работает беспроводная связь. Итак, я пытаюсь решить эту проблему вручную. Я уже установил 64-битную Ubuntu. Проблема в том, что я не могу установить какие-либо пакеты, потому что когда я получаю сообщение об ошибке. Например, если я запускаю команду sudo dpkg -i wireless-bcm43142-dkms_6.20.55.19-1_amd64.deb, я получаю эту ошибку:

dpkg: error processing wireless-bcm43142-dkms_6.20.55.19-1_amd64.deb (--install: package architecture (amd64) does not match system (i386)

Я также получаю эту ошибку, если я пытаюсь установить какой-либо пакет. Моя система — Dell 3421 с процессором i5, поэтому я не знаю, почему Ubuntu считает, что у меня система i386. Если я запускаю команду uname, я получаю следующие результаты:

uname -i 
i686

uname -p
i686

uname-m
i686

Заранее благодарю за любую помощь.

задан
4 August 2014 в 00:41

поделиться

2 ответа

Различные варианты uname дают признак ядра, что Вы установили.

Это в свою очередь дает ключ к разгадке относительно версии Ubuntu, которую Вы установили, а также объяснение Вашей ошибки

ошибка: архитектура пакета (amd64) не соответствует системе (i386)

На установке на 64 бита, как которая Вы ожидали бы что-то:

Linux emachine 3.5.0-26-generic #42~precise1-Ubuntu SMP Mon Mar 11 22:17:58 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

ключевая роль x86_64, который указывает на установку на 64 бита.

Ваш вывод — i686 указывает на установку версии на 32 бита Ubuntu.

Некоторые полезные ссылки в конце — достаточны для высказывания — Вы не можете установить 64 бита debian пакет в системе на 32 бита. Именно это Ваше сообщение об ошибке в основном сообщает Вам.

Вам будет нужен вариант на 32 бита пакета — он обычно заканчивается именем i386.deb.

<час>

Полезные ссылки:

  • Различие между загрузкой i386 и amd64?

  • это возможный к » upgrade» от 32 битов до установки на 64 бита?

  • , Как я проверяю, есть ли у меня 32-разрядное или 64-разрядная ОС?

ответ дан Community
4 August 2014 в 00:41

поделиться

Ответ спрятан в документации dpkg

dpkg — архитектура печати

покажет Вам, архитектура dpkg готова установить пакеты для.

, Если архитектура amd64 не перечислен, пакету AMD откажут, даже если все остальное будет казаться прекрасным. Теперь можно попытаться добавить его

dpkg — добавлять-архитектура amd64

и показать его

dpkg — внешняя архитектура печати

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

Albert

ответ дан Albert van der Horst
4 August 2014 в 00:41

поделиться

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

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

Asked
3 years, 11 months ago

Viewed
13k times

Whenever I want to upgrade or install any package on Ubuntu 16.04 this error appears!

dpkg: error processing /var/cache/apt/archives/gcc-6-base_6.0.1-ubuntu1_amd64.deb (—unpack):

package architecture (amd64) does not match system (i386)

Errors were encountered while processing:

/var/cache/apt/archives/gcc-6-base_6.0.1-0ubuntu1_amd64.deb

E: Sub-process /usr/bin/dpkg returned an error code (1)

The uname command outputs as follows:

uname -i
x86_64

uname -a
Linux hossein 4.4.0-138-generic #164-Ubuntu SMP Tue Oct 2 17:16:02 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

Community's user avatar

asked Mar 6, 2019 at 11:44

Hossein Tahmasbi's user avatar

2

Try to run this commands to enable support for the 64-bit userspace.

sudo apt-get update
sudo dpkg --add-architecture amd64
sudo apt-get update

and try to install the packages again. Also,you could try to run

dpkg --print-architecture

to move the investigation further.

answered Mar 6, 2019 at 13:24

Evandro Teixeira's user avatar

5

Asked
3 years, 11 months ago

Viewed
13k times

Whenever I want to upgrade or install any package on Ubuntu 16.04 this error appears!

dpkg: error processing /var/cache/apt/archives/gcc-6-base_6.0.1-ubuntu1_amd64.deb (—unpack):

package architecture (amd64) does not match system (i386)

Errors were encountered while processing:

/var/cache/apt/archives/gcc-6-base_6.0.1-0ubuntu1_amd64.deb

E: Sub-process /usr/bin/dpkg returned an error code (1)

The uname command outputs as follows:

uname -i
x86_64

uname -a
Linux hossein 4.4.0-138-generic #164-Ubuntu SMP Tue Oct 2 17:16:02 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

Community's user avatar

asked Mar 6, 2019 at 11:44

Hossein Tahmasbi's user avatar

2

Try to run this commands to enable support for the 64-bit userspace.

sudo apt-get update
sudo dpkg --add-architecture amd64
sudo apt-get update

and try to install the packages again. Also,you could try to run

dpkg --print-architecture

to move the investigation further.

answered Mar 6, 2019 at 13:24

Evandro Teixeira's user avatar

5

Это краткая статья о том, как без переустановки организовать 64-битную архитектуру на вашем 32-битном Debian/Deabian-based дистрибутиве (который вы могли по-невнимательности загрузить вместо 64bit).

* Ваше железо должно изначально поддерживать amd64, магию творить никто не собирается.
* Это может повредить систему, так что действуйте очень осторожно.
* Всё проверялось на Debian10-buster-i386.
* Не делайте этого, если хоть что-то здесь не понимаете.

Dpkg, apt и sources.list

Сразу к делу, если вы

сумaсшедший

всё взвесили, начинаем подготовку пакетов (в принципе здесь порядок не имеет значения, но по пунктам удобнее)

1. Выбираем amd64 в /etc/apt/sources.list, вставляя ‘ [arch=amd64] ‘ между debdeb-src и URL

Пример

# Base reps
deb [arch=amd64] http://deb.debian.org/debian/ buster main contrib non-free
deb-src [arch=amd64] http://deb.debian.org/debian/ buster main contrib non-free

# Update reps
deb [arch=amd64] http://deb.debian.org/debian/ buster-updates main
deb-src [arch=amd64]  http://deb.debian.org/debian/ buster-updates main

# Security reps
deb [arch=amd64] http://security.debian.org/debian-security/ buster/updates main
deb-src [arch=amd64] http://security.debian.org/debian-security/ buster/updates main

Это нужно для того, чтобы в будущем загружались только 64-х битные пакеты.

2.Добавляем amd64 в dpkg, чтобы он не ругался:

$ sudo dpkg --add-architecture amd64

3.Обновляем список пакетов:

$ sudo apt update

Ядро

Разумеется всё это не имеет смысла без 64-х битного ядра, поэтому устанавливаем его:

$ sudo apt install linux-headers-$VERSION-amd64 linux-image-amd64

Место $VERSION подставить нужную версию ядра.

После установки ядра grub перенастроится автоматически.

Завершение

После перезагрузки наша система уже сможет работать с amd64, но с пакетами могут возникнуть некоторые проблемы. У меня для их решения было достаточно выполнить данные команды:

$ sudo apt --fix-broken install
$ sudo apt full-upgrade

Хотя сильно на этот счёт беспокоиться тоже не стоит — все нужные пакеты со временем сами установятся как зависимости, а ненужные удаляются так:

$ sudo apt autoremove

После приведённых выше операций можно опять поправить sources.list, убрав ‘ [arch=amd64] ‘,
чтобы с пакетами не было проблем.
Теперь в вашем распоряжении находится 64-битная система!

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

А вот еще интересные материалы:

  • Яшка сломя голову остановился исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного где ошибка
  • Ошибка непонимания клиентом рекомендаций полученных от психолога консультанта представляет собой
  • Ошибка неполная информация при заполнении полиса последствия