리눅스 OS 페도라 10 버전을 설치 한 후에 APM설치 하기전 zlib 을 설치 하기 위해 소스 파일 압축을 해지 하고 ./configure 를 했더니 No. 라는 메시지만 잔떡 나타난다.
이후 make 명령을 실행하면 다음과 같은 메시지가 나타난다.
make: cc: 명령을 찾지 못했음
페도라 5 또는 9 버전을 설치시엔 없었는 증상인데 아마도 설치시에 용량을 줄이기 위해 개발 패키지 체크를 모두 껐던게 문제였던것 같다.
어쨌거나 해결방법은 초간단.
yum 을 이용해 간단히 설치할 수 있다.
yum install gcc
자! 그럼, 두말하면 잔소리 에러난 증상과 설치 하는 과정을 쭈욱 보도록 합시다.
1. zlib 설치시 gcc 오류 발생
[root@ ]# tar xvfj zlib-1.2.3.tar.bz2
[root@ ]# cd zlib-1.2.3
[root@ zlib-1.2.3]# ./configure && make && make install
Checking for gcc...
Building static library libz.a version 1.2.3 with cc.
Checking for unistd.h... No.
Checking whether to use vs[n]printf() or s[n]printf()... using s[n]printf()
Checking for snprintf() in stdio.h... No.
WARNING: snprintf() not found, falling back to sprintf(). zlib
can build but will be open to possible buffer-overflow security
vulnerabilities.
Checking for return value of sprintf()... No.
WARNING: apparently sprintf() does not return a value. zlib
can build but will be open to possible string-format security
vulnerabilities.
Checking for errno.h... No.
Checking for mmap support... No.
cc -O -DNO_snprintf -DHAS_sprintf_void -DNO_ERRNO_H -c -o example.o example.c
make: cc: 명령을 찾지 못했음
make: *** [example.o] 오류 127
2. yum 으로 gcc 설치
[root@ zlib-1.2.3]# yum install gcc
Loaded plugins: refresh-packagekit
Setting up Install Process
Resolving Dependencies
There are unfinished transactions remaining. You might consider running yum-complete-transaction first to finish them.
--> Running transaction check
---> Package gcc.i386 0:4.3.2-7 set to be updated
--> Processing Dependency: glibc-devel >= 2.2.90-12 for package: gcc-4.3.2-7.i386
--> Running transaction check
---> Package glibc-devel.i386 0:2.9-3 set to be updated
--> Processing Dependency: glibc-headers = 2.9-3 for package: glibc-devel-2.9-3.i386
--> Running transaction check
---> Package glibc-headers.i386 0:2.9-3 set to be updated
--> Processing Dependency: kernel-headers >= 2.2.1 for package: glibc-headers-2.9-3.i386
--> Processing Dependency: kernel-headers for package: glibc-headers-2.9-3.i386
--> Running transaction check
---> Package kernel-headers.i386 0:2.6.27.25-170.2.72.fc10 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
==============================================================================================================================
Package Arch Version Repository Size
==============================================================================================================================
Installing:
gcc i386 4.3.2-7 fedora 8.2 M
Installing for dependencies:
glibc-devel i386 2.9-3 updates 2.1 M
glibc-headers i386 2.9-3 updates 616 k
kernel-headers i386 2.6.27.25-170.2.72.fc10 updates 766 k
Transaction Summary
==============================================================================================================================
Install 4 Package(s)
Update 0 Package(s)
Remove 0 Package(s)
Total download size: 12 M
Is this ok [y/N]: y
Downloading Packages:
(1/4): gcc-4.3.2-7.i386.rpm | 8.2 MB 00:08
(2/4): glibc-devel-2.9-3.i386.rpm | 2.1 MB 00:01
(3/4): glibc-headers-2.9-3.i386.rpm | 616 kB 00:00
(4/4): kernel-headers-2.6.27.25-170.2.72.fc10.i386.rpm | 766 kB 00:00
------------------------------------------------------------------------------------------------------------------------------
Total 1.0 MB/s | 12 MB 00:11
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : kernel-headers-2.6.27.25-170.2.72.fc10.i386 1/4
Installing : glibc-headers-2.9-3.i386 2/4
Installing : glibc-devel-2.9-3.i386 3/4
Installing : gcc-4.3.2-7.i386 4/4
Installed:
gcc.i386 0:4.3.2-7
Dependency Installed:
glibc-devel.i386 0:2.9-3 glibc-headers.i386 0:2.9-3 kernel-headers.i386 0:2.6.27.25-170.2.72.fc10
Complete!
3. gcc 설치 끝 다시 zlib configure 실행
[root@ zlib-1.2.3]# ./configure
Checking for gcc...
Building static library libz.a version 1.2.3 with gcc.
Checking for unistd.h... Yes.
Checking whether to use vs[n]printf() or s[n]printf()... using vs[n]printf()
Checking for vsnprintf() in stdio.h... Yes.
Checking for return value of vsnprintf()... Yes.
Checking for errno.h... Yes.
Checking for mmap support... Yes.
4. configure 결과 모두 Yes. make 역시 gcc로 잘 설치 되는군요
[root@ zlib-1.2.3]# make
gcc -O3 -DUSE_MMAP -c -o example.o example.c
gcc -O3 -DUSE_MMAP -c -o adler32.o adler32.c
gcc -O3 -DUSE_MMAP -c -o compress.o compress.c
gcc -O3 -DUSE_MMAP -c -o crc32.o crc32.c
gcc -O3 -DUSE_MMAP -c -o gzio.o gzio.c
gcc -O3 -DUSE_MMAP -c -o uncompr.o uncompr.c
gcc -O3 -DUSE_MMAP -c -o deflate.o deflate.c
gcc -O3 -DUSE_MMAP -c -o trees.o trees.c
gcc -O3 -DUSE_MMAP -c -o zutil.o zutil.c
gcc -O3 -DUSE_MMAP -c -o inflate.o inflate.c
gcc -O3 -DUSE_MMAP -c -o infback.o infback.c
gcc -O3 -DUSE_MMAP -c -o inftrees.o inftrees.c
gcc -O3 -DUSE_MMAP -c -o inffast.o inffast.c
ar rc libz.a adler32.o compress.o crc32.o gzio.o uncompr.o deflate.o trees.o zutil.o inflate.o infback.o inftrees.o inffast.o
gcc -O3 -DUSE_MMAP -o example example.o -L. libz.a
gcc -O3 -DUSE_MMAP -c -o minigzip.o minigzip.c
gcc -O3 -DUSE_MMAP -o minigzip minigzip.o -L. libz.a
5. 마지막으로 make install 완료
[root@ zlib-1.2.3]# make install
cp zlib.h zconf.h /usr/local/include
chmod 644 /usr/local/include/zlib.h /usr/local/include/zconf.h
cp libz.a /usr/local/lib
cd /usr/local/lib; chmod 755 libz.a
cd /usr/local/lib; if test -f libz.so.1.2.3; then \
rm -f libz.so libz.so.1; \
ln -s libz.so.1.2.3 libz.so; \
ln -s libz.so.1.2.3 libz.so.1; \
(ldconfig || true) >/dev/null 2>&1; \
fi
cp zlib.3 /usr/local/share/man/man3
chmod 644 /usr/local/share/man/man3/zlib.3
* 리눅스를 다룬지 8년 정도 되었지만 가끔씩 얘기치 않은 오류가 생기면 잠시 당황스럽더군요.
하지만 차근차근 원인을 찾아 보면 간단한 문제 인데 ^^;
여튼 동일 오류로 고민하는 분들이 생기면 저의 글을 보고서 손쉽게 해결 하시라고 이렇듯 작성했으니 만이 도움이 되시길 바랍니다.
* 본 게시글은 CCL에 따릅니다.
'서버,보안' 카테고리의 다른 글
SUN VirtualBox 버츄얼박스 가상 머신 (VM ware, Virtual PC) (0) | 2009.08.14 |
---|---|
PHP 설치시 생길수 있는 오류 해결 방법 (0) | 2009.08.14 |
MySQL 설치시 생기는 오류 (0) | 2009.08.14 |
웹방화벽 TuTELA T-2010 (0) | 2009.07.24 |
리눅스 백업 쉘 스크립트 (0) | 2009.06.10 |
리눅스 tail 명령어 (0) | 2009.06.10 |
리눅스 error 로그 확인하기 (0) | 2009.06.10 |
PHP 4.3.9에서 세션 에러 문제 (0) | 2009.06.10 |