ubuntu下安装oracle12c

环境:

当然刚开始如果你的电脑没有vim的话先安装下,到时候还得编辑一些文件,输入如下命令进行安装
sudo apt-get install vim
Oracle数据库服务器是Ubuntu 14.0.4 X64位服务器版   客户端是ubuntu 14.0.4 桌面版
.Client客户端设置192.168.0.100
1) vim /etc/ssh/ssh_config 去掉下面行前的#
     ForwardAgent yes
     ForwardX11 yes
     ForwardX11Trusted yes
 
2) 设置DISPLAY (即允许任意服务器使用Client的图形服务)
     xhost +
重点:(其他教程没有的哦!而且如果按照其他教程会出现安装过程中即使按照教程做了,错误也不能解决的问题)
安装完这些包还要在安装vnc4server组件,保证 安装的oralce到时候可以调用gnome桌面图形工具

.服务器环境设置
1)安装一些必须 软件
     sudo  apt-get install -y zlib1g-dev elfutils  libaio1 libaio-dev  libstdc++6-4.4-dev  numactl  pdksh  sysstat  unixODBC-dev  unixODBC  build-essential libaio1 gawk libmotif3  alien libtool x11-utils

重点:后面创建oracle用户后执行sudo命令行时提示此用户不在sudoers中,事件将被报告。
解决方法:vi /etc/sudoers    后添加第三行
# User privilege specification
root    ALL=(ALL:ALL) ALL
oracle  ALL=(ALL:ALL) ALL
进行更新:sudo apt-get update
进行升级:sudo apt-get dist-upgrade
重启:init 6

安装环境所需要的安装包

sudo apt-get -y install alien binutils build-essential cpp-4.4 debhelper g++-4.4 gawk gcc-4.4 gcc-4.4-base gettext html2text lib32z1 lib32ncurses5 lib32bz2-1.0 intltool-debian ksh lib32bz2-dev lib32z1-dev libaio-dev libaio1 libbeecrypt7 libc6 libc6-dev libc6-dev-i386 libelf-dev libelf1 libltdl-dev libltdl7 libmotif4 libodbcinstq4-1 libodbcinstq4-1:i386 libqt4-core libqt4-gui libsqlite3-0 libstdc++5 libstdc++6 libstdc++6-4.4-dev lsb lsb-core lsb-cxx lsb-desktop lsb-graphics lsb-qt4 make odbcinst pax po-debconf rpm rpm-common sysstat unixodbc unixodbc-dev unzip

创建用户及组

sudo addgroup oinstall
sudo addgroup dba
sudo addgroup nobody
sudo usermod -g nobody nobody
sudo useradd -g oinstall -G dba -p password -d /home/oracle -s /bin/bash oracle
sudo mkdir /home/oracle
sudo chown -R oracle:dba /home/oracle
sudo mkdir -p /u01/app/oracle
sudo mkdir -p /u01/binaries
sudo chown -R oracle:dba /u01
为oracle用户创建密码:输入两次
sudo passwd oracle
由于oracle支持redhat 系统  而不支持ubuntu所有进行伪装一下
echo 'Red Hat Linux release 6' | sudo tee -a /etc/redhat-release
为启动环境所需的安装包创建链接
sudo mkdir /usr/lib64
sudo ln -s /etc /etc/rc.d
sudo ln -s /lib/x86_64-linux-gnu/libgcc_s.so.1 /lib64/
sudo ln -s /usr/bin/awk /bin/awk
sudo ln -s /usr/bin/basename /bin/basename
sudo ln -s /usr/bin/rpm /bin/rpm
sudo ln -s /usr/lib/x86_64-linux-gnu/libc_nonshared.a /usr/lib64/
sudo ln -s /usr/lib/x86_64-linux-gnu/libpthread_nonshared.a /usr/lib64/
sudo ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /lib64/
sudo ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /usr/lib64/
为oracle用户改变一些系统参数
sudo cp /etc/security/limits.conf /etc/security/limits.conf.original
echo "#Oracle 12C shell limits:" | sudo tee -a /etc/security/limits.conf
echo "oracle soft nproc 2048" | sudo tee -a /etc/security/limits.conf
echo "oracle hard nproc 16384"| sudo tee -a /etc/security/limits.conf
echo "oracle soft nofile 1024" | sudo tee -a /etc/security/limits.conf
echo "oracle hard nofile 65536" | sudo tee -a /etc/security/limits.conf
运行一下命令改变内核参数
echo "#" | sudo tee -a /etc/sysctl.conf
echo "# Oracle 12C entries" | sudo tee -a /etc/sysctl.conf
echo "fs.aio-max-nr=1048576" | sudo tee -a /etc/sysctl.conf
echo "fs.file-max=6815744" | sudo tee -a /etc/sysctl.conf
echo "kernel.shmall=2097152" | sudo tee -a /etc/sysctl.conf
echo "kernel.shmmni=4096" | sudo tee -a /etc/sysctl.conf
echo "kernel.sem=250 32000 100 128" | sudo tee -a /etc/sysctl.conf
echo "net.ipv4.ip_local_port_range=9000 65500" | sudo tee -a /etc/sysctl.conf
echo "net.core.rmem_default=262144" | sudo tee -a /etc/sysctl.conf
echo "net.core.rmem_max=4194304" | sudo tee -a /etc/sysctl.conf
echo "net.core.wmem_default=262144" | sudo tee -a /etc/sysctl.conf
echo "net.core.wmem_max=1048586" | sudo tee -a /etc/sysctl.conf
echo "kernel.shmmax=1073741824" | sudo tee -a /etc/sysctl.conf
为使改变数据生效,执行:
sudo sysctl -p
创建启动脚本
mkdir /etc/rc.d
for i in 0 1 2 3 4 5 6 S
do sudo ln -s /etc/rc$i.d /etc/rc.d/rc$i.d 
done
重启后用oracle用户登录,下载,oracle文件
linuxamd64_12102_database_2of2.zip
linuxamd64_12102_database_1of2.zip
创建安装路径
mkdir /u01/binaries
把下载好的文件移动到binaries路径
mv /home/lem/下载     #其中lem是本人用户名
使用unzip命令依次进行解压缩两个zip文件
一定要先解压地一个文件,当然你得先进入到该文件夹是吧,不然还得费事写上解压路径
cd /u01/binaries  #进入到该目录
unzip linuxamd64_12102_database_1of2.zip 

unzip linuxamd64_12102_database_2of2.zip
解压完成后,查看是否有database文件夹,执行ls命令查看
改变文件路径所属的用户组为oracle用户的dba组

chown -Rf oracle:dba /u01/binaries  
重点:如果直接运行安装,会看到乱码的安装界面,当然,安装过程,我们不认识字符
怎么安装,所以还是有办法解决这个问题的
export LANG=US
之后看到 进行安装就会看到英文的界面我而不在是小方格的乱码界面
,好了开始安装
/u01/binaries/database/runInstaller -ignoreSysPrereqs
 
ubuntu下安装oracle12c_第1张图片

ubuntu下安装oracle12c_第2张图片

ubuntu下安装oracle12c_第3张图片

ubuntu下安装oracle12c_第4张图片

ubuntu下安装oracle12c_第5张图片

ubuntu下安装oracle12c_第6张图片

ubuntu下安装oracle12c_第7张图片



ubuntu下安装oracle12c_第8张图片

ubuntu下安装oracle12c_第9张图片

ubuntu下安装oracle12c_第10张图片 66
到了这里还要说句,避免由于不会设置密码而前功尽弃
密码格式如:AAAlll666,
ubuntu下安装oracle12c_第11张图片
ubuntu下安装oracle12c_第12张图片

ubuntu下安装oracle12c_第13张图片

到这里问题来了,就是安装过程中出现错误,这好办虽然错误出现好多次,表怕
我们解决问题
In installation error logs you will see following error.
INFO: /usr/bin/ld: /u01/app/oracle/product/12.1.0/dbhome_1/lib//libnls12.a(lxhlang.o): undefined reference to symbol '__tls_get_addr@@GLIBC_2.3'/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2: error adding symbols: DSO missing from command linecollect2: error: ld returned 1 exit status

For the same you need do following
Create a backup copy of /u01/app/oracle/product/12.1.0/dbhome_1/lib/stubs

      cp -rip /u01/app/oracle/product/12.1.0/dbhome_1/lib/stubs /u01/app/oracle/product/12.1.0/dbhome_1/lib/stubs.orig

Delete folder

     $:     rm -rf /u01/app/oracle/product/12.1.0/dbhome_1/lib/stubs

Create a backup copy of /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk

     $:  cp -rip /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk.orig

Open
gedit /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk
file in vi. Search for RMAN_LINKLINE. You will see following lines.

RMAN_LINKLINE=$(LINK) $(OPT) $(S0MAIN) $(SSKRMED) $(SKRMPT) \ $(LLIBDBTOOLS) $(LLIBCLIENT) $(LLIBSQL) $(LLIBPLSQL) \ $(LLIBSNLSRTL) $(LLIBUNLSRTL) $(LLIBNLSRTL) \ $(LLIBSLAX) $(LLIBPLSQL) $(LIBPLCN) $(LINKTTLIBS)

Now change it to as follows

RMAN_LINKLINE=$(LINK) $(OPT) $(S0MAIN) $(SSKRMED) $(SKRMPT) \

$(LLIBDBTOOLS) $(LLIBCLIENT) $(LLIBSQL) $(LLIBPLSQL) \ 

$(LLIBSNLSRTL) $(LLIBUNLSRTL) $(LLIBNLSRTL) \ 

$(LLIBSLAX) $(LLIBPLSQL) $(LIBPLCN) $(LINKTTLIBS) -lons

And click on retry button.

Further you wee see error for all_no_orcl
oracle-12c-database-installation-ubuntu13.10-51
In the logs for above error I have observed following line

INFO: /usr/bin/ld: /u01/app/oracle/product/12.1.0/dbhome_1/lib//libclntsh.so: undefined reference to symbol 'ztucxtb'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libnnz12.so: error adding symbols: DSO missing from command linecollect2: error: ld returned 1 exit status INFO: make: *** [/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/orapwd] Error 1 INFO: End output from spawned process.INFO: ----------------------------------INFO: Exception thrown from action: makeException Name: MakefileExceptionException String: Error in invoking target 'all_no_orcl' of makefile '/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk'. See '/u01/app/oraInventory/logs/installActions2014-03-30_03-56-25PM.log' for details.Exception Severity: 1

So I checked the ldd output of /u01/app/oracle/product/12.1.0/dbhome_1/lib//libnnz12.so file.

oracle@vidyadhar:~$ ldd /u01/app/oracle/product/12.1.0/dbhome_1/lib//libnnz12.so 

linux-vdso.so.1 => (0x00007fffd6aa0000) 

libclntshcore.so.12.1 => not found 

libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fa13b1f8000) 

/lib64/ld-linux-x86-64.so.2 (0x00007fa13bcef000)

Run following command to rectify this

    $     sudo ln -s /u01/app/oracle/product/12.1.0/dbhome_1/lib/libclntshcore.so.12.1 /usr/lib/

Now see the linking again

oracle@vidyadhar:~$ ldd /u01/app/oracle/product/12.1.0/dbhome_1/lib//libnnz12.so 
linux-vdso.so.1 => (0x00007fff5c5fe000) 

libclntshcore.so.12.1 => /usr/lib/libclntshcore.so.12.1 (0x00007f133b180000) 

libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f133adb8000) 

libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f133abb3000)

libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f133a8af000)

libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f133a692000)

librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f133a489000) 

/lib64/ld-linux-x86-64.so.2 (0x00007f133bdff000)

Further do following
Take a backup of /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk

$    cp -rip /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk
 /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk.original

Open 
gedit /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk 
and search for Linking password utility (orapwd), you will see following lines

$(ORAPWD) : $(ALWAYS) $(ORAPWD_DEPS)$(SILENT)$(ECHO)

$(SILENT)$(ECHO) " - Linking password utility (orapwd)"$(RMF) $@$(ORAPWD_LINKLINE)

Now change it to as follows

$(ORAPWD) : $(ALWAYS) $(ORAPWD_DEPS)$(SILENT)$(ECHO)$(SILENT)

$(ECHO) " - Linking password utility (orapwd)"$(RMF) $@$(ORAPWD_LINKLINE) -lnnz12

Click on retry to go further.

Again you will see error for all_no_orcl
oracle-12c-database-installation-ubuntu13.10-51
In the logs for above error I have observed following line

INFO: /usr/bin/ld: /u01/app/oracle/product/12.1.0/dbhome_1/lib//libagtsh.so: undefined reference to symbol 'ssMemRealloc'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libclntshcore.so: error adding symbols: DSO missing from command linecollect2: error: ld returned 1 exit status INFO: make: *** [/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/hsots] Error 1 INFO: End output from spawned process.INFO: ----------------------------------INFO: Exception thrown from action: makeException Name: MakefileExceptionException String: Error in invoking target 'all_no_orcl' of makefile '/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk'. See '/u01/app/oraInventory/logs/installActions2014-03-30_03-56-25PM.log' for details.Exception Severity: 1

So I have run ldd /u01/app/oracle/product/12.1.0/dbhome_1/lib//libagtsh.so

oracle@vidyadhar:~$ ldd /u01/app/oracle/product/12.1.0/dbhome_1/lib//libagtsh.so 

linux-vdso.so.1 => (0x00007fff0b22a000) 

libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f11a9daf000)

libclntsh.so.12.1 => not found 

libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f11a99e6000)

/lib64/ld-linux-x86-64.so.2 (0x00007f11aa399000)

To rectify run following

$  sudo ln -s /u01/app/oracle/product/12.1.0/dbhome_1/lib/libclntsh.so.12.1 /usr/lib/

Check the linking again

oracle@vidyadhar:~$ ldd /u01/app/oracle/product/12.1.0/dbhome_1/lib//libagtsh.so 

linux-vdso.so.1 => (0x00007fff09f7e000) 

libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f81b3599000) 

libclntsh.so.12.1 => /usr/lib/libclntsh.so.12.1 (0x00007f81b08aa000) 

libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f81b04e1000) 

/lib64/ld-linux-x86-64.so.2 (0x00007f81b3b83000)

libnnz12.so => /u01/app/oracle/product/12.1.0/dbhome_1/lib/libnnz12.so (0x00007f81afdcb000) 

libons.so => /u01/app/oracle/product/12.1.0/dbhome_1/lib/libons.so (0x00007f81afb87000) 

libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f81af882000) 

libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f81af665000)

libclntshcore.so.12.1 => /u01/app/oracle/product/12.1.0/dbhome_1/lib/libclntshcore.so.12.1 (0x00007f81af115000)

librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f81aef0c000)

Further you need to do changes in 
$ gedit /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk
 
 file. Open the file using file editor and search for Linking HS OTS agent. You will see following lines.

$(HSOTS) : $(ALWAYS) $(HSOTS_DEPS) $(SILENT)$(ECHO) $(SILENT)

$(ECHO) " - Linking HS OTS agent" $(RMF) $@ $(HSOTS_LINKLINE)

Change it to as follows

$(HSOTS) : $(ALWAYS) $(HSOTS_DEPS) $(SILENT)$(ECHO)

$(SILENT)$(ECHO) " - Linking HS OTS agent" $(RMF) $@ $(HSOTS_LINKLINE) -lagtsh

Also you need to do changes in /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk file.
First take the backup of file using following command

cp -rip /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk

 /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk.original

Now open
$ gedit /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk 
using file editor and search for HSOTS_LINKLINE. You will see following lines in the file

HSOTS_LINKLINE=$(LINK) $(OPT) $(HSOTSMAI) $(HSALIB_SUBSET1) \

$(HS_OTS_DRIVER) $(HS_XASWITCH_ORA) $(RDBMSLIB)$(XAD_OFF) \ $(HSALIB_SUBSET2)

Change it to as follows

HSOTS_LINKLINE=$(LINK) $(OPT) -Wl,--no-as-needed $(HSOTSMAI) $(HSALIB_SUBSET1) \

 $(HS_OTS_DRIVER) $(HS_XASWITCH_ORA) $(RDBMSLIB)$(XAD_OFF) \ $(HSALIB_SUBSET2)

Again you will see error for all_no_orcl
oracle-12c-database-installation-ubuntu13.10-51

In the logs for above error I have observed following line

INFO: /usr/bin/ld: /u01/app/oracle/product/12.1.0/dbhome_1/lib//libagtsh.so: undefined reference to symbol 'ssMemRealloc'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libclntshcore.so: error adding symbols: DSO missing from command linecollect2: error: ld returned 1 exit status INFO: make: *** [/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/hsdepxa] Error 1 INFO: End output from spawned process.INFO: ----------------------------------INFO: Exception thrown from action: makeException Name: MakefileExceptionException String: Error in invoking target 'all_no_orcl' of makefile '/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk'. See '/u01/app/oraInventory/logs/installActions2014-03-30_03-56-25PM.log' for details.Exception Severity: 1

For above error we need to do changes in
$  gedit /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk.

 Search for HSDEPXA_LINKLINE and you will see following lines in the file.

HSDEPXA_LINKLINE=$(LINK) $(OPT) $(HSDEPMAI) $(HSALIB_SUBSET1) \

 $(HS_DEP_DRIVER) $(RDBMSLIB)$(XAD_OFF) \ $(HSALIB_SUBSET2)

Change it to as follows

HSDEPXA_LINKLINE=$(LINK) $(OPT) -Wl,--no-as-needed 

$(HSDEPMAI) $(HSALIB_SUBSET1) \ $(HS_DEP_DRIVER)

$(RDBMSLIB)$(XAD_OFF) \ $(HSALIB_SUBSET2)

Again you will see error for all_no_orcl
oracle-12c-database-installation-ubuntu13.10-51

In the logs for above error I have observed following line

INFO: pp/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so: undefined reference to `kgfoCheckMount'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so: undefined reference to `kgfoDestroyCtx'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so: undefined reference to `kgfoShrinkFile'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so: undefined reference to `kgfoControl'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so: undefined reference to `kgfoCreate2P'collect2: error: ld returnedINFO: 1 exit statusmake: *** [/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/kfod] Error 1 INFO: End output from spawned process.INFO: ----------------------------------INFO: Exception thrown from action: makeException Name: MakefileExceptionException String: Error in invoking target 'all_no_orcl' of makefile '/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk'. See '/u01/app/oraInventory/logs/installActions2014-03-30_03-56-25PM.log' for details.Exception Severity: 1

For above error we need to do changes in 
$ gedit /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk. Search for KFOD_LINKLINE and you will see following lines in the file.

KFOD_LINKLINE=$(LINK) $(S0MAIN) $(SSKFODED) $(SKFODPT) $(KFODOBJ) \

$(LIBGENERIC) $(LLIBDBTOOLS) \ $(LIBGENERIC) $(LLIBSAGE)

$(LLIBSKGXP) $(LIBCORE) \ $(CSSCLNTLIBS_SERVER)

$(LLIBASMCLNT) $(LINKTTLIBS)

Change it to as follows

KFOD_LINKLINE=$(LINK) $(S0MAIN) -Wl,--no-as-needed $(SSKFODED)

$(SKFODPT) $(KFODOBJ) \ $(LIBGENERIC) $(LLIBDBTOOLS) \

 $(LIBGENERIC) $(LLIBSAGE) $(LLIBSKGXP) $(LIBCORE) \

 $(CSSCLNTLIBS_SERVER) $(LLIBASMCLNT) $(LINKTTLIBS)

Again you will see error for all_no_orcl
oracle-12c-database-installation-ubuntu13.10-51

In the logs for above error I have observed following line

INFO: l.c:(text.unlikely+0x3231): undefined reference to `oss_cell_discovery_fetch'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libasmclnt12.a(kfkl.o): In function `kfklCellScanTerm':kfkl.c:(text.unlikely+0x3296): undefined reference to `oss_cell_discovery_close'collect2: error: ld returned 1 exit statusmake: *** [/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/amdu] Error 1 INFO: End output from spawned process.INFO: ----------------------------------INFO: Exception thrown from action: makeException Name: MakefileExceptionException String: Error in invoking target 'all_no_orcl' of makefile '/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk'. See '/u01/app/oraInventory/logs/installActions2014-03-30_03-56-25PM.log' for details.Exception Severity: 1

For above error we need to do changes in
$  gedit /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk. Search for AMDU_LINKLINE and you will see following lines in the file.

AMDU_LINKLINE=$(LINK) $(S0MAIN) $(SSKFMUED) $(SKFMUPT) \

$(LLIBDBTOOLS) $(LLIBCORE) $(LLIBGENERIC) $(LLIBUNLSRTL) \

$(LLIBNLSRTL) $(LLIBCORE) $(LLIBSAGE) $(LLIBSKGXP) \ $(LLIBNLSRTL)

 $(CSSCLNTLIBS_SERVER) $(LLIBASMCLNT) $(LINKTTLIBS)

Change it to as follows

AMDU_LINKLINE=$(LINK) $(S0MAIN) -Wl,--no-as-needed $(SSKFMUED)

$(SKFMUPT) \ $(LLIBDBTOOLS) $(LLIBCORE) $(LLIBGENERIC)

$(LLIBUNLSRTL) \ $(LLIBNLSRTL) $(LLIBCORE) $(LLIBSAGE) $(LLIBSKGXP) \

$(LLIBNLSRTL) $(CSSCLNTLIBS_SERVER) $(LLIBASMCLNT) $(LINKTTLIBS)

Again you will see error for all_no_orcl
oracle-12c-database-installation-ubuntu13.10-51

In the logs for above error I have observed following line

INFO: ss_finalize'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libasmclnt12.a(kgfk.o): In function `kgfkOssOpen':kgfk.c:(text.unlikely+0x660b): undefined reference to `osssec_getkey'kgfk.c:(text.unlikely+0x6680): undefined reference to `oss_open'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libasmclnt12.a(kgfk.o): In function `kgfkOssError':kgfk.c:(text.unlikely+0x6c4a): undefined reference to `oss_errstr'kgfk.c:(text.unlikely+0x6c79): undefined reference to `oss_errstr'collect2: error: ld returned 1 exit sINFO: tatusmake: *** [/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/kfed] Error 1 INFO: End output from spawned process.INFO: ----------------------------------INFO: Exception thrown from action: makeException Name: MakefileExceptionException String: Error in invoking target 'all_no_orcl' of makefile '/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk'. See '/u01/app/oraInventory/logs/installActions2014-03-30_03-56-25PM.log' for details.Exception Severity: 1

For above error we need to do changes in
 gedit /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk. Search for KFED_LINKLINE and you will see following lines in the file.

KFED_LINKLINE=$(LINK) $(S0MAIN) $(SSKFEDED) $(SKFEDPT) \

$(LLIBDBTOOLS) $(LLIBSAGE) \ $(LLIBSKGXP) $(CSSCLNTLIBS_SERVER)

$(LLIBASMCLNT) $(LINKTTLIBS)

Change it to as follows

KFED_LINKLINE=$(LINK) $(S0MAIN) -Wl,--no-as-needed $(SSKFEDED)

$(SKFEDPT) \ $(LLIBDBTOOLS) $(LLIBSAGE) \ $(LLIBSKGXP) $(CSSCLNTLIBS_SERVER)

$(LLIBASMCLNT) $(LINKTTLIBS)

This time I got error for utilities
ubuntu下安装oracle12c_第14张图片
In the logs for above error I have observed following line

INFO: /usr/bin/ld: /u01/app/oracle/product/12.1.0/dbhome_1/lib//libclient12.a(kpue.o): undefined reference to symbol 'ons_subscriber_close'/u01/app/oracle/product/12.1.0/dbhome_1/lib/libons.so: error adding symbols: DSO missing from command linecollect2: error: ld returned 1 exit status INFO: make: *** [/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/plshprof] Error 1 INFO: End output from spawned process.INFO: ----------------------------------INFO: Exception thrown from action: makeException Name: MakefileExceptionException String: Error in invoking target 'utilities' of makefile '/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk'. See '/u01/app/oraInventory/logs/installActions2014-03-30_03-56-25PM.log' for details.Exception Severity: 1

For above error we need to do changes in
$ gedit /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk. Search for PLSHPROF and you will see following lines in the file.

$(PLSHPROF) : $(ALWAYS) $(PLSHPROF_DEPS) $(SILENT)$(ECHO)

$(SILENT)$(ECHO) " - Linking hierarchical profiler utility (plshprof)" $(RMF)

$@ $(PLSHPROF_LINKLINE)

Change it to as follows

$(PLSHPROF) : $(ALWAYS) $(PLSHPROF_DEPS) $(SILENT)

$(ECHO) $(SILENT)$(ECHO) " - Linking hierarchical profiler utility (plshprof)" $(RMF) $@

$(PLSHPROF_LINKLINE) -lons

Click retry to go further.

Again I got error for utilities
ubuntu下安装oracle12c_第15张图片

In the logs for above error I have observed following line

INFO: /usr/bin/ld: /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/houzi.o: undefined reference to symbol 'ztcsh'/u01/app/oracle/product/12.1.0/dbhome_1/lib/libnnz12.so: error adding symbols: DSO missing from command linecollect2: error: ld returned 1 exit status INFO: make: *** [/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/dg4pwd] Error 1 INFO: End output from spawned process.INFO: ----------------------------------INFO: Exception thrown from action: makeException Name: MakefileExceptionException String: Error in invoking target 'utilities' of makefile '/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk'. See '/u01/app/oraInventory/logs/installActions2014-03-30_03-56-25PM.log' for details.Exception Severity: 1

For above error we need to do changes in
$ gedit /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk
Search for TG4PWD and you will see following lines in the file.

$(TG4PWD) : $(ALWAYS) $(TG4PWD_DEPS) $(SILENT)$(ECHO)

$(SILENT)$(ECHO) " - Linking $(TG4DG4)pwd utility"

$(RMF) $@ $(TG4PWD_LINKLINE)

Change it to as follows

$(TG4PWD) : $(ALWAYS) $(TG4PWD_DEPS) $(SILENT)$(ECHO)

$(SILENT)$(ECHO) " - Linking $(TG4DG4)pwd utility" $(RMF) $@

$(TG4PWD_LINKLINE) -lnnz12

Click retry to go further.

Again I got error for utilities
ubuntu下安装oracle12c_第16张图片

In the logs for above error I have observed following line

INFO: Linking external procedure agent (/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/extproc) INFO: rm -f /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/extproc INFO: /u01/app/oracle/product/12.1.0/dbhome_1/bin/orald -o /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/extproc -m64 -z noexecstack -Wl,--disable-new-dtags -L/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ -L/u01/app/oracle/product/12.1.0/dbhome_1/lib/ -L/u01/app/oracle/product/12.1.0/dbhome_1/lib/stubs/ /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/hormc.o /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/homts.o -lagtsh -lpthread -lclntsh -lclntshcore `cat /u01/app/oracle/product/12.1.0/dbhINFO: ome_1/lib/sysliblist` -Wl,-rpath,/u01/app/oracle/product/12.1.0/dbhome_1/lib -lm `cat /u01/app/oracle/product/12.1.0/dbhome_1/lib/sysliblist` -ldl -lm -L/u01/app/oracle/product/12.1.0/dbhome_1/lib -lnsgr12 INFO: /usr/bin/ld: /u01/app/oracle/product/12.1.0/dbhome_1/lib//libagtsh.so: undefined reference to symbol 'nsdisc'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libclntsh.so: error adding symbols: DSO missing from command linecollect2: error: ld returned 1 exit status INFO: make: *** [/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/extproc] Error 1 INFO: End output from spawned process.INFO: ----------------------------------INFO: Exception thrown from action: makeException Name: MakefileExceptionException String: Error in invoking target 'utilities' of makefile '/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk'. See '/u01/app/oraInventory/logs/installActions2014-03-30_03-56-25PM.log' for details.Exception Severity: 1

For above error we need to do changes in
$  gedit /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk
. Search forLinking external procedure agent and you will see following lines in the file.

$(EXTPROC): $(ALWAYS) $(EXTPROC_DEPS)

$(SILENT)$(ECHO) $(SILENT)$(ECHO) "Linking external procedure agent ($@)" $(RMF) $@

$(EXTPROC_LINKLINE)

Change it to as follows

$(EXTPROC): $(ALWAYS) $(EXTPROC_DEPS) $(SILENT)$(ECHO)

$(SILENT)$(ECHO) "Linking external procedure agent ($@)" $(RMF) $@

$(EXTPROC_LINKLINE) -lagtsh

Click retry to go further.

Again I got error for utilities
ubuntu下安装oracle12c_第17张图片

In the logs for above error I have observed following line

INFO: Linking external procedure agent (/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/extproc) INFO: rm -f /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/extproc INFO: /u01/app/oracle/product/12.1.0/dbhome_1/bin/orald -o /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/extproc -m64 -z noexecstack -Wl,--disable-new-dtags -L/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ -L/u01/app/oracle/product/12.1.0/dbhome_1/lib/ -L/u01/app/oracle/product/12.1.0/dbhome_1/lib/stubs/ /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/hormc.o /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/homts.o -lagtsh -lpthread -lclntsh -lclntshcore `cat /u01/app/oracle/product/12.1.0/dbhINFO: ome_1/lib/sysliblist` -Wl,-rpath,/u01/app/oracle/product/12.1.0/dbhome_1/lib -lm `cat /u01/app/oracle/product/12.1.0/dbhome_1/lib/sysliblist` -ldl -lm -L/u01/app/oracle/product/12.1.0/dbhome_1/lib -lnsgr12 -lagtsh INFO: /usr/bin/ld: /u01/app/oracle/product/12.1.0/dbhome_1/lib//libagtsh.so: undefined reference to symbol 'nsdisc'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libclntsh.so: error adding symbols: DSO missing from command linecollect2: error: ld returned 1 exit status INFO: make: *** [/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/extproc] Error 1 INFO: End output from spawned process.INFO: ----------------------------------INFO: Exception thrown from action: makeException Name: MakefileExceptionException String: Error in invoking target 'utilities' of makefile '/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk'. See '/u01/app/oraInventory/logs/installActions2014-03-30_03-56-25PM.log' for details.Exception Severity: 1

For above error we need to do changes in 
$  gedit /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk
. Search forLinking external procedure agent and you will see following lines in the file.

$(EXTPROC): $(ALWAYS) $(EXTPROC_DEPS) $(SILENT)$(ECHO)

$(SILENT)$(ECHO) "Linking external procedure agent ($@)" $(RMF) $@

$(EXTPROC_LINKLINE)

Change it to as follows

$(EXTPROC): $(ALWAYS) $(EXTPROC_DEPS) $(SILENT)

$(ECHO) $(SILENT)$(ECHO) "Linking external procedure agent ($@)" $(RMF) $@

$(EXTPROC_LINKLINE) -lagtsh

Further we also need to do changes in
$    gedit  /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk
 
 file. Open the file with text editor and search for EXTPROC_LINKLINE and you will see following lines in the file.

EXTPROC_LINKLINE=$(LINK) $(OPT) $(EXTPMAI)

$(PROD_EXTPROC_OPT) \ $(HSALIB_SUBSET1) $(HSALIB_SUBSET2)


EXTPROC_LINKLINE=$(LINK) $(OPT) -Wl,--no-as-needed $(EXTPMAI)

 $(PROD_EXTPROC_OPT) \ $(HSALIB_SUBSET1) $(HSALIB_SUBSET2)

Click retry to go further.

This time I got error in install
ubuntu下安装oracle12c_第18张图片

In the logs for above error I have observed following line

INFO: - Linking tnslsnr INFO: rm -f tnslsnr INFO: /u01/app/oracle/product/12.1.0/dbhome_1/bin/orald -o tnslsnr -m64 -z noexecstack -Wl,--disable-new-dtags -L/u01/app/oracle/product/12.1.0/dbhome_1/network/lib/ -L/u01/app/oracle/product/12.1.0/dbhome_1/lib/ -L/u01/app/oracle/product/12.1.0/dbhome_1/lib/stubs/ /u01/app/oracle/product/12.1.0/dbhome_1/network/lib/s0nsgl.o /u01/app/oracle/product/12.1.0/dbhome_1/network/lib/snsglp.o -lclntsh -lclntshcore `cat /u01/app/oracle/product/12.1.0/dbhome_1/lib/ldflags` -lncrypt12 -lnsgr12 -lnzjs12 -ln12 -lnl12 -lnINFO: ro12 `cat /u01/app/oracle/product/12.1.0/dbhome_1/lib/ldflags` -lncrypt12 -lnsgr12 -lnzjs12 -ln12 -lnl12 -lnnz12 -lzt12 -lztkg12 -lztkg12 -lclient12 -lnnetd12 -lvsn12 -lcommon12 -lgeneric12 -lmm -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lxml12 -lcore12 -lunls12 -lsnls12 -lnls12 -lcore12 -lnls12 `cat /u01/app/oracle/product/12.1.0/dbhome_1/lib/ldflags` -lncrypt12 -lnsgr12 -lnzjs12 -ln12 -lnl12 -lnro12 `cat /u01/app/oracle/product/12.1.0/dbhome_1/lib/ldflags` -lncrypt12INFO: -lnsgr12 -lnzjs12 -ln12 -lnl12 -lclient12 -lnnetd12 -lvsn12 -lcommon12 -lgeneric12 -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lxml12 -lcore12 -lunls12 -lsnls12 -lnls12 -lcore12 -lnls12 -lclient12 -lnnetd12 -lvsn12 -lcommon12 -lgeneric12 -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lxml12 -lcore12 -lunls12 -lsnls12 -lnls12 -lcore12 -lnls12 `cat /u01/app/oracle/product/12.1.0/dbhome_1/lib/sysliblist` -Wl,-rpath,/u01/app/oracle/product/12.1.0/dbhome_1INFO: /lib -lm `cat /u01/app/oracle/product/12.1.0/dbhome_1/lib/sysliblist` -ldl -lm -L/u01/app/oracle/product/12.1.0/dbhome_1/lib -lons -lnl12 -ln12 -lnlsnr12 -lnlsnrc12 -lnsgr12 -lncm12 -lnro12 -ln12 -lnl12 -lnlsnr12 -lnlsnrc12 -lncm12 -ln12 -lm INFO: /usr/bin/ld: /u01/app/oracle/product/12.1.0/dbhome_1/lib//libclntsh.so: undefined reference to symbol 'ztcr2rnd'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libnnz12.so: error adding symbols: DSO missing from command linecollect2: error: ld returned 1 exit status INFO: make: *** [tnslsnr] Error 1 INFO: End output from spawned process.INFO: ----------------------------------INFO: Exception thrown from action: makeException Name: MakefileExceptionException String: Error in invoking target 'install' of makefile '/u01/app/oracle/product/12.1.0/dbhome_1/network/lib/ins_net_server.mk'. See '/u01/app/oraInventory/logs/installActions2014-03-30_03-56-25PM.log' for details.Exception Severity: 1

For above error we need to do changes in /u01/app/oracle/product/12.1.0/dbhome_1/network/lib/ins_net_server.mk.
First take the backup of the file using following command

cp -rip /u01/app/oracle/product/12.1.0/dbhome_1/network/lib/ins_net_server.mk /u01/app/oracle/product/12.1.0/dbhome_1/network/lib/ins_net_server.mk.orig

Open
  $   gedit /u01/app/oracle/product/12.1.0/dbhome_1/network/lib/ins_net_server.mk
 
 file and search for TNSLSNR and you will see following lines in the file.

tnslsnr: $(S0NSGL) $(SNSGLP) $(NSGLPNP) $(SILENT)$(ECHO) " - Linking

$(TNSLSNR)" $(RMF) $@ $(TNSLSNR_LINKLINE)

Change it to as follows

tnslsnr: $(S0NSGL) $(SNSGLP) $(NSGLPNP) $(SILENT)$(ECHO) " - Linking

 $(TNSLSNR)" $(RMF) $@ $(TNSLSNR_LINKLINE) -lnnz12 -lons

Click retry to go further.

This time I got error in irman_oracle
ubuntu下安装oracle12c_第19张图片
In the logs for above error I have observed following line

INFO: - Linking Oracle INFO: rm -f /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/oracle INFO: /u01/app/oracle/product/12.1.0/dbhome_1/bin/orald -o /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/oracle -m64 -z noexecstack -Wl,--disable-new-dtags -L/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ -L/u01/app/oracle/product/12.1.0/dbhome_1/lib/ -L/u01/app/oracle/product/12.1.0/dbhome_1/lib/stubs/ -Wl,-E /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/opimai.o /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ssoraed.o /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ttcsoi.o -Wl,--whole-archiINFO: ve -lperfsrv12 -Wl,--no-whole-archive /u01/app/oracle/product/12.1.0/dbhome_1/lib/nautab.o /u01/app/oracle/product/12.1.0/dbhome_1/lib/naeet.o /u01/app/oracle/product/12.1.0/dbhome_1/lib/naect.o /u01/app/oracle/product/12.1.0/dbhome_1/lib/naedhs.o /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/config.o -lserver12 -lodm12 -lcell12 -lnnet12 -lskgxp12 -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lxml12 -lcore12 -lunls12 -lsnls12 -lnls12 -lcore12 -lnls12 -lclient12 -lvsn12 -lcommoINFO: n12 -lgeneric12 -lknlopt `if /usr/bin/ar tv /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/libknlopt.a | grep xsyeolap.o > /dev/null 2>&1 ; then echo "-loraolap12" ; fi` -lskjcx12 -lslax12 -lpls12 -lrt -lplp12 -lserver12 -lclient12 -lvsn12 -lcommon12 -lgeneric12 `if [ -f /u01/app/oracle/product/12.1.0/dbhome_1/lib/libavserver12.a ] ; then echo "-lavserver12" ; else echo "-lavstub12"; fi` `if [ -f /u01/app/oracle/product/12.1.0/dbhome_1/lib/libavclient12.a ] ; then echo "-lavclient12" ; fi` -lknlopt -lsINFO: lax12 -lpls12 -lrt -lplp12 -ljavavm12 -lserver12 -lwwg `cat /u01/app/oracle/product/12.1.0/dbhome_1/lib/ldflags` -lncrypt12 -lnsgr12 -lnzjs12 -ln12 -lnl12 -lnro12 `cat /u01/app/oracle/product/12.1.0/dbhome_1/lib/ldflags` -lncrypt12 -lnsgr12 -lnzjs12 -ln12 -lnl12 -lnnzst12 -lzt12 -lztkg12 -lmm -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lxml12 -lcore12 -lunls12 -lsnls12 -lnls12 -lcore12 -lnls12 -lztkg12 `cat /u01/app/oracle/product/12.1.0/dbhome_1/lib/ldflags` -lncrypt1INFO: 2 -lnsgr12 -lnzjs12 -ln12 -lnl12 -lnro12 `cat /u01/app/oracle/product/12.1.0/dbhome_1/lib/ldflags` -lncrypt12 -lnsgr12 -lnzjs12 -ln12 -lnl12 -lnnzst12 -lzt12 -lztkg12 -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lxml12 -lcore12 -lunls12 -lsnls12 -lnls12 -lcore12 -lnls12 `if /usr/bin/ar tv /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/libknlopt.a | grep "kxmnsd.o" > /dev/null 2>&1 ; then echo " " ; else echo "-lordsdo12"; fi` -L/u01/app/oracle/product/12.1.0/dbhome_1/ctx/liINFO: b/ -lctxc12 -lctx12 -lzx12 -lgx12 -lctx12 -lzx12 -lgx12 -lordimt12 -lclsra12 -ldbcfg12 -lhasgen12 -lskgxn2 -lnnzst12 -lzt12 -lxml12 -locr12 -locrb12 -locrutl12 -lhasgen12 -lskgxn2 -lnnzst12 -lzt12 -lxml12 -lgeneric12 -loraz -llzopro -lorabz2 -lipp_z -lipp_bz2 -lippdcemerged -lippsemerged -lippdcmerged -lippsmerged -lippcore -lippcpemerged -lippcpmerged -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lxml12 -lcore12 -lunls12 -lsnls12 -lnls12 -lcore12 -lnls12 -lsnls12 -lunls12 -lsnINFO: ls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lcore12 -lsnls12 -lnls12 -lxml12 -lcore12 -lunls12 -lsnls12 -lnls12 -lcore12 -lnls12 -lasmclnt12 -lcommon12 -lcore12 -laio -lons `cat /u01/app/oracle/product/12.1.0/dbhome_1/lib/sysliblist` -Wl,-rpath,/u01/app/oracle/product/12.1.0/dbhome_1/lib -lm `cat /u01/app/oracle/product/12.1.0/dbhome_1/lib/sysliblist` -ldl -lm -L/u01/app/oracle/product/12.1.0/dbhome_1/lib INFO: /INFO: u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so: undefined reference to `kgfoCloseFile'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so: undefined reference to `kgfoShrinkFile'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so: undefined reference to `kgfoCommit2P'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so: undefined reference to `kgfoErrorMessage'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so: undefined reference to `kgfoGetSize'/u01/app/oracle/producINFO: t/12.1.0/dbhome_1/lib//libocrb12.so: undefined reference to `kgfoOpenDirty'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so: undefined reference to `kgfoIO'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so: undefined reference to `kgfoCreateCtxExt'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so: undefined reference to `kgfoCreate2P'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so: undefined reference to `kgfoCheckHdl'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libocINFO: rb12.so: undefined reference to `kgfoDestroyCtx'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so: undefined reference to `kgfoRenameFile'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so: undefined reference to `kgfoCreateFile'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so: undefined reference to `kgfoDeleteFile'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so: undefined reference to `kgfoFnameMax'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so: undefinedINFO: reference to `kgfoCheckMount'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so: undefined reference to `kgfoControl'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so: undefined reference to `kgfoOpenFile'/u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrutl12.so: undefined reference to `lfieno'collect2: error: ld returned 1 exit status INFO: make: *** [/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/oracle] Error 1 INFO: End output from spawned process.INFO: ----------------------------------INFO: Exception thrown from action: makeException Name: MakefileExceptionException String: Error in invoking target 'irman ioracle' of makefile '/u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/ins_rdbms.mk'. See '/u01/app/oraInventory/logs/installActions2014-03-30_03-56-25PM.log' for details.Exception Severity: 1

So I have run ldd against file /u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so

oracle@vidyadhar:~$ ldd /u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so 
linux-vdso.so.1 => (0x00007fff74de5000) 
libocrutl12.so => not found 
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fc4a3f95000) 
/lib64/ld-linux-x86-64.so.2 (0x00007fc4a4651000)

To resolve above we need to run following

sudo ln -s /u01/app/oracle/product/12.1.0/dbhome_1/lib/libocrutl12.so /usr/lib

Check the linking again

oracle@vidyadhar:~$ ldd /u01/app/oracle/product/12.1.0/dbhome_1/lib//libocrb12.so

 
 linux-vdso.so.1 => (0x00007fff27f8d000) 

libocrutl12.so => /usr/lib/libocrutl12.so (0x00007f248bac5000)

libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f248b6fd000) 

/lib64/ld-linux-x86-64.so.2 (0x00007f248bfc9000)

Further we need to do changes in
$ gedit /u01/app/oracle/product/12.1.0/dbhome_1/rdbms/lib/env_rdbms.mk
. Open the file and search for ORACLE_LINKLINE and you will see following lines in the file.

ORACLE_LINKLINE=$(ORACLE_LINKER) $(PL_FLAGS) $(ORAMAI)

$(SSORED) $(TTCSOI) \ $(ORACLE_KERNEL_LIBS) $(LINKLDLIBS)

Change it to as follows

ORACLE_LINKLINE=$(ORACLE_LINKER) -Wl,--no-as-needed 

$(PL_FLAGS) $(ORAMAI) $(SSORED) $(TTCSOI) \ $(ORACLE_KERNEL_LIBS) $(LINKLDLIBS)

Click retry to go further.

Hush atleast we have almost finished the linking issues.
ubuntu下安装oracle12c_第20张图片

Now as per the instructions run the following commands with root user:
ubuntu下安装oracle12c_第21张图片

/u01/app/oraInventory/orainstRoot.sh

ubuntu下安装oracle12c_第22张图片

/u01/app/oracle/product/12.1.0/dbhome_1/root.sh

ubuntu下安装oracle12c_第23张图片

Wait for some time.
ubuntu下安装oracle12c_第24张图片

Now setup will start the Database Configuration wizard.
ubuntu下安装oracle12c_第25张图片

Finally you will see following screens which confirms the successful installation. Remember the EM Database Express URL
ubuntu下安装oracle12c_第26张图片

This is the final screen which shows that installation is completed successfully.
ubuntu下安装oracle12c_第27张图片

Step 7 : Accessing the EM console of Oracle 12C database for Linux
As show earlier open a browser and type following URL in it

https://db_ip:5500/em

You will see following screen.
ubuntu下安装oracle12c_第28张图片
Now specify the user as sys and select as sysdba. Specify the password which we have entered during the installation process.
After inserting correct password you will see following screen.
ubuntu下安装oracle12c_第29张图片

Step 8 : Starting / stopping Oracle 12C database in Linux
First find the SID by reading /etc/oratab
Sample output is as follows

oracle@vidyadhar:/u01/app$ cat /etc/oratab
#
# This file is used by ORACLE utilities. It is created by root.sh
# and updated by either Database Configuration Assistant while creating
# a database or ASM Configuration Assistant while creating ASM instance. 
# A colon, ':', is used as the field terminator. A new line terminates
# the entry. Lines beginning with a pound sign, '#', are comments.
#
# Entries are of the form:# $ORACLE_SID:$ORACLE_HOME::
#
# The first and second fields are the system identifier and home
# directory of the database respectively. The third field indicates
# to the dbstart utility that the database should , "Y", or should not,
# "N", be brought up at system boot time.
#
# Multiple entries with the same 
$ORACLE_SID are not allowed.
#
#orcl:/u01/app/oracle/product/12.1.0/dbhome_1:N

In above orcl is SID

To start listener run following as oracle user

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1

export ORACLE_OWNR=oracle

export PATH=$PATH:$ORACLE_HOME/bin

export ORACLE_SID=orcl$ORACLE_HOME/bin/lsnrctl start

To start database run following

sqlplus /nolog

connect sys as sysdba

STARTUP;

EXIT;

To stop the database run following

sqlplus /nolog

connect sys as sysdba

SHUTDOWN;

EXIT;

To stop listener run following

$ORACLE_HOME/bin/lsnrctl stop

你可能感兴趣的:(ubuntu下安装oracle12c)