0

我正在按照此网页的说明在 Ubuntu 12.04 LTS (x64) 中安装 Oracle 11G

Oracle 11g 还需要 Ubuntu Pangolin 未提供的 32 位版本的 libstdc++5,因此我遵循以下说明:

mkdir /tmp/libstdc++5
cd /tmp/libstdc++5

wget http://old-releases.ubuntu.com/ubuntu/pool/universe/g/gcc-3.3/libstdc++5_3.3.6-17ubuntu1_amd64.deb
wget http://old-releases.ubuntu.com/ubuntu/pool/universe/g/gcc-3.3/libstdc++5_3.3.6-17ubuntu1_i386.deb


sudo dpkg --force-architecture -i libstdc++5_3.3.6-17ubuntu1_i386.deb
sudo mv /usr/lib/libstdc++.so.5* /usr/lib32/

但是在执行这个命令时:

sudo dpkg -i libstdc++5_3.3.6-17ubuntu1_amd64.deb

我收到此错误:

dpkg: error al procesar libstdc++5_3.3.6-17ubuntu1_amd64.deb (--install):
 libstdc++5: 1:3.3.6-17ubuntu1 (Multi-Arch: no) is not co-installable with  libstdc++5:i386 1:3.3.6-17ubuntu1 (Multi-Arch: no) which is currently installed
Se encontraron errores al procesar:
 libstdc++5_3.3.6-17ubuntu1_amd64.deb

我应该如何处理这个安装问题?

4

1 回答 1

3

有几种方法可以解决这个问题。我没有使用奔腾处理器,所以我不担心那个特定的封装模型。一些 11gR2 的 make 文件适用于较旧版本的 linux 内核,因此 gcc 编译器也较旧。

让我们想一想,Oracle Enterprise 基于 Red Hat。Red Hat 5 上最新版本的内核“开箱即用”大概是~2.6?!所以这些文件将使用当时相对于内核的 gcc 版本。Red Hat 与其子项目 Fedora 不同,就内核版本而言,它是一个发展相当缓慢的生物。

我使用了 libstc++5_3.3.6-25.deb 包(i386 和 amd64)。该特定软件包集(3.3.6-17)适用于 i686 P6 微架构。这是英特尔奔腾类的CPU。

我不知道您在使用 11g 或用于什么,但如果您的 CPU 不是 Pentium,我列出的软件包将可以工作。我用过企业管理器、数据库、sqlplus 和 SQL Developer。我什至下载了 Data Modeler 并使用它。但那是关于如何让那只小狗跑起来的另外 5,000 字的详细信息。回到手头的问题:

  1. 如果尚未完成;创建 Oracle 用户以及 dba、oper 和 oinstall 组。

  2. 将 /mnt_pt/././ 目录提供给 oracle 用户和具有 -R 权限的 oinstall 组

~$ sudo mkdir -p /mnt_pt/app (即opt目录经常使用或创建一个) ~$ sudo useradd -g oinstall -G dba -d /mnt_pt/app -s /bin/bash oracle ~$ sudo passwd oracle ~ $ sudo chown -R oracle:oinstall /mnt_pt/app

3.1 下载突触包管理器。$ sudo apt-get install synaptic -y 3.2 下载 mlocate(应该安装) $ sudo apt-get install mlocate -y

4.1 转到用户和用户组应用程序:系统设置>用户和帐户。将 oracle 帐户类型设置为管理员。

4.2 退出账号,进入oracle账号。

4.3 从 oracle 账户打开 Synaptic Package manager。搜索 libstdc++5 (3.3.6-25) 文件。不要安装它们!!!!

4.4 从安装中标记两个包。不要安装它们!!!

4.5 在 Synaptic 应用程序的 Package 菜单上,禁用 Automatically Install 功能。

4.6 打开 synaptic 的 File 菜单,选择 Generate Script 选项并选择你创建的目录作为保存目的地。(在你的情况下 /tmp/libstdc++5)

4.7 退出而不应用更改。

5.1 手动打开保存脚本的文件。右键单击 libstdc++5 脚本,然后选择在终端中运行。

5.2 这将提供两个 .deb 包。将您的 forcearch 代码从 3.3.6-17 更改为 3.3.6-25

6.1 通过运行以下代码找出库 (libstdc++.so.5) 的位置: $ sudo updatedb $ locate libstdc++.so.5 .......(.so. 代表库)

6.2 您正在寻找 5 和 5.07。现在运行以下代码行将其移动到您想要的位置(文件是存储它们的父目录) sudo mv /file/lib/libstdc++.so.5* /usr/lib32/

我安装 Fedora 19 只是为了尝试查看我在哪里出错以及是否可以获得这些软件包。这是一次学习经历。该特定软件包集适用于 i686 P6 微架构。这是一个很难找到!Fedora 19 非常锋利,但是,我开始使用 Ubuntu,所以这就是我所做的!顺便说一句,最难的部分在那之后!

有更多问题请告诉我!

PS如果您使用的是奔腾,我建议您使用fedora进行第二次安装,从noarch存储库中获取软件包,将它们传输到usb,切换回Ubuntu,并在安装外星人和rpm后,从命令行运行通过软件包所在的目录(或右键单击软件包)对软件包执行外星人命令,然后执行 dpkg-forcearchitecure。

于 2013-10-13T05:16:16.223 回答