Tuesday, July 01, 2014

Ubuntu 14.04 and Oracle 12c

I followed this as much as possible although the way he documents it is a bit cumbersome, although it's OK if you want to find out exactly why he's done things.

Additional packages:
apt-get install lib32z1-dev libc6-dev-i386 elfutils libaio1 libaio-dev libstdc++6-4.4-dev numactl pdksh sysstat unixODBC-dev unixODBC build-essential libaio1 gawk ksh libmotif3 alien libtool

Instead of pages long doc, here's a quick diff between the files modified:

diff ins_net_server.mk  $ORACLE_HOME/network/lib/ins_net_server.mk
29c29
<       $(TNSLSNR_LINKLINE)
---
>       $(TNSLSNR_LINKLINE) -lnnz12 -lons


diff ins_rdbms.mk $ORACLE_HOME/rdbms/lib/ins_rdbms.mk
865c865
<       $(ORAPWD_LINKLINE)
---
>       $(ORAPWD_LINKLINE) -lnnz12
883c883
<       $(PLSHPROF_LINKLINE)
---
>       $(PLSHPROF_LINKLINE) -lons
901c901
<       $(RMAN_LINKLINE)
---
>       $(RMAN_LINKLINE) -lons
914c914
<       $(EXTPROC_LINKLINE)
---
>       $(EXTPROC_LINKLINE) -lagtsh
941c941
<       $(HSOTS_LINKLINE)
---
>       $(HSOTS_LINKLINE) -lagtsh
1067c1067
<       $(TG4PWD_LINKLINE)
---
>       $(TG4PWD_LINKLINE) -lnnz12



diff env_rdbms.mk $ORACLE_HOME/rdbms/lib/env_rdbms.mk
2922c2922
< ORACLE_LINKLINE=$(ORACLE_LINKER) $(PL_FLAGS) $(ORAMAI) $(SSORED) $(TTCSOI) \
---
> ORACLE_LINKLINE=$(ORACLE_LINKER) -Wl,--no-as-needed $(PL_FLAGS) $(ORAMAI) $(SSORED) $(TTCSOI) \
2943c2943
< DBV_LINKLINE=$(LINK) $(OPT) $(DBVMAI) $(SSDBED) $(LLIBDBTOOLS) \
---
> DBV_LINKLINE=$(LINK) $(OPT)  -Wl,--no-as-needed $(DBVMAI) $(SSDBED) $(LLIBDBTOOLS) \
2987c2987
<       $(LLIBSLAX) $(LLIBPLSQL) $(LIBPLCN) $(LINKTTLIBS)
---
>       $(LLIBSLAX) $(LLIBPLSQL) $(LIBPLCN) $(LINKTTLIBS) -lons
2994c2994
< EXTPROC_LINKLINE=$(LINK) $(OPT) $(EXTPMAI) $(PROD_EXTPROC_OPT) \
---
> EXTPROC_LINKLINE=$(LINK) $(OPT) -Wl,--no-as-needed $(EXTPMAI) $(PROD_EXTPROC_OPT) \
3001c3001
< HSDEPXA_LINKLINE=$(LINK) $(OPT) $(HSDEPMAI) $(HSALIB_SUBSET1) \
---
> HSDEPXA_LINKLINE=$(LINK) $(OPT)  -Wl,--no-as-needed $(HSDEPMAI) $(HSALIB_SUBSET1) \
3004c3004
< HSOTS_LINKLINE=$(LINK) $(OPT) $(HSOTSMAI) $(HSALIB_SUBSET1) \
---
> HSOTS_LINKLINE=$(LINK) $(OPT) -Wl,--no-as-needed  $(HSOTSMAI) $(HSALIB_SUBSET1) \
3071c3071
< KFED_LINKLINE=$(LINK) $(S0MAIN) $(SSKFEDED) $(SKFEDPT)  \
---
> KFED_LINKLINE=$(LINK) -Wl,--no-as-needed $(S0MAIN) $(SSKFEDED) $(SKFEDPT)  \
3075c3075
< KFOD_LINKLINE=$(LINK) $(S0MAIN) $(SSKFODED) $(SKFODPT) $(KFODOBJ) \
---
> KFOD_LINKLINE=$(LINK) $(S0MAIN) -Wl,--no-as-needed $(SSKFODED) $(SKFODPT) $(KFODOBJ) \
3084c3084
< AMDU_LINKLINE=$(LINK) $(S0MAIN) $(SSKFMUED) $(SKFMUPT) \
---
> AMDU_LINKLINE=$(LINK) $(S0MAIN) -Wl,--no-as-needed $(SSKFMUED) $(SKFMUPT) \


And here's the symlinked files for my case, I didn't have to do all of the symlinks he had done. Weird.
root@fubar:/usr/lib64# ls -la
total 8
drwxr-xr-x  2 root root 4096 Jul  1 16:02 .
drwxr-xr-x 13 root root 4096 Jul  1 15:41 ..
lrwxrwxrwx  1 root root   42 Jun 30 16:46 libc_nonshared.a -> /usr/lib/x86_64-linux-gnu/libc_nonshared.a
lrwxrwxrwx  1 root root   48 Jun 30 16:43 libpthread_nonshared.a -> /usr/lib/x86_64-linux-gnu/libpthread_nonshared.a


oracle@hakan-work:~$ ls -la /bin/awk
lrwxrwxrwx 1 root root 12 Jul  1 10:45 /bin/awk -> /usr/bin/awk


No comments: