Несмотря на настройки Multiarch, Ubuntu 16.04 приводит к сбою к хранению и библиотеки на 64 бита и на 32 бита, установленные в ОС

Я должен компилировать/связывать исполняемые файлы C/C++ на 64 бита и на 32 бита на Ubuntu 16.04 (64 бита). Я выполнил следующие командные строки:

sudo apt-get install build-essential
sudo apt-get install automake libtool libtool-bin
sudo dpkg --add-architecture i386 && sudo apt-get update && sudo apt-get install lib32ncurses5 lib32z1
sudo apt-get install gcc-multilib g++-multilib 
sudo apt-get install libglib2.0-dev 

Последняя команда установит 64 бита glib2.0 библиотека

Но когда я пытаюсь установить 32 бита glib2.0 библиотека через команду:

sudo apt-get install libglib2.0-dev:i386

Это удаляет 64 бита glib2.0 библиотека, которую я просто установил ранее (как отмечено удалить комментарием после издания установки на 32 бита):

dev@ubuntu:~$ sudo apt-get install libglib2.0-dev:i386
[sudo] password for dev: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
libltdl-dev:i386 libltdl7:i386 libpcre3-dev libpcre32-3 libpcrecpp0v5 libxext-dev:i386 libxext6:i386
libxfixes-dev:i386 libxfixes3:i386 libxi6:i386 libxtst6:i386 odbcinst1debian2:i386 zlib1g-dev
Use 'sudo apt autoremove' to remove them.
Suggested packages:
  libglib2.0-doc:i386
The following packages will be REMOVED:
  libglib2.0-dev
The following NEW packages will be installed:
  libglib2.0-dev:i386
0 upgraded, 1 newly installed, 1 to remove and 15 not upgraded.
Need to get 0 B/1,422 kB of archives.
After this operation, 1,367 kB disk space will be freed.
Do you want to continue? [Y/n]  

Кто-то мог сказать мне, как я могу предотвратить удаление 64 битов glib2.0 библиотеки (а также другие библиотеки, которые я могу установить) при установке его версии на 32 бита на Ubuntu 16.04. Мне нужны и библиотеки на 64 бита и на 32 бита, установленные для моей сборки C/C++.

Как отмечено списком команд я выполнился, я действительно добавил архитектуру на 32 бита к своей Ubuntu на 64 бита и проверил, что это распознается ОС:

dev@ubuntu:~$ dpkg --print-architecture
amd64
dev@ubuntu:~$ dpkg --print-foreign-architectures
i386

Таким образом на основе вышеупомянутого запроса, не должно быть никакой причины, почему у меня не может быть glib2.0 библиотеки, которая составляет 64 бита и 32 бита (или для какой-либо библиотеки, которая имеет обе библиотеки на 64/32 бита в наличии), установленный в той же 64-разрядной ОС, правильно? По крайней мере, это - то, что debian ссылка мультидуги говорит мне.

Если так, где я иду не так, как надо здесь, что диспетчер пакетов запрещает это? Мультидуга, поддержка на Ubuntu 16.04, правильно?

2
задан 17 August 2016 в 08:36

0 ответов

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

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