[질문] mysql 4.0.24 버전 srpm 컴파일에서 ..
한컴리눅스3.1서버 에서 안녕리눅스 용 mysql 4.0.24 srpm 을 가져와서
컴파일 하다가 아래와 같은 에러가 납니다.
..
원인을 모르겠습니다.
..
고수님들의 조언 부탁드립니다.
============================================
Making all in aout
make[3]: 들어감 `/usr/src/hancom/BUILD/mysql-4.0.24/pstack/aout' 디렉토리
make[3]: Nothing to be done for `all'.
make[3]: 나감 `/usr/src/hancom/BUILD/mysql-4.0.24/pstack/aout' 디렉토리
make[3]: 들어감 `/usr/src/hancom/BUILD/mysql-4.0.24/pstack' 디렉토리
make[3]: Nothing to be done for `all-am'.
make[3]: 나감 `/usr/src/hancom/BUILD/mysql-4.0.24/pstack' 디렉토리
make[2]: 나감 `/usr/src/hancom/BUILD/mysql-4.0.24/pstack' 디렉토리
Making all in libmysql_r
make[2]: 들어감 `/usr/src/hancom/BUILD/mysql-4.0.24/libmysql_r' 디렉토리
if /bin/sh ../libtool --preserve-dup-deps --mode=compile gcc -DDEFAULT_CHARSET_HOME="\"/\"" -DDATADIR="\"/var/lib/mysql\"" -DSHAREDIR="\"/usr/share/mysql\"" -DDONT_USE_RAID -DMYSQL_CLIENT -I. -I. -I.. -I./../include -I../include -I./.. -I.. -I.. -O3 -DDBUG_OFF -O2 -march=i386 -MT libmysql.lo -MD -MP -MF ".deps/libmysql.Tpo" -c -o libmysql.lo libmysql.c; \
then mv -f ".deps/libmysql.Tpo" ".deps/libmysql.Plo"; else rm -f ".deps/libmysql.Tpo"; exit 1; fi
mkdir .libs
gcc -DDEFAULT_CHARSET_HOME=\"/\" -DDATADIR=\"/var/lib/mysql\" -DSHAREDIR=\"/usr/share/mysql\" -DDONT_USE_RAID -DMYSQL_CLIENT -I. -I. -I.. -I./../include -I../include -I./.. -I.. -I.. -O3 -DDBUG_OFF -O2 -march=i386 -MT libmysql.lo -MD -MP -MF .deps/libmysql.Tpo -c libmysql.c -fPIC -DPIC -o .libs/libmysql.o
libmysql.c: In function `mysql_real_connect':
libmysql.c:1863: warning: passing arg 5 of `gethostbyname_r' from incompatible pointer type
libmysql.c:1863: too few arguments to function `gethostbyname_r'
libmysql.c:1863: warning: assignment makes pointer from integer without a cast
make[2]: *** [libmysql.lo] 오류 1
make[2]: 나감 `/usr/src/hancom/BUILD/mysql-4.0.24/libmysql_r' 디렉토리
make[1]: *** [all-recursive] 오류 1
make[1]: 나감 `/usr/src/hancom/BUILD/mysql-4.0.24' 디렉토리
make: *** [all] 오류 2
오류: /var/tmp/rpm-tmp.31320의 잘못된 종료 상황 (%build)
RPM 제작 오류:
/var/tmp/rpm-tmp.31320의 잘못된 종료 상황 (%build)
[root@testing rpms]#
Re: [질문] mysql 4.0.24 버전 srpm 컴파일에서 ..
1.추축할 수 있는건 그 mysql리 안녕리녹스에 맞게 패티나 옵셔니 주어진 경우입니다.
http://www.mysql.com/
서 최신 소스 받아다간
그냥 ./configure
make해봇세여
즐린
이런..
문제 원인은..
g++ 컴파일러가 없었다는 것..
gcc-g++ 패키지를 설치하니 넘어가는군요..
..
C 만으로 된게 아니었군요.
=== 건달의 경지를 꿈꾸며 ===
또 다른 에러가 나면서 종료됩니다. 이건 또 왜 그런지..
위의 에러는 해결했는데 또 아래와 같은 에러가 납니다.
==========================================================
if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I./../include -I../include -O3
-DDBUG_OFF -O2 -march=i386 -MT sort.o -MD -MP -MF ".deps/sort.Tpo" \
-c -o sort.o `test -f 'sort.c' || echo './'`sort.c; \
then mv -f ".deps/sort.Tpo" ".deps/sort.Po"; \
else rm -f ".deps/sort.Tpo"; exit 1; \
fi
/bin/sh ../libtool --preserve-dup-deps --mode=link gcc -O3 -DDBUG_OFF -O2
-march=i386 -rdynamic -o isamchk isamchk.o sort.o -all-static
libnisam.a ../mysys/libmysys.a ../dbug/libdbug.a ../strings/libmystrings.a
-lpthread -lz -lcrypt -lnsl -lm -lpthread
mkdir .libs
gcc -O3 -DDBUG_OFF -O2 -march=i386 -rdynamic -o isamchk isamchk.o sort.o
-static libnisam.a ../mysys/libmysys.a ../dbug/libdbug.a
../strings/libmystrings.a -lpthread -lz -lcrypt -lnsl -lm -lpthread
../mysys/libmysys.a(my_tempnam.o)(.text+0x3f): In function `my_tempnam':
: the use of `tempnam' is dangerous, better use `mkstemp'
../mysys/libmysys.a(raid.o)(.text+0x6d): In function `my_raid_create':
: undefined reference to `operator new(unsigned)'
../mysys/libmysys.a(raid.o)(.text+0xd9): In function `my_raid_create':
: undefined reference to `operator delete(void*)'
../mysys/libmysys.a(raid.o)(.text+0x115): In function `my_raid_open':
: undefined reference to `operator new(unsigned)'
../mysys/libmysys.a(raid.o)(.text+0x17d): In function `my_raid_open':
: undefined reference to `operator delete(void*)'
../mysys/libmysys.a(raid.o)(.text+0x5d6): In function `my_raid_close':
: undefined reference to `operator delete(void*)'
collect2: ld returned 1 exit status
make[2]: *** [isamchk] 오류 1
make[2]: 나감 `/usr/src/hancom/BUILD/mysql-4.0.24/isam' 디렉토리
make[1]: *** [all-recursive] 오류 1
make[1]: 나감 `/usr/src/hancom/BUILD/mysql-4.0.24' 디렉토리
make: *** [all] 오류 2
오류: /var/tmp/rpm-tmp.18383의 잘못된 종료 상황 (%build)
RPM 제작 오류:
/var/tmp/rpm-tmp.18383의 잘못된 종료 상황 (%build)
=== 건달의 경지를 꿈꾸며 ===
또 자답..
또 자답입니다.
config.log 에 보니
..
/usr/include/asm/atomic.h 라는 파일이 문제더군요.
한컴3.1에 있는 glibc-kernheader 라는 패키지에 있는건데
좀 엉성하게 패키징한 모양..
..
그래서 해당 버전의 전체 커널 소스를 다운 받아서 거기있는
atomic.h 를 덮어쓴 후 다시 컴파일 하니
위 부분 이상 없습니다.
..
참 힘들다..
..
그리고 한가지 또 질문..
기존의 4.0.15a 에서 4.0.24 로 rpm 을 그냥 -Uvh 로
업그레이 하면 끝인지..
아니면 별도 작업이 필요한지 경험있으신분들의
조언 부탁드립니다.
=== 건달의 경지를 꿈꾸며 ===
댓글 달기