Ubuntu14.04安装Oracle12C

原文:http://www.techienote.com/2014/04/how-to-install-oracle-12c-enterprise-edition-database-ubuntu-13-10.html。ubuntu14.04 LTS同样适用

Following is the how to for installing Oracle Database 12C on Ubuntu 13.10
Note : I’m not running this installation on a production environment as Ubuntu 13.10 is not supported by Oracle. I needed to have a local database to play with on my local laptop.

If you want to install Oracle 11G R2 then check this How to Install Oracle 11G R2 Enterprise Edition Database Ubuntu 12.10 / 12.04

Step 1 : Hosts File
The “/etc/hosts” file must contain a fully qualified name for the server.

<IP-address>  <fully-qualified-machine-name>  <machine-name>

Sample file is as follows

Step 2 : Oracle Installation Prerequisites
Run following commands to install dependencies

sudo apt-get update

sudo apt-get dist-upgrade

Restart machine

sudo init 6

Again check if there is any update

sudo apt-get dist-upgrade

Run following to install dependencies

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

Step 3 : Create user and groups

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

The following steps must be performed to set the password for the “oracle” user.

sudo passwd oracle

Step 4 : Symbolic link, Kernel parameters and shell configuration as per the Oracle 12c Documentation
Make ourself as Red Hat by running following command

echo ‘Red Hat Linux release 6‘ | sudo tee -a  /etc/redhat-release

We need to create some soft links to start the installation. To do so run the following commands,

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/

To change the shell configuration for oracle user run following commands

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

Run following command to change the kernel parameters

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

Note: kernel.shmmax = max possible value, e.g. size of physical memory in bytes. In my case machine is having 2GB so we are specifying 1GB. Adjust the parameter as per your configuration

Load new kernel parameters, by running following,

sudo sysctl -p

We need to do changes in start-up script, run following commands as root

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

Step 5 : Download Oracle 12C database for Linux
Download Oracle 12C database from Oracle Download Center for Linux.
I have downloaded both the zip in /u01/binaries.
Login as an oracle user

We need to extract both the zip to start the installation. To unzip run,

unzip linuxamd64_12c_database_1of2.zip

unzip linuxamd64_12c_database_2of2.zip

You will see database folder after extracting the binaries

Step 6 : Installation of Oracle 12C database for Linux
Before doing the installation we need to give proper permission to the extracted file, to do the same run following command

chown -Rf oracle:dba /u01/binaries

Start installation using following command

/u01/binaries/database/runInstaller -ignoreSysPrereqs

Next we go though the installation, I have skipped Oracle Support Password provision as I don’t want to receive updates.

As the Ubuntu is not supported OS we need to we are seeing the below error, just click on Yes button to go ahead.

In Selection Installation Option choose Create and configure a databaseand click on Next to go further

In System Class screen select Server Class and click on Next to go further

In Grid Installation Option screen select Single instance database installation and click on Next to go further

In Select Install Type screen select Advanced install and click on Next to go further

In Select Product Language screen select appropriate language and and click on Next to go further

In Select Database Edition screen I am selecting Enterprise Edition due to space issue. Click Next to go further.

In Specify Installation Location screen, I kept it as default and click Next to go further

In Create Inventory screen, I kept it as default and click Next to go further

In Select Configuration Type screen, select General Purpose / Transaction Processing and click Next to proceed further.

In Specify Database Identifiers screen, let it be default and click Next to go further. Here we need to remember the Oracle system identifier (SID)

In Specify Configuration Options configure as below:
Under Memory select Enable Automatic Memory Management: TRUE
Under Character sets select Use Unicode (AL32UTF8)

Leave default settings under Specify Database Storage Options and clickNext to go further.

Leave default settings under Specify Management Options and click Next to go further.

Leave default settings under Specify Recovery Options and click Next to go further.

In Specify Schema Passwords screen I choose Use the same password for all accounts because of laziness. Click Next to go further.

Skip the warning by clicking Yes

Leave the default option under Privileged Operating System group and clickNext to go further.

Save the summary for future use and click Next to go further.

Oops we got links proc gen_pcscfg procob error

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 ‘[email protected]@GLIBC_2.3‘
/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2: error adding symbols: DSO missing from command line
collect2: 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 /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

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 line
collect2: 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: make
Exception Name: MakefileException
Exception 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.

[email protected]:~$ 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

[email protected]:~$ 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 /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) [email protected]
$(ORAPWD_LINKLINE)

Now change it to as follows

$(ORAPWD) : $(ALWAYS) $(ORAPWD_DEPS)
$(SILENT)$(ECHO)
$(SILENT)$(ECHO) " - Linking password utility (orapwd)"
$(RMF) [email protected]
$(ORAPWD_LINKLINE) -lnnz12

Click on retry to go further.

Again you will see error for all_no_orcl

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 line
collect2: 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: make
Exception Name: MakefileException
Exception 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

[email protected]:~$ 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

[email protected]:~$ 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 /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) [email protected]
        $(HSOTS_LINKLINE)

Change it to as follows

$(HSOTS) : $(ALWAYS) $(HSOTS_DEPS)
        $(SILENT)$(ECHO)
        $(SILENT)$(ECHO) " - Linking HS OTS agent"
        $(RMF) [email protected]
        $(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 /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

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 line
collect2: 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: make
Exception Name: MakefileException
Exception 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 /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

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 returned
INFO:  1 exit status
make: *** [/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: make
Exception Name: MakefileException
Exception 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 /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

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 status
make: *** [/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: make
Exception Name: MakefileException
Exception 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 /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

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 s
INFO: tatus
make: *** [/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: make
Exception Name: MakefileException
Exception 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 /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

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 line
collect2: 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: make
Exception Name: MakefileException
Exception 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 /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) [email protected]
        $(PLSHPROF_LINKLINE)

Change it to as follows

$(PLSHPROF) : $(ALWAYS) $(PLSHPROF_DEPS)
        $(SILENT)$(ECHO)
        $(SILENT)$(ECHO) " - Linking hierarchical profiler utility (plshprof)"
        $(RMF) [email protected]
        $(PLSHPROF_LINKLINE) -lons

Click retry to go further.

Again I got error for utilities

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 line
collect2: 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: make
Exception Name: MakefileException
Exception 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 /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) [email protected]
        $(TG4PWD_LINKLINE)

Change it to as follows

$(TG4PWD) : $(ALWAYS) $(TG4PWD_DEPS)
        $(SILENT)$(ECHO)
        $(SILENT)$(ECHO) " - Linking $(TG4DG4)pwd utility"
        $(RMF) [email protected]
        $(TG4PWD_LINKLINE) -lnnz12

Click retry to go further.

Again I got error for utilities

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/dbh
INFO: 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 line
collect2: 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: make
Exception Name: MakefileException
Exception 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 /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 ([email protected])"
        $(RMF) [email protected]
        $(EXTPROC_LINKLINE)

Change it to as follows

$(EXTPROC): $(ALWAYS) $(EXTPROC_DEPS)
        $(SILENT)$(ECHO)
        $(SILENT)$(ECHO) "Linking external procedure agent ([email protected])"
        $(RMF) [email protected]
        $(EXTPROC_LINKLINE) -lagtsh

Click retry to go further.

Again I got error for utilities

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/dbh
INFO: 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 line
collect2: 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: make
Exception Name: MakefileException
Exception 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 /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 ([email protected])"
        $(RMF) [email protected]
        $(EXTPROC_LINKLINE)

Change it to as follows

$(EXTPROC): $(ALWAYS) $(EXTPROC_DEPS)
        $(SILENT)$(ECHO)
        $(SILENT)$(ECHO) "Linking external procedure agent ([email protected])"
        $(RMF) [email protected]
        $(EXTPROC_LINKLINE) -lagtsh

Further we also need to do changes in /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

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 -ln
INFO: 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`    -lncrypt12
INFO: -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_1
INFO: /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 line
collect2: error: ld returned 1 exit status
 
INFO: make: *** [tnslsnr] Error 1
 
INFO: End output from spawned process.
INFO: ----------------------------------
INFO: Exception thrown from action: make
Exception Name: MakefileException
Exception 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 /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) [email protected]
        $(TNSLSNR_LINKLINE)

Change it to as follows

tnslsnr: $(S0NSGL) $(SNSGLP) $(NSGLPNP)
        $(SILENT)$(ECHO) " - Linking $(TNSLSNR)"
        $(RMF) [email protected]
        $(TNSLSNR_LINKLINE) -lnnz12 -lons

Click retry to go further.

This time I got error in irman_oracle

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-archi
INFO: 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 -lcommo
INFO: 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 -ls
INFO: 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`    -lncrypt1
INFO: 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/li
INFO: 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  -lsn
INFO: 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/produc
INFO: 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//liboc
INFO: 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: undefined
INFO: 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: make
Exception Name: MakefileException
Exception 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

[email protected]:~$ 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

[email protected]:~$ 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 /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.

Now as per the instructions run the following commands with root user:

/u01/app/oraInventory/orainstRoot.sh

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

Wait for some time.

Now setup will start the Database Configuration wizard.

Finally you will see following screens which confirms the successful installation. Remember the EM Database Express URL

This is the final screen which shows that installation is completed successfully.

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.

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.

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

[email protected]:/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:<N|Y>:
#
# 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

Hope this will help you.

时间: 2024-10-15 16:30:58

Ubuntu14.04安装Oracle12C的相关文章

ubuntu14.04安装oracle12c及错误解决方法

1.更换apt源 cp /etc/apt/sources.list /etc/apt/sources.list.bak vim /etc/apt/sources.list cat  /etc/apt/sources.list deb http://mirrors.163.com/ubuntu/ trusty main restricted universe multiverse deb http://mirrors.163.com/ubuntu/ trusty-security main res

ubuntu14.04安装vim

今天安装完ubuntu14.04后开始编辑文件,使用vim时提示: 使用apt-get install vim尝试安装: 装完系统后默认已经装了vim了,但是路径不对 解决方法: 1.找到vim在什么位置 #whereis vim 2.做链接 #ln -s /usr/bin/vim.tiny /usr/bin/vim 这时vim就可以正常使用了 ubuntu14.04安装vim,布布扣,bubuko.com

==原创==Ubuntu14.04安装OPENCV3.0流程及遇到的问题

Ubuntu14.04安装OPENCV3.0流程及遇到的问题 [email protected] http://www.cnblogs.com/mcjj 作者:马春杰杰 2017年6月14日22:38:23 我的电脑环境: Ubuntu14.04LTS + CUDA8.0 + CUDNN5.0 + Nvidia-367.44驱动 + OPENCV3.0-beta 我是按照这篇文章来的: Ubuntu14.04安装OpenCV3.0 - Linux系统教程 首先是刚开始的时候就遇到了错误,Unsu

一.ubuntu14.04安装、亮度设置、显卡设置等一体化讲解

一.ubuntu14.04安装 安装步骤很简单的,相信你只要知道并且决定安装ubuntu,你就不会在安装上有问题,下载网址 http://www.ithome.com/html/soft/81539.htm.下载iso后我使用u盘刻录的,刻录用的软件是ultro,这个不说. 二.安装上之后,屏幕亮度很亮,并且无法调节,而且风扇狂转,声音很大,这是由于ubuntu初始默认设置和显卡切换问题. 1.调节亮度 打开终端黑窗口,快捷启动ctrl+alt+t,另外装上ubuntu后需要设置root,因为安

Ubuntu14.04安装pycharm用于Python开发环境部署,并且支持pycharm使用中文输入

一.目标 实现在Linux下用pycharm调试工具/Python开发 Linux使用vi/vim工具写Python,缺点:调试不方便,无代码提示.跳转等诸多功能. Windows使用idle/pycharm/eclipse等,环境包安装麻烦.写好的代码往往也得迁移至Linux服务器环境. 解决办法:直接在Linux环境下安装pycharm编译器. 附:about pycharm PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调

Ubuntu14.04安装wineqq国际版

一开始,我在Ubuntu14.04下安装的QQ版本是WineQQ2013SP6-20140102-Longene, 但后来发现这个版本QQ在linux下问题很多,比如不能用键盘输入密码,QQ表情使用失灵, 有些不兼容等,最重要的是我发现它及其的占用CPU,令我很不爽(有图为证): 查看大图 于是我便用sudo dpkg --purge 命令卸载了它,这里我推荐使用wine-qqintl版本,也就是国际版. 国际版有以下好处: 1:支持密码键盘输入并记住密码. 2:可以发送QQ表情无问题. 3:传

Ubuntu14.04安装中文输入法以及解决Gedit中文乱码问题

1 设置中文显示环境 1. 打开System Settings 2. 打开Personal-> Language Support. 会弹出如下对话框,提示你“语言支持没安装完整”. 点击“Remind Me Later”. 3. 在“Language Support”中,点击“Install/Remove Languages”,在打开的窗口中,找到“Chinese(simplified)”并勾选上,点击“Apply Changes”. 4. 上面只是下载了语言包,还需要切换系统语言才能使之生效.

UBuntu14.04安装Qt5.3.1

1. Qt5.3.1下载地址为:http://qt-project.org/,选择”Qt 5.3.1 for Linux 32-bit”版本,文件名是”qt-opensource-linux-x86-5.3.1.run”: 2. 进入qt-opensource-linux-x86-5.3.1.run目录下,修改文件权限:chmod u+x qt-opensource-linux-x86-5.3.1.run: 3. 打开安装界面: ./qt-opensource-linux-x86-5.3.1.r

Ubuntu14.04安装mysql及过程中遇到的一点小问题

Ubuntu14.04出来有段时间了,前几天刚升级到这个版本,新鲜了一把.不过安装mysql时遇到了一点小问题,记录一下以备后用. 预备操作: 网上安装mysql的方法不少,大体有这么三种. 1. 从网上安装 sudo apt-get install mysql-server.装完已经自动配置好环境变量,可以直接使用mysql的命令. 2. 安装离线包,以mysql-5.0.45-linux-i686-icc-glibc23.tar.gz为例. 3. 二进制包安装:安装完成已经自动配置好环境变量