[proc][redhat7.3]에서 demo_proc.mk 에러에 대해서 문의드립니
글쓴이: shean0 / 작성시간: 월, 2003/10/20 - 5:53오후
지금 PROC를 깔았는데..
MAKE시에 에러가 나오네요..
이건 어떻게 해결해야할까요??
자료를 찿다보니
/precomp/admin/pcscfg.cfg 를 수정하라고 나오는데요.현재 제 환경은 아래와 같습니다.
작업내용을 적으면.
오라클 설치시 (redhat7.3 oracle8.1.7) gcc 버전을 낮추어야 한다고 해서요.
작업내용.-==============>
$ tar xfz i386-glibc-2.1-linux.tar.gz ./usr/i386..이 생겨서 cd usr 하고 mv i386.. /usr/ 로 옮겼습니다. $ cd /usr/bin $ mkdir backup $ mv gcc cc ld backup $ ln -s /usr/i386-glibc-2.1-linux/bin/i386-glibc21-linux-gcc gcc $ ln -s gcc cc $ ln -s /usr/i386-glibc-2.1-linux/bin/i386-glibc21-linux-ld ld $ cd /usr/lib $ mkdir backup $ mv libc.so libdl.so libm.so libpthread.so backup $ mv libc.a libdl.a libm.a libpthread.a backup <======== 이 상태이거든요. /usr/include/ stddef.h 가 없더군요.
그래서 찿아보았더니. $ORACLE_HOME/precomp/admin/pcscfg.cfg 에 다음부분 sys_include=($ORACLE_HOME/precomp/public,/usr/include,/usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include) include=($ORACLE_HOME/precomp/public) include=($ORACLE_HOME/rdbms/demo) include=($ORACLE_HOME/network/public) include=($ORACLE_HOME/precomp/lib) ltype=short <== LTYPE 맞죠 ? I인가요?? PARSE=FULL 이렇게 해 주었더니.. stddef.h를 찿지 못하는 에러는 넘어갔습니다.
문제제기]:중요한것인가요? 그런데.. 여기서 찿다보니 env_precomp.mk에서 "-laio"를 찿아서 지우라고 하는데.. 파일에서 /aio로 검색해 보아도 나오지 않거든요.
이후에 컴파일 하면..아래와 같이 나옵니다.
[oracle@mylinux proc]$ make -f demo_proc.mk sample1 make -f /data/oracle/products/8.1.7/precomp/demo/proc/demo_proc.mk OBJS=sample1.o EXE=sample1 buil d make[1]: 들어감 `/data/oracle/products/8.1.7/precomp/demo/proc' 디렉토 cc -o sample1 sample1.o -L/data/oracle/products/8.1.7/lib/ -lclntsh `cat /data/oracle/products/8 .1.7/lib/sysliblist` -ldl -lm sample1.o: In function `main': sample1.o(.text+0x67f): the `gets' function is dangerous and should not be used. /usr/i386-glibc-2.1-linux/i386-glibc21-linux/bin/ld: warning: libwtc8.so, needed by /data/oracle/p roducts/8.1.7/lib//libclntsh.so, not found (try using -rpath or -rpath-link) /data/oracle/products/8.1.7/lib//libclntsh.so: undefined reference to `wtcstu' /data/oracle/products/8.1.7/lib//libclntsh.so: undefined reference to `wtclkm' /data/oracle/products/8.1.7/lib//libclntsh.so: undefined reference to `wtcsrin' /data/oracle/products/8.1.7/lib//libclntsh.so: undefined reference to `wtcMerr' /data/oracle/products/8.1.7/lib//libclntsh.so: undefined reference to `wtcsrin0' /data/oracle/products/8.1.7/lib//libclntsh.so: undefined reference to `wtcsrfre' /data/oracle/products/8.1.7/lib//libclntsh.so: undefined reference to `wtcLerr' collect2: ld returned 1 exit status make[1]: *** [build] 오류 1 make[1]: 나감 `/data/oracle/products/8.1.7/precomp/demo/proc' 디렉토 make: *** [sample1] 오류 2 [oracle@mylinux proc]$
Forums:
후..어디에 원인이 있을까요??
의문점..
참고로.. 정보를 조회하였습니다.
make 시에
이렇게 // 이 경로에 생기는것에..원인이???언제나 즐프를 꿈꾸며~
[libclntsh.so] 에서 문제가 되는것 같은데요..
지금 찿아보니..
root에서
#vi /etc/ld.so.conf
$ORACLE_HOME/lib <==추가 :: ldconfig시 아무 에러없이 넘어감.
/data/oracle/products/8.1.7 <==으로 추가하니..에러 나오구요.
#echo $ORACLE_HOME
/data/oracle/products/8.1.7
#ldconfig
이헐게 하여도..같은 에러네요..
찿아보니..
/data/oracle/products/8.1.7/lib/libclntsh.so -> libclntsh.so.8.0
libclntsh.so.8.0
이렇게 존재합니다.
그리고 이전에 LD_LIBRARY_PATH 에 포함시켜 놓았는데..왜 뜨는것인지
이해가 안되네요..
언제나 즐프를 꿈꾸며~
참조.[code:1][root@mylinux root	
참조.
oracle sean .bash_profile
etc/profile
vi /etc/ld.so.conf
oracle pcscfg.cfg
그리고 gcc cc ld 그리고, *.so 들을 원복했다.
이후..
make -f demo_proc.mk sample1 으로 하면 된다... 힘들다..ㅜㅇ
언제나 즐프를 꿈꾸며~
다른 분을 위해서... 이렇게 하시면 되구요...
정리해야하는데..
위의 profile에 오타가 있습니다.
SOLALS_SID 인가..음.. SID부분에 오타 있는것 유념하시구.
pcscfg바꾸고.
gcc ld cc 원복, *.so 원복 하면 다 됩다...
저처럼 고생하지 마시기를 ^^*
1. binutils
[root@kornet UTIL]# rpm -Uvh binutils-2.11.93.0.2-11.i386.rpm
준비 중... ########################################### [100%]
binutils-2.11.93.0.2-11 패키지는 이미 설치되어 있습니다
2 . jre , java
[root@kornet UTIL]# mv jdk118_v3 /usr/local/
[root@kornet UTIL]# mv jre118_v3 /usr/local/
[root@kornet UTIL]# cd /usr/local/
[root@kornet local]# ls
bin etc include jre118_v3 libexec sbin src
doc games jdk118_v3 lib proftpd share
[root@kornet local]# ln -s jre118_v3/ /usr/local/jre
[root@kornet local]# ln -s jdk118_v3/ /usr/local/java
3 . tar xvfz i386-glibc-2.1-linux.tar.gz
./usr 이 생긴다 .
[root@kornet UTIL]# cd usr
[root@kornet usr]# ls
i386-glibc-2.1-linux
[root@kornet usr]# mv i386-glibc-2.1-linux/ /usr/
[root@kornet usr]#
4.
[root@kornet bin]# rmdir saved
[root@kornet bin]# mkdir backup
[root@kornet bin]# mv gcc cc ld backup
[root@kornet bin]# cd /usr/i386-glibc-2.1-linux/bin/
[root@kornet bin]# ls
i386-glibc21-linux-addr2line i386-glibc21-linux-gcc i386-glibc21-linux-ranlib
i386-glibc21-linux-ar i386-glibc21-linux-ld i386-glibc21-linux-readelf
i386-glibc21-linux-as i386-glibc21-linux-nm i386-glibc21-linux-size
i386-glibc21-linux-c++filt i386-glibc21-linux-objcopy i386-glibc21-linux-strings
i386-glibc21-linux-gasp i386-glibc21-linux-objdump i386-glibc21-linux-strip
[root@kornet bin]# ln -s /usr/i386-glibc-2.1-linux/bin/i386-glibc21-linux-gcc gcc
[root@kornet bin]# ln -s gcc cc
[root@kornet bin]# ln -s /usr/i386-glibc-2.1-linux/bin/i386-glibc21-linux-ld ld
[root@kornet bin]# cd /usr/lib
[root@kornet lib]# mkdir backup
[root@kornet lib]# mv libc.so libdl.so libm.so libpthread.so backup/
[root@kornet lib]# mv libc.a libdl.a libm.a libpthread.a backup/
[root@kornet lib]# cd backup/
[root@kornet backup]# ls
libc.a libc.so libdl.a libdl.so libm.a libm.so libpthread.a libpthread.so
참조 : 오라클 설치 후 복귀방법
cd /usr/lib
mv ./backup/* .
cd /usr/bin
mv ./backup/* .
==========================================
[root@kornet backup]# df -k
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda2 4032124 99132 3728164 3% /
/dev/hda1 139986 8651 124108 7% /boot
/dev/hda5 24849948 32828 23554816 1% /data
/dev/hda3 25197252 1202420 22714856 6% /home
/dev/hda8 6048320 32828 5708252 1% /opt
none 257184 0 257184 0% /dev/shm
/dev/hda7 8064272 2115964 5538656 28% /usr
/dev/hda6 8064272 73796 7580824 1% /var
[root@kornet backup]# groupadd -g 5000 dba
[root@kornet backup]# useradd oracle -g dba -d /data/oracle
passwd oracle : nemotel
vi /etc/group
dba:x:5000:oracle,root 로 수정한다.
root ==> /etc/profile 에 추가 한다 .
# for oracle sean 1017
export JAVA_HOME=/usr/local/jdva
export LD_ASSUME_KERNEL=2.2.5
# 이부분은 오라클 runInstaller 실행 이 가능하도록 커널의 버전을 호환시 켜주는
# 분입니다.
export display=localhost:0.0
export USERNAME BASH_ENV PATH
export ORACLE_OWNER=oracle;export ORACLE_OWNER
export ORACLE_BASE=/data/oracle
export ORACLE_HOME=$ORACLE_BASE/product/8.1.7
export ORALCE_SID=ORCL
export ORACLE_TERM=vt100
export TNS_ADMIN=$ORACLE_HOME/network/admin
export NLS_LANG=AMERICAN_AMERICA.KO16KSC5601
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
export
PATH=$PATH:$ORACLE_HOME/bin:usr/local/jre/bin:$ORACLE_HOME:/usr/local/:usr/local/jdk/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/jdbc/lib
export
CLASSPATH=/usr/local/jre/bin:$ORACLE_HOME/jlib:$ORACLE_HOME/product/jlib:/usr/local/jre:/usr/local/jre/bin:/usr/local/jdk/lib:/usr/local/java/bin
umask 022
export TMPDIR=$ORACEL_BASE/tmp
echo "/etc/profile working "
#for oracle <==
[root@kornet backup]# mkdir /data/oracle/tmp
[root@kornet backup]# chown -R oracle.dba /usr/local/jre
[root@kornet backup]# chown -R oracle.dba /data/oracle
[root@kornet backup]# chmod -R 755 /data/oracle
[root@kornet nadmin]# pwd
/home/nadmin
[root@kornet nadmin]# chmod -R 777 UTIL
su - oracle
vi .bash_profile 에 추가
#for oracle
unset USERNAME
export display=localhost:0.0
export USERNAME BASH_ENV PATH
export ORACLE_OWNER=oracle; export ORACLE_OWNER
export ORACLE_BASE=/data/oracle
export ORACLE_HOME=$ORACLE_BASE/product/8.1.7
export ORALCE_SID=ORCL
export ORACLE_TERM=vt100
export TNS_ADMIN=$ORACLE_HOME/network/admin
export NLS_LANG=AMERICAN_AMERICA.KO16KSC5601
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
export
PATH=$PATH:$ORACLE_HOME/bin:usr/local/jre/bin:$ORACLE_HOME:/usr/local/:/usr/local/jdk/bini:i/usr/local/java:/usr/local/java/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/jdbc/lib
export
CLASSPATH=/usr/local/jre/bin:$ORACLE_HOME/jlib:$ORACLE_HOME/product/jlib:/usr/local/jre:/usr/local/jre/bin:/usr/local/jdk/lib:/usr/local/java:/usr/local/java/lib
umask 022
echo "/oracle .bash_profileworking "
#for oracle
[oracle@kornet oracle]$ source .bash_profile
/oracle .bash_profileworking
[root@kornet home]# chmod -R 777 nadmin
/install/praparm.ini
==> jre_localtion =/usr/local/jre <==
[oracle@kornet oracle]$ cd /home/nadmin/UTIL
[oracle@kornet UTIL]$ ls
Disk1
[oracle@kornet UTIL]$ cd Disk1
[oracle@kornet Disk1]$ ls
doc index.htm install patch response runInstaller stage
[oracle@kornet Disk1]$ ./runInstaller
언제나 즐프를 꿈꾸며~
댓글 달기