티스토리 뷰
APM = Apache + PHP + Mysql
Apache → 사용자들에게 웹페이지를 보여주기 위해 사용하는 웹서버.
PHP → Personal Hypertext Preprosessor, 동적 웹페이지를 만들기 위한 프로그래밍 언어
Mysql → 자료 저장을 위한 데이터베이스 시스템(DBMS : DataBase Management System)
※ 설치 환경은 CentOS 5.7(Final)임.
APM 설치 준비
1. Apache, PHP, Mysql을 다운로드
- httpd-2.4.1.tar.gz (http://www.apache.org)
- php-5.3.10.tar.gz (http://www.php.net)
- mysql-5.5.20.tar.gz (http://www.mysql.com)
- ZendOptimizer-3.3.9-linux-glibc23-i386.tar.gz (http://www.zend.com)
2. APM 운용을 위해 필요한 소프트웨어 다운로드
- zlib-1.2.6.tar.gz (http://www.zlib.org)
- libpng-1.5.9.tar.gz (http://www.libpng.org)
- freetype-2.4.8.tar.gz (http://www.freetype.org)
- jpegsrc.v8d.tar.gz (http://www.ijg.org)
- fontconfig-2.8.0.tar.gz (http://www.freedesktop.org/software/fontconfig/release/)
- gd-2.0.35.tar.gz
- libxml2-2.7.8.tar.gz (http://xmlsoft.org)
- perl-5.14.2.tar.gz(http://www.perl.org)
- net-snmp-5.7.1.tar.gz (http://www.net-snmp.org/)
- libmcrypt or mcrypt (http://sourceforge.net/projects/mcrypt/)
3. 소프트웨어에 대한 RPM 삭제
zlib 설치
웹페이지에서 압축파일을 읽고 쓰기 위해 필요한 라이브러리
[root@localhost download]# tar zxvf zlib-1.2.6.tar.gz
zlib-1.2.6/
zlib-1.2.6/adler32.c
zlib-1.2.6/amiga/
zlib-1.2.6/amiga/Makefile.pup
zlib-1.2.6/amiga/Makefile.sas
zlib-1.2.6/as400/
zlib-1.2.6/as400/bndsrc
zlib-1.2.6/as400/compile.clp
zlib-1.2.6/as400/readme.txt
zlib-1.2.6/as400/zlib.inc
zlib-1.2.6/ChangeLog
zlib-1.2.6/CMakeLists.txt
zlib-1.2.6/compress.c
zlib-1.2.6/configure
zlib-1.2.6/contrib/
.......
.......
zlib-1.2.6/win32/README-WIN32.txt
zlib-1.2.6/win32/VisualC.txt
zlib-1.2.6/win32/zlib.def
zlib-1.2.6/win32/zlib1.rc
zlib-1.2.6/zconf.h
zlib-1.2.6/zconf.h.cmakein
zlib-1.2.6/zconf.h.in
zlib-1.2.6/zlib.3
zlib-1.2.6/zlib.3.pdf
zlib-1.2.6/zlib.h
zlib-1.2.6/zlib.map
zlib-1.2.6/zlib.pc.in
zlib-1.2.6/zlib2ansi
zlib-1.2.6/zutil.c
zlib-1.2.6/zutil.h
[root@localhost download]#
[root@localhost download]#
[root@localhost download]#
[root@localhost download]# cd zlib-1.2.6
[root@localhost zlib-1.2.6]# ./configure
Checking for gcc...
Checking for shared library support...
Building shared library libz.so.1.2.6 with gcc.
Checking for off64_t... Yes.
Checking for fseeko... Yes.
Checking for unistd.h... Yes.
Checking for stdarg.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 attribute(visibility) support... Yes.
[root@localhost zlib-1.2.6]#
[root@localhost zlib-1.2.6]#
[root@localhost zlib-1.2.6]# make
gcc -O3 -D_LARGEFILE64_SOURCE=1 -I. -c -o example.o test/example.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -c -o adler32.o adler32.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -c -o crc32.o crc32.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -c -o deflate.o deflate.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -c -o infback.o infback.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -c -o inffast.o inffast.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -c -o inflate.o inflate.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -c -o inftrees.o inftrees.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -c -o trees.o trees.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -c -o zutil.o zutil.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -c -o compress.o compress.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -c -o uncompr.o uncompr.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -c -o gzclose.o gzclose.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -c -o gzlib.o gzlib.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -c -o gzread.o gzread.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -c -o gzwrite.o gzwrite.c
ar rc libz.a adler32.o crc32.o deflate.o infback.o inffast.o inflate.o inftrees.o trees.o zutil.o compress.o uncompr.o gzclose.o gzlib.o gzread.o gzwrite.o
gcc -O3 -D_LARGEFILE64_SOURCE=1 -o example example.o -L. libz.a
gcc -O3 -D_LARGEFILE64_SOURCE=1 -I. -c -o minigzip.o test/minigzip.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -o minigzip minigzip.o -L. libz.a
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DPIC -c -o objs/adler32.o adler32.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DPIC -c -o objs/crc32.o crc32.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DPIC -c -o objs/deflate.o deflate.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DPIC -c -o objs/infback.o infback.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DPIC -c -o objs/inffast.o inffast.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DPIC -c -o objs/inflate.o inflate.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DPIC -c -o objs/inftrees.o inftrees.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DPIC -c -o objs/trees.o trees.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DPIC -c -o objs/zutil.o zutil.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DPIC -c -o objs/compress.o compress.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DPIC -c -o objs/uncompr.o uncompr.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DPIC -c -o objs/gzclose.o gzclose.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DPIC -c -o objs/gzlib.o gzlib.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DPIC -c -o objs/gzread.o gzread.c
gcc -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DPIC -c -o objs/gzwrite.o gzwrite.c
gcc -shared -Wl,-soname,libz.so.1,--version-script,zlib.map -O3 -fPIC -D_LARGEFILE64_SOURCE=1 -o libz.so.1.2.6 adler32.lo crc32.lo deflate.lo infback.lo inffast.lo inflate.lo inftrees.lo trees.lo zutil.lo compress.lo uncompr.lo gzclose.lo gzlib.lo gzread.lo gzwrite.lo -lc
rm -f libz.so libz.so.1
ln -s libz.so.1.2.6 libz.so
ln -s libz.so.1.2.6 libz.so.1
gcc -O3 -D_LARGEFILE64_SOURCE=1 -o examplesh example.o -L. libz.so.1.2.6
gcc -O3 -D_LARGEFILE64_SOURCE=1 -o minigzipsh minigzip.o -L. libz.so.1.2.6
gcc -O3 -D_LARGEFILE64_SOURCE=1 -I. -D_FILE_OFFSET_BITS=64 -c -o example64.o test/example.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -o example64 example64.o -L. libz.a
gcc -O3 -D_LARGEFILE64_SOURCE=1 -I. -D_FILE_OFFSET_BITS=64 -c -o minigzip64.o test/minigzip.c
gcc -O3 -D_LARGEFILE64_SOURCE=1 -o minigzip64 minigzip64.o -L. libz.a
[root@localhost zlib-1.2.6]#
[root@localhost zlib-1.2.6]#
[root@localhost zlib-1.2.6]#
[root@localhost zlib-1.2.6]# make install
cp libz.a /usr/local/lib
chmod 644 /usr/local/lib/libz.a
cp libz.so.1.2.6 /usr/local/lib
chmod 755 /usr/local/lib/libz.so.1.2.6
cp zlib.3 /usr/local/share/man/man3
chmod 644 /usr/local/share/man/man3/zlib.3
cp zlib.pc /usr/local/lib/pkgconfig
chmod 644 /usr/local/lib/pkgconfig/zlib.pc
cp zlib.h zconf.h /usr/local/include
chmod 644 /usr/local/include/zlib.h /usr/local/include/zconf.h
[root@localhost zlib-1.2.6]#
[root@centos server]# rpm -e --nodeps zlib-1.2.3-4.el5
[root@centos lib]# ln -s /usr/lib/libz.
libz.a libz.so libz.so.1
[root@centos lib]# ln -s /usr/local/lib/libz.
libz.a libz.so libz.so.1 libz.so.1.2.6
[root@centos lib]# ln -s /usr/local/lib/libz.so.1.2.6 /lib/libz.so.1
64bits 일 경우 /lib64에 심볼릭 링크를 생성해주어야 한다.
[root@centos lib]# rpm -e --nodeps zlib-devel-1.2.3-4.el5
[root@centos lib]# rpm -qa|grep png
libpng-1.2.10-7.1.el5_5.3
libpng-devel-1.2.10-7.1.el5_5.3
[root@centos lib]# rpm -e --nodeps libpng-1.2.10-7.1.el5_5.3
[root@centos lib]# rpm -e --nodeps libpng-devel-1.2.10-7.1.el5_5.3
zlib에서 생성된 이미지를 png 포맷으로 변형하여 사용하기 위한 라이브러리
[root@localhost download]# tar zxvf libpng-1.5.9.tar.gz
libpng-1.5.9/
libpng-1.5.9/png.c
libpng-1.5.9/LICENSE
libpng-1.5.9/pngpread.c
libpng-1.5.9/test-pngtest.sh
libpng-1.5.9/pngnow.png
libpng-1.5.9/pngpriv.h
libpng-1.5.9/Makefile.am
libpng-1.5.9/test-pngvalid-simple.sh
libpng-1.5.9/pngtest.png
libpng-1.5.9/pnginfo.h
libpng-1.5.9/CMakeLists.txt
libpng-1.5.9/config.sub
libpng-1.5.9/pngdebug.h
libpng-1.5.9/pngconf.h
.......
.......
libpng-1.5.9/contrib/visupng/cexcept.h
libpng-1.5.9/contrib/visupng/VisualPng.png
libpng-1.5.9/contrib/visupng/resource.h
libpng-1.5.9/contrib/visupng/PngFile.h
libpng-1.5.9/contrib/visupng/VisualPng.dsp
libpng-1.5.9/contrib/visupng/VisualPng.dsw
libpng-1.5.9/contrib/visupng/VisualPng.ico
libpng-1.5.9/contrib/visupng/README.txt
libpng-1.5.9/contrib/visupng/PngFile.c
libpng-1.5.9/contrib/visupng/VisualPng.rc
libpng-1.5.9/contrib/visupng/VisualPng.c
[root@localhost download]#
[root@localhost download]# cd libpng-1.5.9
[root@localhost libpng-1.5.9]# cp scripts/makefile.linux Makefile
[root@localhost libpng-1.5.9]# ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
.......
.......
checking for feenableexcept in -lm... yes
checking for feenableexcept... yes
checking if using Solaris linker... no
checking if libraries can be versioned... yes
checking for symbol prefix...
configure: pkgconfig directory is ${libdir}/pkgconfig
configure: creating ./config.status
config.status: creating Makefile
config.status: creating libpng.pc
config.status: creating libpng-config
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
[root@localhost libpng-1.5.9]#
[root@localhost libpng-1.5.9]#
[root@localhost libpng-1.5.9]# make test
rm -f pnglibconf.dfn dfn?.out
gawk -f ./scripts/options.awk out=dfn1.out version=search\
./pngconf.h ./scripts/pnglibconf.dfa\
1>&2
gawk -f ./scripts/options.awk out=dfn2.out dfn1.out 1>&2
rm dfn1.out
mv dfn2.out pnglibconf.dfn
rm -f pnglibconf.out dfn.c dfn?.out
test -d scripts || mkdir scripts
echo '#include "pnglibconf.dfn"' >dfn.c
gcc -E -DHAVE_CONFIG_H -I. -DPNG_CONFIGURE_LIBPNG\
-DPNGLIB_LIBNAME='PNG15_0' -DPNGLIB_VERSION='1.5.9' -DSYMBOL_PREFIX='' -DPNG_NO_USE_READ_MACROS -DPNG_BUILDING_SYMBOL_TABLE dfn.c > dfn1.out
/bin/sed -n -e 's|^.*PNG_DEFN_MAGIC *-\(.*\)- *PNG_DEFN_END.*$|\1|p'\
dfn1.out >dfn2.out
/bin/sed -e 's| *PNG_JOIN *||g' -e 's| *$||' dfn2.out >dfn3.out
.......
.......
PASS: test-pngtest.sh
Running test-pngvalid-simple.sh
PASS: pngvalid --standard
PASS: pngvalid --standard --progressive-read
PASS: pngvalid --standard --interlace
PASS: pngvalid --standard --progressive-read --interlace
PASS: pngvalid --size
PASS: pngvalid --size --progressive-read
PASS: pngvalid --transform
PASS: test-pngvalid-simple.sh
Running test-pngvalid-full.sh
PASS: pngvalid --gamma-threshold
PASS: pngvalid --gamma-transform
PASS: pngvalid --gamma-sbit
PASS: pngvalid --gamma-16-to-8
PASS: pngvalid --gamma-background
PASS: pngvalid --gamma-alpha-mode
PASS: pngvalid --gamma-transform --expand16
PASS: pngvalid --gamma-background --expand16
PASS: pngvalid --gamma-alpha-mode --expand16
PASS: test-pngvalid-full.sh
==================
All 3 tests passed
==================
make[1]: Leaving directory `/download/libpng-1.5.9'
[root@localhost libpng-1.5.9]#
[root@localhost libpng-1.5.9]#
[root@localhost libpng-1.5.9]#
[root@localhost libpng-1.5.9]# make install
make[1]: Entering directory `/download/libpng-1.5.9'
test -z "/usr/local/bin" || /bin/mkdir -p "/usr/local/bin"
/usr/bin/install -c libpng15-config '/usr/local/bin'
test -z "/usr/local/lib" || /bin/mkdir -p "/usr/local/lib"
/bin/sh ./libtool --mode=install /usr/bin/install -c libpng15.la '/usr/local/lib'
libtool: install: /usr/bin/install -c .libs/libpng15.so.15.9.0 /usr/local/lib/libpng15.so.15.9.0
libtool: install: (cd /usr/local/lib && { ln -s -f libpng15.so.15.9.0 libpng15.so.15 || { rm -f libpng15.so.15 && ln -s libpng15.so.15.9.0 libpng15.so.15; }; })
libtool: install: (cd /usr/local/lib && { ln -s -f libpng15.so.15.9.0 libpng15.so || { rm -f libpng15.so && ln -s libpng15.so.15.9.0 libpng15.so; }; })
libtool: install: /usr/bin/install -c .libs/libpng15.lai /usr/local/lib/libpng15.la
libtool: install: /usr/bin/install -c .libs/libpng15.a /usr/local/lib/libpng15.a
libtool: install: chmod 644 /usr/local/lib/libpng15.a
libtool: install: ranlib /usr/local/lib/libpng15.a
.......
.......
make install-data-hook
make[2]: Entering directory `/download/libpng-1.5.9'
cd /usr/local/include; rm -f png.h pngconf.h pnglibconf.h
cd /usr/local/include; ln -s libpng15/png.h png.h
cd /usr/local/include; ln -s libpng15/pngconf.h \
pngconf.h
cd /usr/local/include; ln -s libpng15/pnglibconf.h \
pnglibconf.h
cd /usr/local/lib/pkgconfig; rm -f libpng.pc
cd /usr/local/lib/pkgconfig; ln -s libpng15.pc libpng.pc
make[2]: Leaving directory `/download/libpng-1.5.9'
make[1]: Leaving directory `/download/libpng-1.5.9'
[root@localhost libpng-1.5.9]#
freetype 설치
공개 폰트 엔진
[root@localhost download]# tar zxvf freetype-2.4.8.tar.gz
freetype-2.4.8/
freetype-2.4.8/vms_make.com
freetype-2.4.8/ChangeLog.20
freetype-2.4.8/version.sed
freetype-2.4.8/Jamrules
freetype-2.4.8/Jamfile
freetype-2.4.8/configure
freetype-2.4.8/ChangeLog.23
freetype-2.4.8/docs/
freetype-2.4.8/docs/LICENSE.TXT
freetype-2.4.8/docs/reference/
.......
.......
freetype-2.4.8/src/cid/ciderrs.h
freetype-2.4.8/src/cid/cidriver.c
freetype-2.4.8/src/cid/Jamfile
freetype-2.4.8/src/cid/cidload.c
freetype-2.4.8/src/cid/cidgload.c
freetype-2.4.8/src/cid/cidobjs.h
freetype-2.4.8/src/cid/module.mk
freetype-2.4.8/src/cid/cidparse.h
freetype-2.4.8/src/cid/cidload.h
freetype-2.4.8/src/cid/type1cid.c
freetype-2.4.8/src/cid/cidobjs.c
freetype-2.4.8/src/cid/cidgload.h
freetype-2.4.8/src/cid/cidparse.c
freetype-2.4.8/src/cid/cidtoken.h
freetype-2.4.8/src/cid/cidriver.h
freetype-2.4.8/src/cid/rules.mk
freetype-2.4.8/modules.cfg
freetype-2.4.8/Makefile
freetype-2.4.8/ChangeLog
[root@localhost download]#
[root@localhost download]# cd freetype-2.4.8
[root@centos freetype-2.4.8]# rpm -qa freetype-devel-2.2.1-28.el5_5.1
[root@centos freetype-2.4.8]# rpm -qa freetype--2.2.1-28.el5_5.1
[root@localhost freetype-2.4.8]# ./configure
FreeType build system -- automatic system detection
The following settings are used:
platform unix
compiler cc
configuration directory ./builds/unix
configuration rules ./builds/unix/unix.mk
If this does not correspond to your system or settings please remove the file
`config.mk' from this directory then read the INSTALL file for help.
Otherwise, simply type `make' again to build the library,
or `make refdoc' to build the API reference (the latter needs python).
Generating modules list in ./objs/ftmodule.h...
* module: truetype (Windows/Mac font files with extension *.ttf or *.ttc)
* module: type1 (Postscript font files with extension *.pfa or *.pfb)
.......
.......
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
configure: creating ./config.status
config.status: creating unix-cc.mk
config.status: creating unix-def.mk
config.status: creating freetype-config
config.status: creating freetype2.pc
config.status: creating ftconfig.h
config.status: executing libtool commands
make: Nothing to be done for `unix'.
[root@localhost freetype-2.4.8]#
[root@localhost freetype-2.4.8]#
[root@localhost freetype-2.4.8]#
[root@localhost freetype-2.4.8]# make
./builds/unix/libtool --mode=compile gcc -pedantic -ansi -I/download/freetype-2.4.8/objs -I./builds/unix -I/download/freetype-2.4.8/include -c -Wall -g -O2 -DFT_CONFIG_OPTION_SYSTEM_ZLIB -DFT_CONFIG_CONFIG_H="<ftconfig.h>" -DFT2_BUILD_LIBRARY -DFT_CONFIG_MODULES_H="<ftmodule.h>" -o /download/freetype-2.4.8/objs/ftsystem.lo builds/unix/ftsystem.c
libtool: compile: gcc -pedantic -ansi -I/download/freetype-2.4.8/objs -I./builds/unix -I/download/freetype-2.4.8/include -c -Wall -g -O2 -DFT_CONFIG_OPTION_SYSTEM_ZLIB "-DFT_CONFIG_CONFIG_H=<ftconfig.h>" -DFT2_BUILD_LIBRARY "-DFT_CONFIG_MODULES_H=<ftmodule.h>" builds/unix/ftsystem.c -fPIC -DPIC -o /download/freetype-2.4.8/objs/.libs/ftsystem.o
libtool: compile: gcc -pedantic -ansi -I/download/freetype-2.4.8/objs -I./builds/unix -I/download/freetype-2.4.8/include -c -Wall -g -O2 -DFT_CONFIG_OPTION_SYSTEM_ZLIB "-DFT_CONFIG_CONFIG_H=<ftconfig.h>" -DFT2_BUILD_LIBRARY "-DFT_CONFIG_MODULES_H=<ftmodule.h>" builds/unix/ftsystem.c -o /download/freetype-2.4.8/objs/ftsystem.o >/dev/null 2>&1
./builds/unix/libtool --mode=compile gcc -pedantic -ansi -I/download/freetype-2.4.8/objs -I./builds/unix -I/download/freetype-2.4.8/include -c -Wall -g -O2 -DFT_CONFIG_OPTION_SYSTEM_ZLIB -DFT_CONFIG_CONFIG_H="<ftconfig.h>" -DFT2_BUILD_LIBRARY -DFT_CONFIG_
.......
.......
libtool: link: ar cru /download/freetype-2.4.8/objs/.libs/libfreetype.a /download/freetype-2.4.8/objs/ftsystem.o /download/freetype-2.4.8/objs/ftdebug.o /download/freetype-2.4.8/objs/ftinit.o /download/freetype-2.4.8/objs/ftbase.o /download/freetype-2.4.8/objs/ftbbox.o /download/freetype-2.4.8/objs/ftbdf.o /download/freetype-2.4.8/objs/ftbitmap.o /download/freetype-2.4.8/objs/ftcid.o /download/freetype-2.4.8/objs/ftfstype.o /download/freetype-2.4.8/objs/ftgasp.o /download/freetype-2.4.8/objs/ftglyph.o /download/freetype-2.4.8/objs/ftgxval.o /download/freetype-2.4.8/objs/ftlcdfil.o /download/freetype-2.4.8/objs/ftmm.o /download/freetype-2.4.8/objs/ftotval.o /download/freetype-2.4.8/objs/ftpatent.o /download/freetype-2.4.8/objs/ftpfr.o /download/freetype-2.4.8/objs/ftstroke.o /download/freetype-2.4.8/objs/ftsynth.o /download/freetype-2.4.8/objs/fttype1.o /download/freetype-2.4.8/objs/ftwinfnt.o /download/freetype-2.4.8/objs/ftxf86.o /download/freetype-2.4.8/objs/truetype.o /download/freetype-2.4.8/objs/type1.o /download/freetype-2.4.8/objs/cff.o /download/freetype-2.4.8/objs/type1cid.o /download/freetype-2.4.8/objs/pfr.o /download/freetype-2.4.8/objs/type42.o /download/freetype-2.4.8/objs/winfnt.o /download/freetype-2.4.8/objs/pcf.o /download/freetype-2.4.8/objs/bdf.o /download/freetype-2.4.8/objs/sfnt.o /download/freetype-2.4.8/objs/autofit.o /download/freetype-2.4.8/objs/pshinter.o /download/freetype-2.4.8/objs/raster.o /download/freetype-2.4.8/objs/smooth.o /download/freetype-2.4.8/objs/ftcache.o /download/freetype-2.4.8/objs/ftgzip.o /download/freetype-2.4.8/objs/ftlzw.o /download/freetype-2.4.8/objs/ftbzip2.o /download/freetype-2.4.8/objs/psaux.o /download/freetype-2.4.8/objs/psnames.o
libtool: link: ranlib /download/freetype-2.4.8/objs/.libs/libfreetype.a
libtool: link: ( cd "/download/freetype-2.4.8/objs/.libs" && rm -f "libfreetype.la" && ln -s "../libfreetype.la" "libfreetype.la" )
[root@localhost freetype-2.4.8]#
[root@localhost freetype-2.4.8]#
[root@localhost freetype-2.4.8]#
[root@localhost freetype-2.4.8]#
[root@localhost freetype-2.4.8]# make install
./builds/unix/mkinstalldirs /usr/local/lib \
/usr/local/lib/pkgconfig \
/usr/local/include/freetype2/freetype/config \
/usr/local/include/freetype2/freetype/cache \
/usr/local/bin \
/usr/local/share/aclocal
mkdir -p -- /usr/local/include/freetype2/freetype/config /usr/local/include/freetype2/freetype/cache /usr/local/bin /usr/local/share/aclocal
./builds/unix/libtool --mode=install /usr/bin/install -c \
/download/freetype-2.4.8/objs/libfreetype.la /usr/local/lib
libtool: install: /usr/bin/install -c /download/freetype-2.4.8/objs/.libs/libfreetype.so.6.8.0 /usr/local/lib/libfreetype.so.6.8.0
libtool: install: (cd /usr/local/lib && { ln -s -f libfreetype.so.6.8.0 libfreetype.so.6 || { rm -f libfreetype.so.6 && ln -s libfreetype.so.6.8.0 libfreetype.so.6; }; })
libtool: install: (cd /usr/local/lib && { ln -s -f libfreetype.so.6.8.0 libfreetype.so || { rm -f libfreetype.so && ln -s libfreetype.so.6.8.0 libfreetype.so; }; })
libtool: install: /usr/bin/install -c /download/freetype-2.4.8/objs/.libs/libfreetype.lai /usr/local/lib/libfreetype.la
libtool: install: /usr/bin/install -c /download/freetype-2.4.8/objs/.libs/libfreetype.a /usr/local/lib/libfreetype.a
.......
.......
rm -f /usr/local/include/freetype2/freetype/cache/*
rmdir /usr/local/include/freetype2/freetype/cache
rm -f /usr/local/include/freetype2/freetype/internal/*
rmdir /usr/local/include/freetype2/freetype/internal
rmdir: /usr/local/include/freetype2/freetype/internal: No such file or directory
make: [install] Error 1 (ignored)
/usr/bin/install -c -m 644 ./builds/unix/ft2unix.h \
/usr/local/include/ft2build.h
/usr/bin/install -c -m 644 ./builds/unix/ftconfig.h \
/usr/local/include/freetype2/freetype/config/ftconfig.h
/usr/bin/install -c -m 644 /download/freetype-2.4.8/objs/ftmodule.h \
/usr/local/include/freetype2/freetype/config/ftmodule.h
/usr/bin/install -c -m 755 ./builds/unix/freetype-config \
/usr/local/bin/freetype-config
/usr/bin/install -c -m 644 ./builds/unix/freetype2.m4 \
/usr/local/share/aclocal/freetype2.m4
/usr/bin/install -c -m 644 ./builds/unix/freetype2.pc \
/usr/local/lib/pkgconfig/freetype2.pc
[root@localhost freetype-2.4.8]#
[root@centos freetype-2.4.8]# rpm -e --nodeps libjpeg-6b-37
[root@centos freetype-2.4.8]# rpm -e --nodeps libjpeg-devel-6b-37
jpeg 설치
JPEG 압축 및 해제 라이브러리
[root@localhost download]# tar zxvf jpegsrc.v8d.tar.gz
jpeg-8d/
jpeg-8d/wrppm.c
jpeg-8d/wrrle.c
jpeg-8d/maketdsp.vc6
jpeg-8d/jdinput.c
jpeg-8d/testimg.bmp
jpeg-8d/testimg.jpg
jpeg-8d/testimg.ppm
jpeg-8d/rdjpgcom.1
jpeg-8d/rdjpgcom.c
jpeg-8d/makejsln.v10
jpeg-8d/jccoefct.c
jpeg-8d/jcmainct.c
jpeg-8d/coderules.txt
.......
.......
jpeg-8d/makefile.unix
jpeg-8d/jchuff.c
jpeg-8d/jcinit.c
jpeg-8d/makewmak.vc6
jpeg-8d/makermak.vc6
jpeg-8d/jdarith.c
jpeg-8d/makdjpeg.st
jpeg-8d/makecfil.v10
jpeg-8d/makejdsp.vc6
jpeg-8d/makejdsw.vc6
jpeg-8d/makewfil.v10
jpeg-8d/ckconfig.c
jpeg-8d/makerfil.v10
jpeg-8d/cjpeg.1
jpeg-8d/cjpeg.c
jpeg-8d/wrbmp.c
jpeg-8d/wrgif.c
jpeg-8d/jdhuff.c
jpeg-8d/makejmak.vc6
[root@localhost download]#
[root@localhost download]# cd jpeg-8d
[root@localhost jpeg-8d]# ./configure --enable-shared --enable-static
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
.......
.......
checking if gcc -std=gnu99 PIC flag -fPIC -DPIC works... yes
checking if gcc -std=gnu99 static flag -static works... yes
checking if gcc -std=gnu99 supports -c -o file.o... yes
checking if gcc -std=gnu99 supports -c -o file.o... (cached) yes
checking whether the gcc -std=gnu99 linker (/usr/bin/ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking libjpeg version number... 12:0:4
configure: creating ./config.status
config.status: creating Makefile
config.status: creating jconfig.h
config.status: executing depfiles commands
config.status: executing libtool commands
[root@localhost jpeg-8d]#
[root@localhost jpeg-8d]# make
make all-am
make[1]: Entering directory `/download/jpeg-8d'
CC jaricom.lo
CC jcapimin.lo
CC jcapistd.lo
CC jcarith.lo
CC jccoefct.lo
CC jccolor.lo
CC jcdctmgr.lo
CC jchuff.lo
CC jcinit.lo
CC jcmainct.lo
CC jcmarker.lo
CC jcmaster.lo
CC jcomapi.lo
CC jcparam.lo
CC jcprepct.lo
.......
.......
CC wrrle.o
CC wrbmp.o
CC rdcolmap.o
CCLD djpeg
CC jpegtran.o
CC transupp.o
CCLD jpegtran
CC rdjpgcom.o
CCLD rdjpgcom
CC wrjpgcom.o
CCLD wrjpgcom
make[1]: Leaving directory `/download/jpeg-8d'
[root@localhost jpeg-8d]#
[root@localhost jpeg-8d]#
[root@localhost jpeg-8d]#
[root@localhost jpeg-8d]# make install
make[1]: Entering directory `/download/jpeg-8d'
test -z "/usr/local/lib" || /bin/mkdir -p "/usr/local/lib"
/bin/sh ./libtool --mode=install /usr/bin/install -c libjpeg.la '/usr/local/lib'
libtool: install: /usr/bin/install -c .libs/libjpeg.so.8.4.0 /usr/local/lib/libjpeg.so.8.4.0
libtool: install: (cd /usr/local/lib && { ln -s -f libjpeg.so.8.4.0 libjpeg.so.8 || { rm -f libjpeg.so.8 && ln -s libjpeg.so.8.4.0 libjpeg.so.8; }; })
libtool: install: (cd /usr/local/lib && { ln -s -f libjpeg.so.8.4.0 libjpeg.so || { rm -f libjpeg.so && ln -s libjpeg.so.8.4.0 libjpeg.so; }; })
libtool: install: /usr/bin/install -c .libs/libjpeg.lai /usr/local/lib/libjpeg.la
libtool: install: /usr/bin/install -c .libs/libjpeg.a /usr/local/lib/libjpeg.a
libtool: install: chmod 644 /usr/local/lib/libjpeg.a
libtool: install: ranlib /usr/local/lib/libjpeg.a
libtool: finish: PATH="/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/sbin" ldconfig -n /usr/local/lib
----------------------------------------------------------------------
Libraries have been installed in:
/usr/local/lib
If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
- add LIBDIR to the `LD_LIBRARY_PATH' environment variable
during execution
- add LIBDIR to the `LD_RUN_PATH' environment variable
during linking
- use the `-Wl,-rpath -Wl,LIBDIR' linker flag
- have your system administrator add LIBDIR to `/etc/ld.so.conf'
See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
test -z "/usr/local/bin" || /bin/mkdir -p "/usr/local/bin"
/bin/sh ./libtool --mode=install /usr/bin/install -c cjpeg djpeg jpegtran rdjpgcom wrjpgcom '/usr/local/bin'
libtool: install: /usr/bin/install -c .libs/cjpeg /usr/local/bin/cjpeg
libtool: install: /usr/bin/install -c .libs/djpeg /usr/local/bin/djpeg
libtool: install: /usr/bin/install -c .libs/jpegtran /usr/local/bin/jpegtran
libtool: install: /usr/bin/install -c rdjpgcom /usr/local/bin/rdjpgcom
libtool: install: /usr/bin/install -c wrjpgcom /usr/local/bin/wrjpgcom
/bin/sh /download/jpeg-8d/install-sh -d /usr/local/include
/usr/bin/install -c -m 644 jconfig.h /usr/local/include/jconfig.h
test -z "/usr/local/include" || /bin/mkdir -p "/usr/local/include"
/usr/bin/install -c -m 644 jerror.h jmorecfg.h jpeglib.h '/usr/local/include'
test -z "/usr/local/share/man/man1" || /bin/mkdir -p "/usr/local/share/man/man1"
/usr/bin/install -c -m 644 cjpeg.1 djpeg.1 jpegtran.1 rdjpgcom.1 wrjpgcom.1 '/usr/local/share/man/man1'
make[1]: Leaving directory `/download/jpeg-8d'
[root@localhost jpeg-8d]#
gd 설치
동적이미지를 생성하는 C 라이브러리로 PNG, JPEG, GIF 포맷으로 이미지 생성
[root@localhost download]# tar zxvf gd-2.0.35.tar.gz
gd/
gd/2.0.35/
gd/2.0.35/CMakeLists.txt
gd/2.0.35/COPYING
gd/2.0.35/INSTALL
gd/2.0.35/Makefile.am
gd/2.0.35/Makefile.in
gd/2.0.35/NEWS
gd/2.0.35/README-JPEG.TXT
gd/2.0.35/README.TESTING
gd/2.0.35/README.TXT
gd/2.0.35/VMS/
gd/2.0.35/VMS/CONFIGURE.COM
gd/2.0.35/VMS/README.VMS
gd/2.0.35/aclocal.m4
gd/2.0.35/annotate.c
.......
.......
gd/2.0.35/test/Makefile.am
gd/2.0.35/test/Makefile.in
gd/2.0.35/test/gdtest.gd2
gd/2.0.35/test/gdtest.png
gd/2.0.35/test/gdtest_200_300_150_100.png
gd/2.0.35/test/gdtest_merge.png
gd/2.0.35/test/gdtest_wbmp_to_png.png
gd/2.0.35/testac.c
gd/2.0.35/testtr.c
gd/2.0.35/wbmp.c
gd/2.0.35/wbmp.h
gd/2.0.35/webpng.c
gd/2.0.35/windows/
gd/2.0.35/windows/Makefile
gd/2.0.35/windows/libgd.rc
[root@localhost download]#
[root@localhost download]# cd gd/2.0.35/
[root@localhost 2.0.35]# ./configure
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
.......
.......
checking whether pthreads work with -kthread... no
checking for the pthreads library -llthread... no
checking whether pthreads work with -pthread... yes
checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
checking if more special flags are required for pthreads... no
** Configuration summary for gd 2.0.34:
Support for PNG library: yes
Support for JPEG library: yes
Support for Freetype 2.x library: yes
Support for Fontconfig library: no
Support for Xpm library: no
Support for pthreads: yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating config/Makefile
config.status: creating config/gdlib-config
config.status: creating test/Makefile
config.status: creating config.h
config.status: executing depfiles commands
[root@localhost 2.0.35]#
[root@localhost 2.0.35]# make (에러 발생하면 make 다시 실행)
cd . && /bin/sh /download/gd/2.0.35/config/missing --run aclocal-1.9 -I config
aclocal:configure.ac:64: warning: macro `AM_ICONV' not found in library
cd . && /bin/sh /download/gd/2.0.35/config/missing --run automake-1.9 --foreign
cd . && /bin/sh /download/gd/2.0.35/config/missing --run autoconf
configure.ac:64: error: possibly undefined macro: AM_ICONV
If this token and others are legitimate, please use m4_pattern_allow.
See the Autoconf documentation.
make: *** [configure] Error 1
[root@localhost 2.0.35]#
[root@localhost 2.0.35]#
[root@localhost 2.0.35]# make
/bin/sh ./config.status --recheck
running CONFIG_SHELL=/bin/sh /bin/sh ./configure --no-create --no-recursion
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking if we are building a Cygwin target... no
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
.......
.......
/bin/sh ./libtool --tag=CC --mode=link gcc -g -O2 -L/usr/local/lib -L/usr/local/lib -o circletexttest circletexttest.o ./libgd.la -ljpeg -lfreetype -lpng -lz -lm
gcc -g -O2 -o .libs/circletexttest circletexttest.o -L/usr/local/lib ./.libs/libgd.so /usr/local/lib/libjpeg.so /usr/local/lib/libfreetype.so /usr/local/lib/libpng15.so -lz -lm -Wl,--rpath -Wl,/usr/local/lib
creating circletexttest
if gcc -DHAVE_CONFIG_H -I. -I. -I. -I/usr/local/include/freetype2 -I/usr/local/include -g -O2 -MT testtr.o -MD -MP -MF ".deps/testtr.Tpo" -c -o testtr.o testtr.c; \
then mv -f ".deps/testtr.Tpo" ".deps/testtr.Po"; else rm -f ".deps/testtr.Tpo"; exit 1; fi
/bin/sh ./libtool --tag=CC --mode=link gcc -g -O2 -L/usr/local/lib -L/usr/local/lib -o testtr testtr.o ./libgd.la -ljpeg -lfreetype -lpng -lz -lm
gcc -g -O2 -o .libs/testtr testtr.o -L/usr/local/lib ./.libs/libgd.so /usr/local/lib/libjpeg.so /usr/local/lib/libfreetype.so /usr/local/lib/libpng15.so -lz -lm -Wl,--rpath -Wl,/usr/local/lib
creating testtr
if gcc -DHAVE_CONFIG_H -I. -I. -I. -I/usr/local/include/freetype2 -I/usr/local/include -g -O2 -MT fontconfigtest.o -MD -MP -MF ".deps/fontconfigtest.Tpo" -c -o fontconfigtest.o fontconfigtest.c; \
then mv -f ".deps/fontconfigtest.Tpo" ".deps/fontconfigtest.Po"; else rm -f ".deps/fontconfigtest.Tpo"; exit 1; fi
/bin/sh ./libtool --tag=CC --mode=link gcc -g -O2 -L/usr/local/lib -L/usr/local/lib -o fontconfigtest fontconfigtest.o ./libgd.la -ljpeg -lfreetype -lpng -lz -lm
gcc -g -O2 -o .libs/fontconfigtest fontconfigtest.o -L/usr/local/lib ./.libs/libgd.so /usr/local/lib/libjpeg.so /usr/local/lib/libfreetype.so /usr/local/lib/libpng15.so -lz -lm -Wl,--rpath -Wl,/usr/local/lib
creating fontconfigtest
if gcc -DHAVE_CONFIG_H -I. -I. -I. -I/usr/local/include/freetype2 -I/usr/local/include -g -O2 -MT gifanimtest.o -MD -MP -MF ".deps/gifanimtest.Tpo" -c -o gifanimtest.o gifanimtest.c; \
then mv -f ".deps/gifanimtest.Tpo" ".deps/gifanimtest.Po"; else rm -f ".deps/gifanimtest.Tpo"; exit 1; fi
/bin/sh ./libtool --tag=CC --mode=link gcc -g -O2 -L/usr/local/lib -L/usr/local/lib -o gifanimtest gifanimtest.o ./libgd.la -ljpeg -lfreetype -lpng -lz -lm
gcc -g -O2 -o .libs/gifanimtest gifanimtest.o -L/usr/local/lib ./.libs/libgd.so /usr/local/lib/libjpeg.so /usr/local/lib/libfreetype.so /usr/local/lib/libpng15.so -lz -lm -Wl,--rpath -Wl,/usr/local/lib
creating gifanimtest
make[2]: Leaving directory `/download/gd/2.0.35'
make[1]: Leaving directory `/download/gd/2.0.35'
[root@localhost 2.0.35]#
[root@localhost 2.0.35]#
[root@localhost 2.0.35]# make install
Making install in config
make[1]: Entering directory `/download/gd/2.0.35/config'
make[2]: Entering directory `/download/gd/2.0.35/config'
test -z "/usr/local/bin" || mkdir -p -- "/usr/local/bin"
/usr/bin/install -c 'gdlib-config' '/usr/local/bin/gdlib-config'
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/download/gd/2.0.35/config'
make[1]: Leaving directory `/download/gd/2.0.35/config'
Making install in test
make[1]: Entering directory `/download/gd/2.0.35/test'
make[2]: Entering directory `/download/gd/2.0.35/test'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/download/gd/2.0.35/test'
make[1]: Leaving directory `/download/gd/2.0.35/test'
make[1]: Entering directory `/download/gd/2.0.35'
make[2]: Entering directory `/download/gd/2.0.35'
.......
.......
/usr/bin/install -c .libs/gdcmpgif /usr/local/bin/gdcmpgif
/bin/sh ./libtool --mode=install /usr/bin/install -c 'giftogd2' '/usr/local/bin/giftogd2'
/usr/bin/install -c .libs/giftogd2 /usr/local/bin/giftogd2
test -z "/usr/local/bin" || mkdir -p -- "/usr/local/bin"
/usr/bin/install -c 'bdftogd' '/usr/local/bin/bdftogd'
/usr/bin/install -c 'config/gdlib-config' '/usr/local/bin/gdlib-config'
test -z "/usr/local/include" || mkdir -p -- "/usr/local/include"
/usr/bin/install -c -m 644 'gd.h' '/usr/local/include/gd.h'
/usr/bin/install -c -m 644 'gdfx.h' '/usr/local/include/gdfx.h'
/usr/bin/install -c -m 644 'gd_io.h' '/usr/local/include/gd_io.h'
/usr/bin/install -c -m 644 'gdcache.h' '/usr/local/include/gdcache.h'
/usr/bin/install -c -m 644 'gdfontg.h' '/usr/local/include/gdfontg.h'
/usr/bin/install -c -m 644 'gdfontl.h' '/usr/local/include/gdfontl.h'
/usr/bin/install -c -m 644 'gdfontmb.h' '/usr/local/include/gdfontmb.h'
/usr/bin/install -c -m 644 'gdfonts.h' '/usr/local/include/gdfonts.h'
/usr/bin/install -c -m 644 'gdfontt.h' '/usr/local/include/gdfontt.h'
/usr/bin/install -c -m 644 'entities.h' '/usr/local/include/entities.h'
make[2]: Leaving directory `/download/gd/2.0.35'
make[1]: Leaving directory `/download/gd/2.0.35'
[root@localhost 2.0.35]#
libxml 설치
XML C 파서
[root@localhost download]# tar zxvf libxml2-2.7.8.tar.gz
libxml2-2.7.8/
libxml2-2.7.8/nanoftp.c
libxml2-2.7.8/libxml.m4
libxml2-2.7.8/example/
libxml2-2.7.8/example/gjobread.c
libxml2-2.7.8/example/Makefile.in
libxml2-2.7.8/example/Makefile.am
libxml2-2.7.8/example/gjobs.xml
libxml2-2.7.8/threads.c
libxml2-2.7.8/gentest.py
libxml2-2.7.8/testchar.c
libxml2-2.7.8/config.h.in
libxml2-2.7.8/README
libxml2-2.7.8/parserInternals.c
libxml2-2.7.8/m4/
libxml2-2.7.8/m4/ltoptions.m4
libxml2-2.7.8/m4/ltversion.m4
libxml2-2.7.8/m4/lt~obsolete.m4
libxml2-2.7.8/m4/ltsugar.m4
libxml2-2.7.8/m4/libtool.m4
libxml2-2.7.8/tree.c
libxml2-2.7.8/testXPath.c
.......
.......
libxml2-2.7.8/xstc/Makefile.in
libxml2-2.7.8/xstc/Makefile.am
libxml2-2.7.8/xstc/xstc-to-python.xsl
libxml2-2.7.8/xstc/xstc.py
libxml2-2.7.8/legacy.c
libxml2-2.7.8/testapi.c
libxml2-2.7.8/ChangeLog
libxml2-2.7.8/error.c
libxml2-2.7.8/HTMLparser.c
libxml2-2.7.8/testURI.c
libxml2-2.7.8/libxml.3
libxml2-2.7.8/testRegexp.c
libxml2-2.7.8/xmlregexp.c
libxml2-2.7.8/triodef.h
libxml2-2.7.8/trionan.h
libxml2-2.7.8/testReader.c
libxml2-2.7.8/xmlunicode.c
libxml2-2.7.8/DOCBparser.c
libxml2-2.7.8/INSTALL
libxml2-2.7.8/dict.c
libxml2-2.7.8/triop.h
libxml2-2.7.8/catalog.c
libxml2-2.7.8/libxml.h
[root@localhost download]#
[root@localhost download]# cd libxml2-2.7.8
[root@centos libxml2-2.7.8]# rpm -e --nodeps libxml2-devel-2.6.26-2.1.12
[root@centos libxml2-2.7.8]# rpm -e --nodeps libxml2-2.6.26-2.1.12
[root@localhost libxml2-2.7.8]# ./configure
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
.......
.......
config.status: creating libxml2.spec
config.status: creating Makefile
config.status: creating include/Makefile
config.status: creating include/libxml/Makefile
config.status: creating doc/Makefile
config.status: creating doc/examples/Makefile
config.status: creating doc/devhelp/Makefile
config.status: creating example/Makefile
config.status: creating python/Makefile
config.status: creating python/tests/Makefile
config.status: creating xstc/Makefile
config.status: creating include/libxml/xmlversion.h
config.status: creating xml2-config
config.status: creating libxml-2.0.pc
config.status: creating libxml-2.0-uninstalled.pc
config.status: creating python/setup.py
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
/bin/rm: cannot remove `libtoolT': No such file or directory
Done configuring
[root@localhost libxml2-2.7.8]#
[root@localhost libxml2-2.7.8]# make
make all-recursive
make[1]: Entering directory `/download/libxml2-2.7.8'
Making all in include
make[2]: Entering directory `/download/libxml2-2.7.8/include'
Making all in libxml
make[3]: Entering directory `/download/libxml2-2.7.8/include/libxml'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/download/libxml2-2.7.8/include/libxml'
make[3]: Entering directory `/download/libxml2-2.7.8/include'
make[3]: Nothing to be done for `all-am'.
make[3]: Leaving directory `/download/libxml2-2.7.8/include'
make[2]: Leaving directory `/download/libxml2-2.7.8/include'
Making all in .
make[2]: Entering directory `/download/libxml2-2.7.8'
/bin/sh ./libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I./include -I./include -D_REENTRANT -g -O2 -pedantic -W -Wformat -Wunused -Wimplicit -Wreturn-type -Wswitch -Wcomment -Wtrigraphs -Wformat -Wchar-subscripts -Wuninitialized -Wparentheses -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wredundant-decls -MT SAX.lo -MD -MP -MF .deps/SAX.Tpo -c -o SAX.lo SAX.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I./include -I./include -D_REENTRANT -g -O2 -pedantic -W -Wformat -Wunused -Wimplicit -Wreturn-type -Wswitch -Wcomment -Wtrigraphs -Wformat -Wchar-subscripts -Wuninitialized -Wparentheses -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wredundant-decls -MT SAX.lo -MD -MP -MF .deps/SAX.Tpo -c SAX.c -fPIC -DPIC -o .libs/SAX.o
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I./include -I./include -D_REENTRANT -g -O2 -pedantic -W -Wformat -Wunused -Wimplicit -Wreturn-type -Wswitch -Wcomment -Wtrigraphs -Wformat -Wchar-subscripts -Wuninitialized -Wparentheses -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wredundant-decls -MT SAX.lo -MD -MP -MF .deps/SAX.Tpo -c SAX.c -o SAX.o >/dev/null 2>&1
mv -f .deps/SAX.Tpo .deps/SAX.Plo
.......
.......
/bin/sh ../../libtool --tag=CC --mode=link gcc -g -O2 -pedantic -W -Wformat -Wunused -Wimplicit -Wreturn-type -Wswitch -Wcomment -Wtrigraphs -Wformat -Wchar-subscripts -Wuninitialized -Wparentheses -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wredundant-decls -o tree1 tree1.o ../../libxml2.la -lz -lm
libtool: link: gcc -g -O2 -pedantic -W -Wformat -Wunused -Wimplicit -Wreturn-type -Wswitch -Wcomment -Wtrigraphs -Wformat -Wchar-subscripts -Wuninitialized -Wparentheses -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wredundant-decls -o .libs/tree1 tree1.o ../../.libs/libxml2.so -ldl -lz -lm -Wl,-rpath -Wl,/usr/local/lib
make[3]: Leaving directory `/download/libxml2-2.7.8/doc/examples'
make[3]: Entering directory `/download/libxml2-2.7.8/doc'
make[3]: Nothing to be done for `all-am'.
make[3]: Leaving directory `/download/libxml2-2.7.8/doc'
make[2]: Leaving directory `/download/libxml2-2.7.8/doc'
Making all in example
make[2]: Entering directory `/download/libxml2-2.7.8/example'
gcc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I./include -D_REENTRANT -g -O2 -pedantic -W -Wformat -Wunused -Wimplicit -Wreturn-type -Wswitch -Wcomment -Wtrigraphs -Wformat -Wchar-subscripts -Wuninitialized -Wparentheses -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wredundant-decls -MT gjobread.o -MD -MP -MF .deps/gjobread.Tpo -c -o gjobread.o gjobread.c
mv -f .deps/gjobread.Tpo .deps/gjobread.Po
/bin/sh ../libtool --tag=CC --mode=link gcc -g -O2 -pedantic -W -Wformat -Wunused -Wimplicit -Wreturn-type -Wswitch -Wcomment -Wtrigraphs -Wformat -Wchar-subscripts -Wuninitialized -Wparentheses -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wredundant-decls -o gjobread gjobread.o ../libxml2.la -lz -lm
libtool: link: gcc -g -O2 -pedantic -W -Wformat -Wunused -Wimplicit -Wreturn-type -Wswitch -Wcomment -Wtrigraphs -Wformat -Wchar-subscripts -Wuninitialized -Wparentheses -Wshadow -Wpointer-arith -Wcast-align -Wwrite-strings -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wredundant-decls -o .libs/gjobread gjobread.o ../.libs/libxml2.so -ldl -lz -lm -Wl,-rpath -Wl,/usr/local/lib
make[2]: Leaving directory `/download/libxml2-2.7.8/example'
Making all in xstc
make[2]: Entering directory `/download/libxml2-2.7.8/xstc'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/download/libxml2-2.7.8/xstc'
make[1]: Leaving directory `/download/libxml2-2.7.8'
[root@localhost libxml2-2.7.8]#
컴파일 시 아래 오류가 뜨면
./.libs/libxml2.so: undefined reference to `gzopen64'
collect2: ld returned 1 exit status
make[2]: *** [xmllint] Error 1
make[2]: Leaving directory `/usr/local/src/libxml2-2.7.8'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/local/src/libxml2-2.7.8'
make: *** [all] Error 2
# rm -rf /usr/lib/libz*
[root@localhost libxml2-2.7.8]# make install
Making install in include
make[1]: Entering directory `/download/libxml2-2.7.8/include'
Making install in libxml
make[2]: Entering directory `/download/libxml2-2.7.8/include/libxml'
make[3]: Entering directory `/download/libxml2-2.7.8/include/libxml'
make[3]: Nothing to be done for `install-exec-am'.
test -z "/usr/local/include/libxml2/libxml" || /bin/mkdir -p "/usr/local/include/libxml2/libxml"
/usr/bin/install -c -m 644 SAX.h entities.h encoding.h parser.h parserInternals.h xmlerror.h HTMLparser.h HTMLtree.h debugXML.h tree.h list.h hash.h xpath.h xpathInternals.h xpointer.h xinclude.h xmlIO.h xmlmemory.h nanohttp.h nanoftp.h uri.h valid.h xlink.h xmlversion.h DOCBparser.h catalog.h threads.h globals.h c14n.h xmlautomata.h xmlregexp.h xmlmodule.h xmlschemas.h schemasInternals.h xmlschemastypes.h xmlstring.h xmlunicode.h xmlreader.h relaxng.h dict.h '/usr/local/include/libxml2/libxml'
/usr/bin/install -c -m 644 SAX2.h xmlexports.h xmlwriter.h chvalid.h pattern.h xmlsave.h schematron.h '/usr/local/include/libxml2/libxml'
make[3]: Leaving directory `/download/libxml2-2.7.8/include/libxml'
make[2]: Leaving directory `/download/libxml2-2.7.8/include/libxml'
make[2]: Entering directory `/download/libxml2-2.7.8/include'
make[3]: Entering directory `/download/libxml2-2.7.8/include'
.......
.......
test -z "/usr/local/share/man/man1" || /bin/mkdir -p "/usr/local/share/man/man1"
/usr/bin/install -c -m 644 xmllint.1 xmlcatalog.1 '/usr/local/share/man/man1'
make[3]: Leaving directory `/download/libxml2-2.7.8/doc'
make[2]: Leaving directory `/download/libxml2-2.7.8/doc'
make[1]: Leaving directory `/download/libxml2-2.7.8/doc'
Making install in example
make[1]: Entering directory `/download/libxml2-2.7.8/example'
make[2]: Entering directory `/download/libxml2-2.7.8/example'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/download/libxml2-2.7.8/example'
make[1]: Leaving directory `/download/libxml2-2.7.8/example'
Making install in xstc
make[1]: Entering directory `/download/libxml2-2.7.8/xstc'
make[2]: Entering directory `/download/libxml2-2.7.8/xstc'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/download/libxml2-2.7.8/xstc'
make[1]: Leaving directory `/download/libxml2-2.7.8/xstc'
[root@localhost libxml2-2.7.8]#
[root@centos ~]# ln -s /usr/local/lib/libxml2.so.2.7.8 /lib/libxml2.so.2
cmake 설치
Mysql은 5.5 버전 이전에는 configure를 사용해서 컴파일하였으나,
5.5 버전 이 후에는 cmake를 사용해서 컴파일
- cmake-2.8.7.tar.gz (http://www.cmake.org/)
[root@localhost download]# tar zxvf cmake-2.8.7.tar.gz
cmake-2.8.7/.gitattributes
cmake-2.8.7/.hooks-config.bash
cmake-2.8.7/bootstrap
cmake-2.8.7/ChangeLog.manual
cmake-2.8.7/ChangeLog.txt
cmake-2.8.7/cmake.1
cmake-2.8.7/cmake_uninstall.cmake.in
cmake-2.8.7/CMakeCPack.cmake
cmake-2.8.7/CMakeCPackOptions.cmake.in
cmake-2.8.7/CMakeGraphVizOptions.cmake
cmake-2.8.7/CMakeLists.txt
cmake-2.8.7/CMakeLogo.gif
cmake-2.8.7/CompileFlags.cmake
cmake-2.8.7/configure
cmake-2.8.7/Copyright.txt
cmake-2.8.7/CTestConfig.cmake
cmake-2.8.7/CTestCustom.cmake.in
.......
.......
cmake-2.8.7/Utilities/Release/ferrari_sgi64_release.cmake
cmake-2.8.7/Utilities/Release/ferrari_sgi_release.cmake
cmake-2.8.7/Utilities/Release/hythloth_release.cmake
cmake-2.8.7/Utilities/Release/magrathea_release.cmake
cmake-2.8.7/Utilities/Release/README
cmake-2.8.7/Utilities/Release/release_cmake.cmake
cmake-2.8.7/Utilities/Release/release_cmake.sh.in
cmake-2.8.7/Utilities/Release/upload_release.cmake
cmake-2.8.7/Utilities/Release/v20n250_aix_release.cmake
cmake-2.8.7/Utilities/xml/xhtml-lat1.ent
cmake-2.8.7/Utilities/xml/xhtml-special.ent
cmake-2.8.7/Utilities/xml/xhtml-symbol.ent
cmake-2.8.7/Utilities/xml/xhtml1-strict.dtd
[root@localhost download]#
[root@localhost download]# cd cmake-2.8.7
[root@localhost cmake-2.8.7]# ./bootstrap
---------------------------------------------
CMake 2.8.7, Copyright 2000-2009 Kitware, Inc.
Found GNU toolchain
C compiler on this system is: gcc
C++ compiler on this system is: g++
Makefile processor on this system is: gmake
g++ is GNU compiler
g++ has STL in std:: namespace
g++ has ANSI streams
g++ has streams in std:: namespace
g++ has sstream
g++ has operator!=(string, char*)
g++ has stl iterator_traits
g++ has standard template allocator
g++ has allocator<>::rebind<>
g++ does not have non-standard allocator<>::max_size argument
g++ has stl containers supporting allocator objects
g++ has header cstddef
g++ requires template friends to use <>
g++ supports member templates
g++ has standard template specialization syntax
g++ has argument dependent lookup
g++ has struct stat with st_mtim member
g++ has ios::binary openmode
g++ has ANSI for scoping
---------------------------------------------
g++ -I/download/cmake-2.8.7/Bootstrap.cmk -I/download/cmake-2.8.7/Source -I/download/cmake-2.8.7/Bootstrap.cmk -c /download/cmake-2.8.7/Source/cmStandardIncludes.cxx -o cmStandardIncludes.o
g++ -I/download/cmake-2.8.7/Bootstrap.cmk -I/download/cmake-2.8.7/Source -I/download/cmake-2.8.7/Bootstrap.cmk -c /download/cmake-2.8.7/Source/cmake.cxx -o cmake.o
......
......
-- Looking for getxattr - found
-- Looking for lgetxattr
-- Looking for lgetxattr - found
-- Looking for listxattr
-- Looking for listxattr - found
-- Looking for llistxattr
-- Looking for llistxattr - found
-- Looking for lsetxattr
-- Looking for lsetxattr - found
-- Check if the system is big endian
-- Searching 16 bit integer
-- Check size of unsigned short
-- Check size of unsigned short - done
-- Using unsigned short
-- Check if the system is big endian - little endian
Curses libraries were not found. Curses GUI for CMake will not be built.
-- Looking for elf.h
-- Looking for elf.h - found
-- Looking for a Fortran compiler
-- Looking for a Fortran compiler - /usr/bin/f95
-- Could NOT find Qt4 (missing: QT_QMAKE_EXECUTABLE QT_MOC_EXECUTABLE QT_RCC_EXECUTABLE QT_UIC_EXECUTABLE QT_INCLUDE_DIR QT_LIBRARY_DIR QT_QTCORE_LIBRARY)
-- Configuring done
-- Generating done
-- Build files have been written to: /download/cmake-2.8.7
---------------------------------------------
CMake has bootstrapped. Now run gmake.
[root@localhost cmake-2.8.7]#
[root@localhost cmake-2.8.7]# make
Scanning dependencies of target cmIML_test
[ 0%] Building C object Utilities/KWIML/test/CMakeFiles/cmIML_test.dir/test.c.o
[ 1%] Building C object Utilities/KWIML/test/CMakeFiles/cmIML_test.dir/test_ABI_C.c.o
[ 1%] Building C object Utilities/KWIML/test/CMakeFiles/cmIML_test.dir/test_INT_C.c.o
[ 1%] Building C object Utilities/KWIML/test/CMakeFiles/cmIML_test.dir/test_include_C.c.o
[ 2%] Building CXX object Utilities/KWIML/test/CMakeFiles/cmIML_test.dir/test_ABI_CXX.cxx.o
[ 2%] Building CXX object Utilities/KWIML/test/CMakeFiles/cmIML_test.dir/test_INT_CXX.cxx.o
[ 2%] Building CXX object Utilities/KWIML/test/CMakeFiles/cmIML_test.dir/test_include_CXX.cxx.o
Linking CXX executable cmIML_test
[ 2%] Built target cmIML_test
Scanning dependencies of target cmsys
[ 3%] Building C object Source/kwsys/CMakeFiles/cmsys.dir/ProcessUNIX.c.o
.......
.......
Scanning dependencies of target CMakeLibTests
[ 98%] Building CXX object Tests/CMakeLib/CMakeFiles/CMakeLibTests.dir/CMakeLibTests.cxx.o
[ 98%] Building CXX object Tests/CMakeLib/CMakeFiles/CMakeLibTests.dir/testUTF8.cxx.o
[ 98%] Building CXX object Tests/CMakeLib/CMakeFiles/CMakeLibTests.dir/testXMLParser.cxx.o
[ 99%] Building CXX object Tests/CMakeLib/CMakeFiles/CMakeLibTests.dir/testXMLSafe.cxx.o
Linking CXX executable CMakeLibTests
[ 99%] Built target CMakeLibTests
Scanning dependencies of target runcompilecommands
[100%] Building CXX object Tests/CMakeLib/CMakeFiles/runcompilecommands.dir/run_compile_commands.cxx.o
Linking CXX executable runcompilecommands
[100%] Built target runcompilecommands
Scanning dependencies of target foo
[100%] Building CXX object Tests/FindPackageModeMakefileTest/CMakeFiles/foo.dir/foo.cpp.o
Linking CXX static library libfoo.a
[100%] Built target foo
[root@localhost cmake-2.8.7]#
[root@localhost cmake-2.8.7]# make install
[ 2%] Built target cmIML_test
[ 7%] Built target cmsys
[ 7%] Built target cmsysTestDynload
[ 9%] Built target cmsys_c
[ 9%] Built target cmsysTestProcess
[ 10%] Built target cmsysTestSharedForward
[ 11%] Built target cmsysTestsC
[ 13%] Built target cmsysTestsCxx
[ 16%] Built target cmzlib
[ 33%] Built target cmcurl
[ 33%] Built target LIBCURL
[ 33%] Built target cmcompress
[ 35%] Built target cmbzip2
[ 53%] Built target cmlibarchive
[ 53%] Built target cmexpat
[ 79%] Built target CMakeLib
[ 82%] Built target CPackLib
[ 94%] Built target CTestLib
[ 95%] Built target cmake
[ 96%] Built target cpack
[ 96%] Built target ctest
[ 97%] Built target documentation
[ 99%] Built target CMakeLibTests
[100%] Built target runcompilecommands
.......
.......
-- Installing: /usr/local/doc/cmake-2.8/cmake-properties.html
-- Installing: /usr/local/doc/cmake-2.8/cmake-variables.html
-- Installing: /usr/local/doc/cmake-2.8/cmake-modules.html
-- Installing: /usr/local/doc/cmake-2.8/cmake-commands.html
-- Installing: /usr/local/doc/cmake-2.8/cmake-compatcommands.html
-- Installing: /usr/local/doc/cmake-2.8/ctest.html
-- Installing: /usr/local/doc/cmake-2.8/cpack.html
-- Installing: /usr/local/doc/cmake-2.8/cmake.txt
-- Installing: /usr/local/doc/cmake-2.8/cmake.docbook
-- Installing: /usr/local/doc/cmake-2.8/cmake-policies.txt
-- Installing: /usr/local/doc/cmake-2.8/cmake-properties.txt
-- Installing: /usr/local/doc/cmake-2.8/cmake-variables.txt
-- Installing: /usr/local/doc/cmake-2.8/cmake-modules.txt
-- Installing: /usr/local/doc/cmake-2.8/cmake-commands.txt
-- Installing: /usr/local/doc/cmake-2.8/cmake-compatcommands.txt
-- Installing: /usr/local/doc/cmake-2.8/ctest.txt
-- Installing: /usr/local/doc/cmake-2.8/ctest.docbook
-- Installing: /usr/local/doc/cmake-2.8/cpack.txt
-- Installing: /usr/local/doc/cmake-2.8/cpack.docbook
-- Installing: /usr/local/share/aclocal/cmake.m4
[root@localhost cmake-2.8.7]#
libmcrypt 설치
[root@Cacti download]# tar zxvf libmcrypt-2.5.8.tar.gz
libmcrypt-2.5.8/
libmcrypt-2.5.8/THANKS
libmcrypt-2.5.8/Makefile.in
libmcrypt-2.5.8/config.log
libmcrypt-2.5.8/ltmain.sh
libmcrypt-2.5.8/install-sh
libmcrypt-2.5.8/config.sub
libmcrypt-2.5.8/Makefile.am
libmcrypt-2.5.8/config.h.in
libmcrypt-2.5.8/aclocal.m4
.......
.......
libmcrypt-2.5.8/stamp-h1
libmcrypt-2.5.8/acinclude.m4
libmcrypt-2.5.8/buildconf
libmcrypt-2.5.8/libtool
libmcrypt-2.5.8/include/
libmcrypt-2.5.8/include/Makefile.in
libmcrypt-2.5.8/include/Makefile.am
libmcrypt-2.5.8/include/mutils/
libmcrypt-2.5.8/include/mutils/mcrypt.h.in
libmcrypt-2.5.8/include/mutils/mcrypt.h
libmcrypt-2.5.8/include/mcrypt.h
libmcrypt-2.5.8/README
libmcrypt-2.5.8/configure.in
[root@Cacti download]#
[root@Cacti download]# cd libmcrypt-2.5.8
[root@Cacti libmcrypt-2.5.8]# ./configure --prefix=/usr/local
checking build system type... i686-redhat-linux-gnu
checking host system type... i686-redhat-linux-gnu
checking target system type... i686-redhat-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
.......
.......
config.status: creating include/mutils/mcrypt.h
config.status: creating include/Makefile
config.status: creating modules/Makefile
config.status: creating modules/modes/Makefile
config.status: creating modules/algorithms/Makefile
config.status: creating lib/libmcrypt-config
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing default-1 commands
[root@Cacti libmcrypt-2.5.8]#
[root@Cacti libmcrypt-2.5.8]#
[root@Cacti libmcrypt-2.5.8]# make
make all-recursive
make[1]: Entering directory `/download/libmcrypt-2.5.8'
Making all in modules
make[2]: Entering directory `/download/libmcrypt-2.5.8/modules'
Making all in algorithms
make[3]: Entering directory `/download/libmcrypt-2.5.8/modules/algorithms'
if /bin/sh ../../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I. -I../.. -I../../lib -g -O2 -MT 3-way.lo -MD -MP -MF ".deps/3-way.Tpo" -c -o 3-way.lo 3-way.c; \
then mv -f ".deps/3-way.Tpo" ".deps/3-way.Plo"; else rm -f ".deps/3-way.Tpo"; exit 1; fi
.......
......
creating aestest
make[2]: Leaving directory `/download/libmcrypt-2.5.8/src'
Making all in doc
make[2]: Entering directory `/download/libmcrypt-2.5.8/doc'
make[2]: `all'를 위해 할 일이 없습니다
make[2]: Leaving directory `/download/libmcrypt-2.5.8/doc'
make[2]: Entering directory `/download/libmcrypt-2.5.8'
make[2]: Leaving directory `/download/libmcrypt-2.5.8'
make[1]: Leaving directory `/download/libmcrypt-2.5.8'
[root@Cacti libmcrypt-2.5.8]#
[root@Cacti libmcrypt-2.5.8]#
[root@Cacti libmcrypt-2.5.8]# make install
Making install in modules
make[1]: Entering directory `/download/libmcrypt-2.5.8/modules'
Making install in algorithms
make[2]: Entering directory `/download/libmcrypt-2.5.8/modules/algorithms'
make[3]: Entering directory `/download/libmcrypt-2.5.8/modules/algorithms'
test -z "/usr/local/lib/libmcrypt" || mkdir -p -- "/usr/local/lib/libmcrypt"
make[3]: `install-data-am'를 위해 할 일이 없습니다
make[3]: Leaving directory `/download/libmcrypt-2.5.8/modules/algorithms'
make[2]: Leaving directory `/download/libmcrypt-2.5.8/modules/algorithms'
Making install in modes
make[2]: Entering directory `/download/libmcrypt-2.5.8/modules/modes
.......
.......
test -z "/usr/local/man/man3" || mkdir -p -- "/usr/local/man/man3"
/usr/bin/install -c -m 644 './mcrypt.3' '/usr/local/man/man3/mcrypt.3'
make[2]: Leaving directory `/download/libmcrypt-2.5.8/doc'
make[1]: Leaving directory `/download/libmcrypt-2.5.8/doc'
make[1]: Entering directory `/download/libmcrypt-2.5.8'
make[2]: Entering directory `/download/libmcrypt-2.5.8'
make[2]: `install-exec-am'를 위해 할 일이 없습니다
make[2]: `install-data-am'를 위해 할 일이 없습니다
make[2]: Leaving directory `/download/libmcrypt-2.5.8'
make[1]: Leaving directory `/download/libmcrypt-2.5.8'
[root@Cacti libmcrypt-2.5.8]#
Mysql 설치
[root@localhost download]# tar zxvf mysql-5.5.20.tar.gz
mysql-5.5.20/
mysql-5.5.20/mysql-test/
mysql-5.5.20/mysql-test/purify.supp
mysql-5.5.20/mysql-test/extra/
mysql-5.5.20/mysql-test/extra/binlog_tests/
mysql-5.5.20/mysql-test/extra/binlog_tests/database.test
mysql-5.5.20/mysql-test/extra/binlog_tests/binlog_cache_stat.test
mysql-5.5.20/mysql-test/extra/binlog_tests/implicit.test
mysql-5.5.20/mysql-test/extra/binlog_tests/ctype_ucs_binlog.test
mysql-5.5.20/mysql-test/extra/binlog_tests/drop_temp_table.test
mysql-5.5.20/mysql-test/extra/binlog_tests/binlog_insert_delayed.test
mysql-5.5.20/mysql-test/extra/binlog_tests/blackhole.test
mysql-5.5.20/mysql-test/extra/binlog_tests/drop_table.test
mysql-5.5.20/mysql-test/extra/binlog_tests/ctype_cp932.test
mysql-5.5.20/mysql-test/extra/binlog_tests/mix_innodb_myisam_binlog.test
.......
.......
mysql-5.5.20/cmd-line-utils/libedit/readline.c
mysql-5.5.20/cmd-line-utils/libedit/filecomplete.c
mysql-5.5.20/cmd-line-utils/libedit/CMakeLists.txt
mysql-5.5.20/cmd-line-utils/libedit/keymacro.c
mysql-5.5.20/cmd-line-utils/libedit/README
mysql-5.5.20/cmd-line-utils/libedit/sys.h
mysql-5.5.20/cmd-line-utils/libedit/parse.h
mysql-5.5.20/cmd-line-utils/libedit/config.h
mysql-5.5.20/cmd-line-utils/libedit/map.c
mysql-5.5.20/cmd-line-utils/libedit/read.h
mysql-5.5.20/cmd-line-utils/libedit/chartype.c
mysql-5.5.20/cmd-line-utils/libedit/terminal.c
mysql-5.5.20/cmd-line-utils/libedit/history.c
mysql-5.5.20/cmd-line-utils/libedit/el.c
mysql-5.5.20/cmd-line-utils/libedit/hist.c
mysql-5.5.20/cmd-line-utils/libedit/refresh.h
[root@localhost download]#
[root@localhost download]#
[root@localhost download]# cd mysql-5.5.20
[root@localhost mysql-5.5.20]# groupadd mysql
[root@localhost mysql-5.5.20]# useradd -g mysql -s /bin/false mysql
[root@localhost mysql-5.5.20]#
[root@localhost mysql-5.5.20]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/server/mysql -DMYSQL_DATADIR=/usr/local/server/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DSYSCONFDIR=/etc -DMYSQL_TCP_PORT=3306
-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Looking for SHM_HUGETLB
-- Looking for SHM_HUGETLB - found
.......
.......
-- Looking for strvis - not found
-- Looking for strunvis
-- Looking for strunvis - not found
-- Looking for include files HAVE_LIBAIO_H
-- Looking for include files HAVE_LIBAIO_H - not found.
-- Looking for io_queue_init in aio
-- Looking for io_queue_init in aio - not found
-- Performing Test HAVE_IB_GCC_ATOMIC_BUILTINS
-- Performing Test HAVE_IB_GCC_ATOMIC_BUILTINS - Failed
-- Performing Test HAVE_IB_ATOMIC_PTHREAD_T_GCC
-- Performing Test HAVE_IB_ATOMIC_PTHREAD_T_GCC - Failed
-- Check size of pthread_t
-- Check size of pthread_t - done
-- Performing Test HAVE_PEERCRED
-- Performing Test HAVE_PEERCRED - Success
-- Configuring done
-- Generating done
-- Build files have been written to: /download/mysql-5.5.20
[root@localhost mysql-5.5.20]#
[root@localhost mysql-5.5.20]#
[root@localhost mysql-5.5.20]# make
Scanning dependencies of target INFO_BIN
[ 0%] Built target INFO_BIN
Scanning dependencies of target INFO_SRC
[ 0%] Built target INFO_SRC
Scanning dependencies of target abi_check
[ 0%] Built target abi_check
[ 0%] Generating common.h
[ 0%] Generating help.c
[ 0%] Generating help.h
[ 0%] Generating vi.h
[ 0%] Generating emacs.h
[ 0%] Generating fcns.c
[ 1%] Generating fcns.h
Scanning dependencies of target edit
[ 1%] Building C object cmd-line-utils/libedit/CMakeFiles/edit.dir/chared.c.o
[ 1%] Building C object cmd-line-utils/libedit/CMakeFiles/edit.dir/chartype.c.o
[ 2%] Building C object cmd-line-utils/libedit/CMakeFiles/edit.dir/el.c.o
[ 2%] Building C object cmd-line-utils/libedit/CMakeFiles/edit.dir/eln.c.o
[ 2%] Building C object cmd-line-utils/libedit/CMakeFiles/edit.dir/history.c.o
[ 2%] Building C object cmd-line-utils/libedit/CMakeFiles/edit.dir/historyn.c.o
.......
.......
[100%] Building CXX object sql/CMakeFiles/sql.dir/sql_reload.cc.o
[100%] Building CXX object sql/CMakeFiles/sql.dir/sql_yacc.cc.o
[100%] Building CXX object sql/CMakeFiles/sql.dir/sql_builtin.cc.o
Linking CXX static library libsql.a
[100%] Built target sql
Scanning dependencies of target mysqld
[100%] Building CXX object sql/CMakeFiles/mysqld.dir/main.cc.o
Linking CXX executable mysqld
[100%] Built target mysqld
Scanning dependencies of target udf_example
[100%] Building C object sql/CMakeFiles/udf_example.dir/udf_example.c.o
Linking C shared module udf_example.so
[100%] Built target udf_example
Scanning dependencies of target my_safe_process
[100%] Building CXX object mysql-test/lib/My/SafeProcess/CMakeFiles/my_safe_process.dir/safe_process.cc.o
Linking CXX executable my_safe_process
[100%] Built target my_safe_process
[root@localhost mysql-5.5.20]#
[root@localhost mysql-5.5.20]#
[root@localhost mysql-5.5.20]# make install
[ 0%] Built target INFO_BIN
[ 0%] Built target INFO_SRC
[ 0%] Built target abi_check
[ 6%] Built target edit
[ 7%] Built target mysqlservices
[ 14%] Built target strings
[ 29%] Built target mysys
[ 29%] Built target dbug
[ 29%] Built target comp_err
[ 29%] Built target GenError
[ 29%] Built target example
[ 33%] Built target heap
[ 33%] Built target hp_test1
[ 33%] Built target hp_test2
.......
.......
-- Installing: /usr/local/mysql/man/man1/replace.1
-- Installing: /usr/local/mysql/man/man1/mysqlimport.1
-- Installing: /usr/local/mysql/man/man1/mysql_convert_table_format.1
-- Installing: /usr/local/mysql/man/man1/mysql_config.1
-- Installing: /usr/local/mysql/man/man1/mysqlbug.1
-- Installing: /usr/local/mysql/man/man1/comp_err.1
-- Installing: /usr/local/mysql/man/man1/mysqlcheck.1
-- Installing: /usr/local/mysql/man/man1/mysqltest.1
-- Installing: /usr/local/mysql/man/man1/mysql_tzinfo_to_sql.1
-- Installing: /usr/local/mysql/man/man1/mysqlbinlog.1
-- Installing: /usr/local/mysql/man/man1/mysql_install_db.1
-- Installing: /usr/local/mysql/man/man1/mysql_client_test_embedded.1
-- Installing: /usr/local/mysql/man/man1/mysqlhotcopy.1
-- Installing: /usr/local/mysql/man/man1/myisamlog.1
-- Installing: /usr/local/mysql/man/man1/mysqladmin.1
-- Installing: /usr/local/mysql/man/man1/myisamchk.1
-- Installing: /usr/local/mysql/man/man1/mysqld_safe.1
-- Installing: /usr/local/mysql/man/man1/msql2mysql.1
-- Installing: /usr/local/mysql/man/man1/mysql_fix_extensions.1
-- Installing: /usr/local/mysql/man/man8/mysqld.8
[root@localhost mysql-5.5.20]#
[root@localhost mysql-5.5.20]#
[root@localhost mysql-5.5.20]#
[root@localhost mysql-5.5.20]# cd /usr/local/server/mysql/
[root@localhost mysql]# cp support-files/my-medium.cnf /etc/my.cnf
[root@localhost mysql]# chown -R mysql.mysql /usr/local/server/mysql/data
[root@localhost mysql]# ./scripts/mysql_install_db --user=mysql --datadir=/usr/local/server/mysql/data
Installing MySQL system tables...
./bin/mysqld: /lib/libz.so.1: no version information available (required by ./bin/mysqld)
OK
Filling help tables...
./bin/mysqld: /lib/libz.so.1: no version information available (required by ./bin/mysqld)
OK
To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
./bin/mysqladmin -u root password 'new-password'
./bin/mysqladmin -u root -h localhost.localdomain password 'new-password'
Alternatively you can run:
./bin/mysql_secure_installation
which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.
See the manual for more instructions.
You can start the MySQL daemon with:
cd . ; ./bin/mysqld_safe &
You can test the MySQL daemon with mysql-test-run.pl
cd ./mysql-test ; perl mysql-test-run.pl
Please report any problems with the ./bin/mysqlbug script!
[root@localhost mysql]#
[root@localhost mysql]#
[root@localhost mysql]# ln -s /tmp/mysql.sock /usr/local/server/mysql.socket
[root@localhost mysql]#
라이브러리 에러가 발생하면
[root@localhost mysql]# rm -rf /lib/libz.so.1
[root@localhost mysql]# ln -s /usr/local/lib/libz.so.1.2.6 /lib/libz.so.1
[root@localhost mysql]# chown -R mysql:mysql /usr/local/server/mysql/data
[root@localhost mysql]# /usr/local/server/mysql/bin/mysqld_safe &
[1] 15448
[root@localhost mysql]# 120309 06:44:11 mysqld_safe Logging to '/usr/local/server/mysql/data/localhost.localdomain.err'.
120309 06:44:11 mysqld_safe Starting mysqld daemon with databases from /usr/local/server/mysql/data
120309 06:44:11 mysqld_safe mysqld from pid file /usr/local/server/mysql/data/localhost.localdomain.pid ended
[1]+ Done /usr/local/server/mysql/bin/mysqld_safe
[root@localhost mysql]#
[root@localhost mysql]#
서버로 구동하기 위해
[root@Cacti mysql]# cp /usr/local/server/mysql/support-files/mysql.server /etc/init.d/mysqld
시스템 부팅 시 서비스 구동되도록
[root@Cacti mysql]# chkconfig --add mysqld
mysql의 root 패스워드를 설정
[root@Cacti ~]# /usr/local/server/mysql/bin/mysqladmin -u root password mysql
mysql 접속 여부 확인
[root@Cacti ~]#
[root@Cacti ~]# /usr/local/server/mysql/bin/mysql -uroot -pmysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.5.20-log Source distribution
Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec)
mysql>
Apache 설치
아파치 2.4.1 버전으로 올라가면서 MPM을 정상 지원
apr과 apr-util을 소스로 지원하지 않기에 추가 다운로드 하여 설치
- apr (http://archive.apache.org/dist/apr/apr-1.4.6.tar.gz)
- apr-utils (http://archive.apache.org/dist/apr/apr-util-1.4.1.tar.gz)
[root@centos ~]# rpm -e apr-util-1.2.7-11.el5_5.2
오류: Failed dependencies:
libaprutil-1.so.0 is needed by (installed) subversion-1.6.11-7.el5_6.4.i386
[root@centos ~]# rpm -e --nodeps apr-util-1.2.7-11.el5_5.2
[root@centos ~]# rpm -e apr-1.2.7-11.el5_6.5
오류: Failed dependencies:
libapr-1.so.0 is needed by (installed) subversion-1.6.11-7.el5_6.4.i386
[root@centos ~]# rpm -e --nodeps apr-1.2.7-11.el5_6.5
[root@centos ~]# ln -s /usr/local/server/apr
apr/ apr-1.4.6/ apr-1.4.6.tar.gz apr-util/ apr-util-1.4.1/ apr-util-1.4.1.tar.gz
[root@centos ~]# ln -s /usr/local/server/apr/lib/libapr-1.so.0.4.6 /lib/libapr-1.so.0
[root@centos ~]# ln -s /usr/local/server/apr-util/lib/libaprutil-1.so.0.4.1 /lib/libaprutil-1.so.0
apr 설치
[root@Cacti download]# tar zxvf apr-1.4.6.tar.gz
apr-1.4.6/
apr-1.4.6/shmem/
apr-1.4.6/shmem/win32/
apr-1.4.6/shmem/win32/shm.c
apr-1.4.6/shmem/beos/
apr-1.4.6/shmem/beos/shm.c
apr-1.4.6/shmem/os2/
apr-1.4.6/shmem/os2/shm.c
apr-1.4.6/shmem/unix/
apr-1.4.6/shmem/unix/shm.c
apr-1.4.6/buildconf
apr-1.4.6/test/
apr-1.4.6/test/readchild.c
apr-1.4.6/test/testglobalmutex.h
apr-1.4.6/test/testfile.c
apr-1.4.6/test/testdll.dsp
apr-1.4.6/test/testpipe.c
apr-1.4.6/test/NWGNUmakefile
apr-1.4.6/test/testmmap.c
apr-1.4.6/test/teststr.c
apr-1.4.6/test/NWGNUproc_child
.......
.......
apr-1.4.6/dso/
apr-1.4.6/dso/win32/
apr-1.4.6/dso/win32/dso.c
apr-1.4.6/dso/beos/
apr-1.4.6/dso/beos/dso.c
apr-1.4.6/dso/os2/
apr-1.4.6/dso/os2/dso.c
apr-1.4.6/dso/unix/
apr-1.4.6/dso/unix/dso.c
apr-1.4.6/dso/aix/
apr-1.4.6/dso/aix/dso.c
apr-1.4.6/dso/netware/
apr-1.4.6/dso/netware/dso.c
apr-1.4.6/dso/os390/
apr-1.4.6/dso/os390/dso.c
apr-1.4.6/libapr.rc
apr-1.4.6/apr.dsp
[root@Cacti download]#
[root@Cacti download]#
[root@Cacti download]# cd apr-1.4.6
[root@Cacti apr-1.4.6]# ./configure --prefix=/usr/local/server/apr
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu
Configuring APR library
Platform: i686-pc-linux-gnu
checking for working mkdir -p... yes
APR Version: 1.4.6
checking for chosen layout... apr
checking for gcc... gcc
checking whether the C compiler works... yes
.......
.......
restoring LDFLAGS to ""
setting EXTRA_LDFLAGS to ""
restoring LIBS to ""
setting EXTRA_LIBS to "-luuid -lrt -lcrypt -lpthread -ldl"
restoring INCLUDES to ""
setting EXTRA_INCLUDES to ""
configure: creating ./config.status
config.status: creating Makefile
config.status: creating include/apr.h
config.status: creating build/apr_rules.mk
config.status: creating build/pkg/pkginfo
config.status: creating apr-1-config
config.status: creating apr.pc
config.status: creating test/Makefile
config.status: creating test/internal/Makefile
config.status: creating include/arch/unix/apr_private.h
config.status: executing libtool commands
rm: cannot remove `libtoolT': No such file or directory
config.status: executing default commands
[root@Cacti apr-1.4.6]#
[root@Cacti apr-1.4.6]# make && make install
make[1]: Entering directory `/download/apr-1.4.6'
/bin/sh /download/apr-1.4.6/libtool --silent --mode=compile gcc -g -O2 -pthread -DHAVE_CONFIG_H -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -I./include -I/download/apr-1.4.6/include/arch/unix -I./include/arch/unix -I/download/apr-1.4.6/include/arch/unix -I/download/apr-1.4.6/include -o passwd/apr_getpass.lo -c passwd/apr_getpass.c && touch passwd/apr_getpass.lo
.......
.......
See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
/usr/bin/install -c -m 644 apr.exp /usr/local/server/apr/lib/apr.exp
/usr/bin/install -c -m 644 apr.pc /usr/local/server/apr/lib/pkgconfig/apr-1.pc
for f in libtool shlibtool; do \
if test -f ${f}; then /usr/bin/install -c -m 755 ${f} /usr/local/server/apr/build-1; fi; \
done
/usr/bin/install -c -m 755 /download/apr-1.4.6/build/mkdir.sh /usr/local/server/apr/build-1
for f in make_exports.awk make_var_export.awk; do \
/usr/bin/install -c -m 644 /download/apr-1.4.6/build/${f} /usr/local/server/apr/build-1; \
done
/usr/bin/install -c -m 644 build/apr_rules.out /usr/local/server/apr/build-1/apr_rules.mk
/usr/bin/install -c -m 755 apr-config.out /usr/local/server/apr/bin/apr-1-config
[root@Cacti apr-1.4.6]#
apr-util 설치
[root@Cacti download]# tar zxvf apr-util-1.4.1.tar.gz
apr-util-1.4.1/
apr-util-1.4.1/apr-util.pc.in
apr-util-1.4.1/apr-util.spec
apr-util-1.4.1/aprutil.dsp
apr-util-1.4.1/aprutil.dsw
apr-util-1.4.1/apu-config.in
apr-util-1.4.1/buckets/
apr-util-1.4.1/build/
apr-util-1.4.1/build-outputs.mk
apr-util-1.4.1/build.conf
apr-util-1.4.1/buildconf
.......
.......
apr-util-1.4.1/buckets/apr_buckets.c
apr-util-1.4.1/buckets/apr_buckets_alloc.c
apr-util-1.4.1/buckets/apr_buckets_eos.c
apr-util-1.4.1/buckets/apr_buckets_file.c
apr-util-1.4.1/buckets/apr_buckets_flush.c
apr-util-1.4.1/buckets/apr_buckets_heap.c
apr-util-1.4.1/buckets/apr_buckets_mmap.c
apr-util-1.4.1/buckets/apr_buckets_pipe.c
apr-util-1.4.1/buckets/apr_buckets_pool.c
apr-util-1.4.1/buckets/apr_buckets_refcount.c
apr-util-1.4.1/buckets/apr_buckets_simple.c
apr-util-1.4.1/buckets/apr_buckets_socket.c
[root@Cacti download]#
[root@Cacti download]# cd apr-util-1.4.1
[root@Cacti apr-util-1.4.1]# ./configure --prefix=/usr/local/server/apr-util --with-apr=/usr/local/server/apr
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking for working mkdir -p... yes
APR-util Version: 1.4.1
checking for chosen layout... apr-util
checking for gcc... gcc
.......
.......
checking style of crypt_r... struct_crypt_data
adding "/usr/local/server/apr/lib/libapr-1.la" to APRUTIL_LIBS
adding "-luuid" to APRUTIL_LIBS
adding "-lrt" to APRUTIL_LIBS
adding "-lcrypt" to APRUTIL_LIBS
adding "-lpthread" to APRUTIL_LIBS
adding "-ldl" to APRUTIL_LIBS
configure: creating ./config.status
config.status: creating Makefile
config.status: creating export_vars.sh
config.status: creating build/pkg/pkginfo
config.status: creating apr-util.pc
config.status: creating apu-1-config
config.status: creating include/private/apu_select_dbm.h
config.status: creating include/apr_ldap.h
config.status: creating include/apu.h
config.status: creating include/apu_want.h
config.status: creating test/Makefile
config.status: creating include/private/apu_config.h
config.status: executing default commands
[root@Cacti apr-util-1.4.1]#
[root@Cacti apr-util-1.4.1]# make && make install
make[1]: Entering directory `/download/apr-util-1.4.1'
/bin/sh /usr/local/server/apr/build-1/libtool --silent --mode=compile gcc -g -O2 -pthread -DHAVE_CONFIG_H -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -I/download/apr-util-1.4.1/include -I/download/apr-util-1.4.1/include/private -I/usr/local/server/apr/include/apr-1 -o buckets/apr_brigade.lo -c buckets/apr_brigade.c && touch buckets/apr_brigade.lo
.......
.......
Libraries have been installed in:
/usr/local/server/apr-util/lib
If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
- add LIBDIR to the `LD_LIBRARY_PATH' environment variable
during execution
- add LIBDIR to the `LD_RUN_PATH' environment variable
during linking
- use the `-Wl,-rpath -Wl,LIBDIR' linker flag
- have your system administrator add LIBDIR to `/etc/ld.so.conf'
See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
/usr/bin/install -c -m 644 aprutil.exp /usr/local/server/apr-util/lib
/usr/bin/install -c -m 755 apu-config.out /usr/local/server/apr-util/bin/apu-1-config
[root@Cacti apr-util-1.4.1]#
pcre 설치
pcre는 rpm 패키지를 삭제하지 않고 라이브러리 위치만 변경한다.
패키지를 삭제하면 configure 시 에러발생
[root@centos pcre-8.33]# make
rm -f pcre_chartables.c
ln -s ./pcre_chartables.c.dist pcre_chartables.c
make all-am
make[1]: Entering directory `/usr/local/server/pcre-8.33'
CC libpcre_la-pcre_byte_order.lo
CC libpcre_la-pcre_compile.lo
CC libpcre_la-pcre_config.lo
CC libpcre_la-pcre_dfa_exec.lo
CC libpcre_la-pcre_exec.lo
CC libpcre_la-pcre_fullinfo.lo
CC libpcre_la-pcre_get.lo
CC libpcre_la-pcre_globals.lo
CC libpcre_la-pcre_jit_compile.lo
CC libpcre_la-pcre_maketables.lo
CC libpcre_la-pcre_newline.lo
CC libpcre_la-pcre_ord2utf8.lo
CC libpcre_la-pcre_refcount.lo
CC libpcre_la-pcre_string_utils.lo
CC libpcre_la-pcre_study.lo
CC libpcre_la-pcre_tables.lo
CC libpcre_la-pcre_ucd.lo
CC libpcre_la-pcre_valid_utf8.lo
CC libpcre_la-pcre_version.lo
CC libpcre_la-pcre_xclass.lo
CC libpcre_la-pcre_chartables.lo
CCLD libpcre.la
CC libpcreposix_la-pcreposix.lo
CCLD libpcreposix.la
CXX libpcrecpp_la-pcrecpp.lo
libtool: ignoring unknown tag CXX
CXX libpcrecpp_la-pcre_scanner.lo
libtool: ignoring unknown tag CXX
CXX libpcrecpp_la-pcre_stringpiece.lo
libtool: ignoring unknown tag CXX
CXXLD libpcrecpp.la
libtool: ignoring unknown tag CXX
CC pcretest-pcretest.o
CC pcretest-pcre_printint.o
CCLD pcretest
CC pcregrep-pcregrep.o
CCLD pcregrep
CXX pcrecpp_unittest-pcrecpp_unittest.o
CXXLD pcrecpp_unittest
libtool: ignoring unknown tag CXX
CXX pcre_scanner_unittest-pcre_scanner_unittest.o
CXXLD pcre_scanner_unittest
libtool: ignoring unknown tag CXX
CXX pcre_stringpiece_unittest-pcre_stringpiece_unittest.o
CXXLD pcre_stringpiece_unittest
libtool: ignoring unknown tag CXX
make[1]: Leaving directory `/usr/local/server/pcre-8.33'
[root@centos pcre-8.33]# make install
make install-am
make[1]: Entering directory `/usr/local/server/pcre-8.33'
make[2]: Entering directory `/usr/local/server/pcre-8.33'
/bin/mkdir -p '/usr/local/lib'
/bin/sh ./libtool --mode=install /usr/bin/install -c libpcre.la libpcreposix.la libpcrecpp.la '/usr/local/lib'
libtool: install: /usr/bin/install -c .libs/libpcre.so.1.2.1 /usr/local/lib/libpcre.so.1.2.1
libtool: install: (cd /usr/local/lib && { ln -s -f libpcre.so.1.2.1 libpcre.so.1 || { rm -f libpcre.so.1 && ln -s libpcre.so.1.2.1 libpcre.so.1; }; })
libtool: install: (cd /usr/local/lib && { ln -s -f libpcre.so.1.2.1 libpcre.so || { rm -f libpcre.so && ln -s libpcre.so.1.2.1 libpcre.so; }; })
libtool: install: /usr/bin/install -c .libs/libpcre.lai /usr/local/lib/libpcre.la
libtool: install: warning: relinking `libpcreposix.la'
libtool: install: (cd /usr/local/server/pcre-8.33; /bin/sh /usr/local/server/pcre-8.33/libtool --silent --tag CC --mode=relink gcc -fvisibility=hidden -g -O2 -version-info 0:2:0 -o libpcreposix.la -rpath /usr/local/lib libpcreposix_la-pcreposix.lo libpcre.la )
libtool: install: /usr/bin/install -c .libs/libpcreposix.so.0.0.2T /usr/local/lib/libpcreposix.so.0.0.2
libtool: install: (cd /usr/local/lib && { ln -s -f libpcreposix.so.0.0.2 libpcreposix.so.0 || { rm -f libpcreposix.so.0 && ln -s libpcreposix.so.0.0.2 libpcreposix.so.0; }; })
libtool: install: (cd /usr/local/lib && { ln -s -f libpcreposix.so.0.0.2 libpcreposix.so || { rm -f libpcreposix.so && ln -s libpcreposix.so.0.0.2 libpcreposix.so; }; })
libtool: install: /usr/bin/install -c .libs/libpcreposix.lai /usr/local/lib/libpcreposix.la
libtool: install: warning: relinking `libpcrecpp.la'
libtool: install: (cd /usr/local/server/pcre-8.33; /bin/sh /usr/local/server/pcre-8.33/libtool --silent --tag CXX --mode=relink g++ -fvisibility=hidden -fvisibility-inlines-hidden -O2 -version-info 0:0:0 -o libpcrecpp.la -rpath /usr/local/lib libpcrecpp_la-pcrecpp.lo libpcrecpp_la-pcre_scanner.lo libpcrecpp_la-pcre_stringpiece.lo libpcre.la )
libtool: ignoring unknown tag CXX
libtool: install: /usr/bin/install -c .libs/libpcrecpp.so.0.0.0T /usr/local/lib/libpcrecpp.so.0.0.0
libtool: install: (cd /usr/local/lib && { ln -s -f libpcrecpp.so.0.0.0 libpcrecpp.so.0 || { rm -f libpcrecpp.so.0 && ln -s libpcrecpp.so.0.0.0 libpcrecpp.so.0; }; })
libtool: install: (cd /usr/local/lib && { ln -s -f libpcrecpp.so.0.0.0 libpcrecpp.so || { rm -f libpcrecpp.so && ln -s libpcrecpp.so.0.0.0 libpcrecpp.so; }; })
libtool: install: /usr/bin/install -c .libs/libpcrecpp.lai /usr/local/lib/libpcrecpp.la
libtool: install: /usr/bin/install -c .libs/libpcre.a /usr/local/lib/libpcre.a
libtool: install: chmod 644 /usr/local/lib/libpcre.a
libtool: install: ranlib /usr/local/lib/libpcre.a
libtool: install: /usr/bin/install -c .libs/libpcreposix.a /usr/local/lib/libpcreposix.a
libtool: install: chmod 644 /usr/local/lib/libpcreposix.a
libtool: install: ranlib /usr/local/lib/libpcreposix.a
libtool: install: /usr/bin/install -c .libs/libpcrecpp.a /usr/local/lib/libpcrecpp.a
libtool: install: chmod 644 /usr/local/lib/libpcrecpp.a
libtool: install: ranlib /usr/local/lib/libpcrecpp.a
libtool: finish: PATH="/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin:/usr/local/server/mysql/bin:/usr/local/server/apache/bin:/sbin" ldconfig -n /usr/local/lib
----------------------------------------------------------------------
Libraries have been installed in:
/usr/local/lib
If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
- add LIBDIR to the `LD_LIBRARY_PATH' environment variable
during execution
- add LIBDIR to the `LD_RUN_PATH' environment variable
during linking
- use the `-Wl,-rpath -Wl,LIBDIR' linker flag
- have your system administrator add LIBDIR to `/etc/ld.so.conf'
See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
/bin/mkdir -p '/usr/local/bin'
/bin/sh ./libtool --mode=install /usr/bin/install -c pcretest pcregrep '/usr/local/bin'
libtool: install: /usr/bin/install -c pcretest /usr/local/bin/pcretest
libtool: install: /usr/bin/install -c pcregrep /usr/local/bin/pcregrep
/bin/mkdir -p '/usr/local/bin'
/usr/bin/install -c pcre-config '/usr/local/bin'
/bin/mkdir -p '/usr/local/share/doc/pcre'
/usr/bin/install -c -m 644 doc/pcre.txt doc/pcre-config.txt doc/pcregrep.txt doc/pcretest.txt AUTHORS COPYING ChangeLog LICENCE NEWS README '/usr/local/share/doc/pcre'
/bin/mkdir -p '/usr/local/share/doc/pcre/html'
/usr/bin/install -c -m 644 doc/html/NON-AUTOTOOLS-BUILD.txt doc/html/README.txt doc/html/index.html doc/html/pcre-config.html doc/html/pcre.html doc/html/pcre16.html doc/html/pcre32.html doc/html/pcre_assign_jit_stack.html doc/html/pcre_compile.html doc/html/pcre_compile2.html doc/html/pcre_config.html doc/html/pcre_copy_named_substring.html doc/html/pcre_copy_substring.html doc/html/pcre_dfa_exec.html doc/html/pcre_exec.html doc/html/pcre_free_study.html doc/html/pcre_free_substring.html doc/html/pcre_free_substring_list.html doc/html/pcre_fullinfo.html doc/html/pcre_get_named_substring.html doc/html/pcre_get_stringnumber.html doc/html/pcre_get_stringtable_entries.html doc/html/pcre_get_substring.html doc/html/pcre_get_substring_list.html doc/html/pcre_jit_exec.html doc/html/pcre_jit_stack_alloc.html doc/html/pcre_jit_stack_free.html doc/html/pcre_maketables.html doc/html/pcre_pattern_to_host_byte_order.html doc/html/pcre_refcount.html doc/html/pcre_study.html doc/html/pcre_utf16_to_host_byte_order.html doc/html/pcre_utf32_to_host_byte_order.html doc/html/pcre_version.html doc/html/pcreapi.html doc/html/pcrebuild.html doc/html/pcrecallout.html doc/html/pcrecompat.html doc/html/pcredemo.html doc/html/pcregrep.html '/usr/local/share/doc/pcre/html'
/usr/bin/install -c -m 644 doc/html/pcrejit.html doc/html/pcrelimits.html doc/html/pcrematching.html doc/html/pcrepartial.html doc/html/pcrepattern.html doc/html/pcreperform.html doc/html/pcreposix.html doc/html/pcreprecompile.html doc/html/pcresample.html doc/html/pcrestack.html doc/html/pcresyntax.html doc/html/pcretest.html doc/html/pcreunicode.html '/usr/local/share/doc/pcre/html'
/bin/mkdir -p '/usr/local/share/doc/pcre/html'
/usr/bin/install -c -m 644 doc/html/pcrecpp.html '/usr/local/share/doc/pcre/html'
/bin/mkdir -p '/usr/local/include'
/usr/bin/install -c -m 644 pcreposix.h pcrecpp.h pcre_scanner.h '/usr/local/include'
/bin/mkdir -p '/usr/local/share/man/man1'
/usr/bin/install -c -m 644 doc/pcre-config.1 doc/pcregrep.1 doc/pcretest.1 '/usr/local/share/man/man1'
/bin/mkdir -p '/usr/local/share/man/man3'
/usr/bin/install -c -m 644 doc/pcre.3 doc/pcre16.3 doc/pcre32.3 doc/pcre_assign_jit_stack.3 doc/pcre_compile.3 doc/pcre_compile2.3 doc/pcre_config.3 doc/pcre_copy_named_substring.3 doc/pcre_copy_substring.3 doc/pcre_dfa_exec.3 doc/pcre_exec.3 doc/pcre_free_study.3 doc/pcre_free_substring.3 doc/pcre_free_substring_list.3 doc/pcre_fullinfo.3 doc/pcre_get_named_substring.3 doc/pcre_get_stringnumber.3 doc/pcre_get_stringtable_entries.3 doc/pcre_get_substring.3 doc/pcre_get_substring_list.3 doc/pcre_jit_exec.3 doc/pcre_jit_stack_alloc.3 doc/pcre_jit_stack_free.3 doc/pcre_maketables.3 doc/pcre_pattern_to_host_byte_order.3 doc/pcre_refcount.3 doc/pcre_study.3 doc/pcre_utf16_to_host_byte_order.3 doc/pcre_utf32_to_host_byte_order.3 doc/pcre_version.3 doc/pcreapi.3 doc/pcrebuild.3 doc/pcrecallout.3 doc/pcrecompat.3 doc/pcredemo.3 doc/pcrejit.3 doc/pcrelimits.3 doc/pcrematching.3 doc/pcrepartial.3 doc/pcrepattern.3 '/usr/local/share/man/man3'
/usr/bin/install -c -m 644 doc/pcreperform.3 doc/pcreposix.3 doc/pcreprecompile.3 doc/pcresample.3 doc/pcrestack.3 doc/pcresyntax.3 doc/pcreunicode.3 doc/pcrecpp.3 '/usr/local/share/man/man3'
/bin/mkdir -p '/usr/local/include'
/usr/bin/install -c -m 644 pcre.h pcrecpparg.h pcre_stringpiece.h '/usr/local/include'
/bin/mkdir -p '/usr/local/lib/pkgconfig'
/usr/bin/install -c -m 644 libpcre.pc libpcreposix.pc libpcrecpp.pc '/usr/local/lib/pkgconfig'
make install-data-hook
make[3]: Entering directory `/usr/local/server/pcre-8.33'
ln -sf pcre_assign_jit_stack.3 /usr/local/share/man/man3/pcre16_assign_jit_stack.3
ln -sf pcre_compile.3 /usr/local/share/man/man3/pcre16_compile.3
ln -sf pcre_compile2.3 /usr/local/share/man/man3/pcre16_compile2.3
ln -sf pcre_config.3 /usr/local/share/man/man3/pcre16_config.3
ln -sf pcre_copy_named_substring.3 /usr/local/share/man/man3/pcre16_copy_named_substring.3
ln -sf pcre_copy_substring.3 /usr/local/share/man/man3/pcre16_copy_substring.3
ln -sf pcre_dfa_exec.3 /usr/local/share/man/man3/pcre16_dfa_exec.3
ln -sf pcre_exec.3 /usr/local/share/man/man3/pcre16_exec.3
ln -sf pcre_free_study.3 /usr/local/share/man/man3/pcre16_free_study.3
ln -sf pcre_free_substring.3 /usr/local/share/man/man3/pcre16_free_substring.3
ln -sf pcre_free_substring_list.3 /usr/local/share/man/man3/pcre16_free_substring_list.3
ln -sf pcre_fullinfo.3 /usr/local/share/man/man3/pcre16_fullinfo.3
ln -sf pcre_get_named_substring.3 /usr/local/share/man/man3/pcre16_get_named_substring.3
ln -sf pcre_get_stringnumber.3 /usr/local/share/man/man3/pcre16_get_stringnumber.3
ln -sf pcre_get_stringtable_entries.3 /usr/local/share/man/man3/pcre16_get_stringtable_entries.3
ln -sf pcre_get_substring.3 /usr/local/share/man/man3/pcre16_get_substring.3
ln -sf pcre_get_substring_list.3 /usr/local/share/man/man3/pcre16_get_substring_list.3
ln -sf pcre_jit_exec.3 /usr/local/share/man/man3/pcre16_jit_exec.3
ln -sf pcre_jit_stack_alloc.3 /usr/local/share/man/man3/pcre16_jit_stack_alloc.3
ln -sf pcre_jit_stack_free.3 /usr/local/share/man/man3/pcre16_jit_stack_free.3
ln -sf pcre_maketables.3 /usr/local/share/man/man3/pcre16_maketables.3
ln -sf pcre_pattern_to_host_byte_order.3 /usr/local/share/man/man3/pcre16_pattern_to_host_byte_order.3
ln -sf pcre_refcount.3 /usr/local/share/man/man3/pcre16_refcount.3
ln -sf pcre_study.3 /usr/local/share/man/man3/pcre16_study.3
ln -sf pcre_utf16_to_host_byte_order.3 /usr/local/share/man/man3/pcre16_utf16_to_host_byte_order.3
ln -sf pcre_version.3 /usr/local/share/man/man3/pcre16_version.3
ln -sf pcre_assign_jit_stack.3 /usr/local/share/man/man3/pcre32_assign_jit_stack.3
ln -sf pcre_compile.3 /usr/local/share/man/man3/pcre32_compile.3
ln -sf pcre_compile2.3 /usr/local/share/man/man3/pcre32_compile2.3
ln -sf pcre_config.3 /usr/local/share/man/man3/pcre32_config.3
ln -sf pcre_copy_named_substring.3 /usr/local/share/man/man3/pcre32_copy_named_substring.3
ln -sf pcre_copy_substring.3 /usr/local/share/man/man3/pcre32_copy_substring.3
ln -sf pcre_dfa_exec.3 /usr/local/share/man/man3/pcre32_dfa_exec.3
ln -sf pcre_exec.3 /usr/local/share/man/man3/pcre32_exec.3
ln -sf pcre_free_study.3 /usr/local/share/man/man3/pcre32_free_study.3
ln -sf pcre_free_substring.3 /usr/local/share/man/man3/pcre32_free_substring.3
ln -sf pcre_free_substring_list.3 /usr/local/share/man/man3/pcre32_free_substring_list.3
ln -sf pcre_fullinfo.3 /usr/local/share/man/man3/pcre32_fullinfo.3
ln -sf pcre_get_named_substring.3 /usr/local/share/man/man3/pcre32_get_named_substring.3
ln -sf pcre_get_stringnumber.3 /usr/local/share/man/man3/pcre32_get_stringnumber.3
ln -sf pcre_get_stringtable_entries.3 /usr/local/share/man/man3/pcre32_get_stringtable_entries.3
ln -sf pcre_get_substring.3 /usr/local/share/man/man3/pcre32_get_substring.3
ln -sf pcre_get_substring_list.3 /usr/local/share/man/man3/pcre32_get_substring_list.3
ln -sf pcre_jit_exec.3 /usr/local/share/man/man3/pcre32_jit_exec.3
ln -sf pcre_jit_stack_alloc.3 /usr/local/share/man/man3/pcre32_jit_stack_alloc.3
ln -sf pcre_jit_stack_free.3 /usr/local/share/man/man3/pcre32_jit_stack_free.3
ln -sf pcre_maketables.3 /usr/local/share/man/man3/pcre32_maketables.3
ln -sf pcre_pattern_to_host_byte_order.3 /usr/local/share/man/man3/pcre32_pattern_to_host_byte_order.3
ln -sf pcre_refcount.3 /usr/local/share/man/man3/pcre32_refcount.3
ln -sf pcre_study.3 /usr/local/share/man/man3/pcre32_study.3
ln -sf pcre_utf32_to_host_byte_order.3 /usr/local/share/man/man3/pcre32_utf32_to_host_byte_order.3
ln -sf pcre_version.3 /usr/local/share/man/man3/pcre32_version.3
make[3]: Leaving directory `/usr/local/server/pcre-8.33'
make[2]: Leaving directory `/usr/local/server/pcre-8.33'
make[1]: Leaving directory `/usr/local/server/pcre-8.33'
[root@centos pcre-8.33]# rpm -qa|grep pcre
grep: error while loading shared libraries: libpcre.so.0: cannot open shared object file: No such file or directory
[root@centos pcre-8.33]# ln -s /usr/local/lib/libpcre
libpcre.a libpcre.so.1 libpcrecpp.la libpcrecpp.so.0.0.0 libpcreposix.so
libpcre.la libpcre.so.1.2.1 libpcrecpp.so libpcreposix.a libpcreposix.so.0
libpcre.so libpcrecpp.a libpcrecpp.so.0 libpcreposix.la libpcreposix.so.0.0.2
[root@centos pcre-8.33]# ln -s /usr/local/lib/libpcre.so.1.2.1 /lib/libpcre.so.0
apache 설치
[root@Cacti download]#
[root@Cacti download]# tar zxvf httpd-2.4.1.tar.gz
httpd-2.4.1/
httpd-2.4.1/.deps
httpd-2.4.1/.gdbinit
httpd-2.4.1/ABOUT_APACHE
httpd-2.4.1/acinclude.m4
httpd-2.4.1/ap.d
httpd-2.4.1/Apache-apr2.dsw
httpd-2.4.1/Apache.dsw
httpd-2.4.1/apache_probes.d
httpd-2.4.1/build/
httpd-2.4.1/BuildAll.dsp
httpd-2.4.1/BuildBin.dsp
httpd-2.4.1/buildconf
.......
.......
httpd-2.4.1/build/sysv_makefile
httpd-2.4.1/build/win32/
httpd-2.4.1/build/win32/apache.ico
httpd-2.4.1/build/win32/httpd.rc
httpd-2.4.1/build/rpm/htcacheclean.init
httpd-2.4.1/build/rpm/httpd.init
httpd-2.4.1/build/rpm/httpd.logrotate
httpd-2.4.1/build/rpm/httpd.spec.in
httpd-2.4.1/build/pkg/buildpkg.sh
httpd-2.4.1/build/pkg/pkginfo.in
httpd-2.4.1/build/pkg/README
httpd-2.4.1/build/aix/aixproto.ksh
httpd-2.4.1/build/aix/buildaix.ksh
httpd-2.4.1/build/aix/README
[root@Cacti download]#
[root@Cacti download]#
[root@Cacti download]# cd httpd-2.4.1
[root@Cacti httpd-2.4.1]# make clean
make: *** 타겟 `clean'를 만들 규칙이 없음. 멈춤.
아파치 실행 시 MPM 방식을 선택해주자.
MPM은 Multi Processing Module 약자로,
클라이언트 요청이 들어 왔을 때 해당 요청을 자식 프로세스에게 어떻게 분배할지 결정하는 것이다.
Module 종류는 prefork와 worker 두가지가 있다.
prefork는 부모 프로세스를 복제해서 자식 프로세스를 생성하여 클라이언트 요청을 처리하며, 프로세스 생성 시 메모리 영역까지
복제되므로 메모리 소모량이 많다.
worker는 thread 기반으로 클라이언트 요청을 처리한다.
prefork 방식으로 컴파일을 위해서는 --with-mpm=prefork 옵션을 추가하며,
worker 방식으로 컴파일을 위해서는 --with-mpm=worker 옵션을 추가하면 된다.
worker 방식으로 컴파일 할 때는 특별한 설정이 없어도 되지만
prefork 방식을 prefork.c 파일을 수정해 주면 좋다.
[root@Cacti httpd-2.4.1]# vi server/mpm/prefork/prefork.c
/* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
...........
...........
#ifndef DEFAULT_SERVER_LIMIT
#define DEFAULT_SERVER_LIMIT 32768
(기본값은 256이며 너무 높지 않게 256배수로 입력)
#endif
.......
.......
static apr_proc_mutex_t *accept_mutex;
static int ap_daemons_to_start=0;
static int ap_daemons_min_free=0;
"server/mpm/prefork/prefork.c" 1545L, 55285C written
MPM은 worker 방식으로 해서 컴파일을 해보자.
[root@Cacti httpd-2.4.1]#
[root@Cacti httpd-2.4.1]#
[root@Cacti httpd-2.4.1]# ./configure --prefix=/usr/local/server/apache --enable-rule=SHARED_CORE --enable-so --enable-rewrite --enable-vhost-alias --enable-ssl --enable-proxy --enable-shared=max --enable-modules=shared --enable-mods-shared=all --with-apr=/usr/local/server/apr --with-apr-util=/usr/local/server/apr-util --with-mpm=worker
checking for chosen layout... Apache
checking for working mkdir -p... yes
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu
.......
.......
checking for gcc option to accept ISO C99... -std=gnu99
checking for pcre-config... false
configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org/
위와 같은 장애 발생 시 pcre-devel 을 설치
[root@Cacti httpd-2.4.1]# yum install pcre-devel
checking for chosen layout... Apache
checking for working mkdir -p... yes
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu
Configuring Apache Portable Runtime library ...
checking for APR... yes
setting CC to "gcc"
.......
.......
config.status: creating docs/conf/extra/httpd-userdir.conf
config.status: creating docs/conf/extra/httpd-vhosts.conf
config.status: creating docs/conf/extra/proxy-html.conf
config.status: creating include/ap_config_layout.h
config.status: creating support/apxs
config.status: creating support/apachectl
config.status: creating support/dbmmanage
config.status: creating support/envvars-std
config.status: creating support/log_server_status
config.status: creating support/logresolve.pl
config.status: creating support/phf_abuse_log.cgi
config.status: creating support/split-logfile
config.status: creating build/rules.mk
config.status: creating build/pkg/pkginfo
config.status: creating build/config_vars.sh
config.status: creating include/ap_config_auto.h
config.status: executing default commands
[root@Cacti httpd-2.4.1]#
[root@Cacti httpd-2.4.1]# make && make install
Making all in srclib
make[1]: Entering directory `/download/httpd-2.4.1/srclib'
make[1]: Leaving directory `/download/httpd-2.4.1/srclib'
Making all in os
make[1]: Entering directory `/download/httpd-2.4.1/os'
Making all in unix
make[2]: Entering directory `/download/httpd-2.4.1/os/unix'
make[3]: Entering directory `/download/httpd-2.4.1/os/unix'
.......
.......
mkdir /usr/local/server/apache/logs
Installing CGIs
mkdir /usr/local/server/apache/cgi-bin
Installing header files
mkdir /usr/local/server/apache/include
Installing build system files
mkdir /usr/local/server/apache/build
Installing man pages and online manual
mkdir /usr/local/server/apache/man
mkdir /usr/local/server/apache/man/man1
mkdir /usr/local/server/apache/man/man8
mkdir /usr/local/server/apache/manual
make[1]: Leaving directory `/download/httpd-2.4.1'
[root@Cacti httpd-2.4.1]#
[root@Cacti httpd-2.4.1]# cp /usr/local/server/apache/bin/apachectl /etc/init.d/httpd
[root@Cacti httpd-2.4.1]# vi /etc/init.d/httpd
#!/bin/bash
#chkconfig: 2345 90 20
#description: init file for Apache server daemon
#processname: /usr/local/server/apache/bin/apachectl
#config: /usr/local/server/apache/conf/httpd.conf
#pidfile: /usr/local/server/apache/logs/httpd.pid
.......
.......
[root@Cacti httpd-2.4.1]#
[root@Cacti httpd-2.4.1]# vi /usr/local/server/apache/conf/httpd.conf
#
# This is the main Apache HTTP server configuration file. It contains the
# configuration directives that give the server its instructions.
# See <URL:http://httpd.apache.org/docs/trunk/> for detailed information.
.......
.......
LoadModule vhost_alias_module modules/mod_vhost_alias.so <-- 주석제거
LoadModule userdir_module modules/mod_userdir.so <-- 주석제거
LoadModule slotmem_shm_module modules/mod_slotmem_shm.so <-- 주석제거
.......
......
부팅 시 구동되도록 서비스 등록
[root@Cacti httpd-2.4.1]# chkconfig --add httpd
worker 운영하기 위해 추가 설정을 해보자
# vi /usr/local/server/apache/conf/httpd.conf
.......
# Server-pool management (MPM specific)
Include conf/extra/httpd-mpm.conf
....
httpd-mpm.conf 파일에 대한 주석을 제거하자.
이제 mpm_worker 관련 설정값을 수정해보자
# vi /usr/local/server/apache/conf/extra/httpd-mpm.conf
.....
# StartServers: initial number of server processes to start
# MinSpareThreads: minimum number of worker threads which are kept spare
# MaxSpareThreads: maximum number of worker threads which are kept spare
# ThreadsPerChild: constant number of worker threads in each server process
# MaxRequestWorkers: maximum number of worker threads
# MaxConnectionsPerChild: maximum number of connections a server process serves
# before terminating
<IfModule mpm_worker_module>
StartServers 2
MinSpareThreads 25
MaxSpareThreads 75
ThreadsPerChild 25
MaxRequestWorkers 150
MaxConnectionsPerChild 0
</IfModule>
.....
StartServers : apache를 구동할 때 초기 httpd 프로세스 개수이다.
MinSpareThreads : 요청을 대기하고 있는 최소 thread 개수. 즉 항상 이정도 개수의 thread을 생성되어 있다는 말이다.
MaxSpareThreads : 요청을 대기하고 있는 최대 thread 개수. 이 값을 넘어서는 thread 개수가 발생했을 때 사용하지 않는 thread를 죽여서 이 개수만큼 유지하려고 한다.
ThreadsPerChild : 프로세스당 thread 개수이다.
MaxRequestWorkers : 최대 thread 개수
MaxConnectionsPerChild : 프로세스 당 최대 요청 개수
PHP 설치
[root@Cacti download]# tar zxvf php-5.3.10.tar.gz
[root@Cacti download]# cd php-5.3.10
[root@Cacti php-5.3.10]# ./configure --with-apxs2=/usr/local/server/apache/bin/apxs --with-mysql=/usr/local/server/mysql --with-mysqli=/usr/local/server/mysql/bin/mysql_config --enable-sockets --with-zlib=/usr/local --with-gd=/usr/local --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --with-freetype-dir=/usr/local --with-mcrypt=/usr/local --enable-mbstring
creating cache ./config.cache
checking for Cygwin environment... no
checking for mingw32 environment... no
checking for egrep... grep -E
checking for a sed that does not truncate output... /bin/sed
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu
.......
.......
creating ./config.status
creating php5.spec
creating main/build-defs.h
creating scripts/phpize
creating scripts/man1/phpize.1
creating scripts/php-config
creating scripts/man1/php-config.1
creating sapi/cli/php.1
creating main/php_config.h
creating main/internal_functions.c
creating main/internal_functions_cli.c
+--------------------------------------------------------------------+
| License: |
| This software is subject to the PHP License, available in this |
| distribution in the file LICENSE. By continuing this installation |
| process, you are bound by the terms of this license agreement. |
| If you do not agree with the terms of this license, you must abort |
| the installation process at this point. |
+--------------------------------------------------------------------+
Thank you for using PHP.
[root@Cacti php-5.3.10]#
[root@Cacti php-5.3.10]#
[root@Cacti download]# make && make install
/bin/sh /download/php-5.3.10/libtool --silent --preserve-dup-deps --mode=compile /download/php-5.3.10/meta_ccld -Iext/date/lib -Iext/date/ -I/download/php-5.3.10/ext/date/ -DPHP_ATOM_INC -I/download/php-5.3.10/include -I/download/php-5.3.10/main -I/download/php-5.3.10 -I/download/php-5.3.10/ext/date/lib -I/download/php-5.3.10/ext/ereg/regex -I/usr/include/libxml2 -I/usr/local/include -I/usr/local/include/freetype2 -I/usr/local/server/mysql/include -I/download/php-5.3.10/ext/sqlite3/libsqlite -I/download/php-5.3.10/TSRM -I/download/php-5.3.10/Zend -D_REENTRANT -I/usr/include -g -O2 -fvisibility=hidden -pthread -DZTS -prefer-non-pic -c /download/php-5.3.10/ext/date/php_date.c -o ext/date/php_date.lo
.......
.......
Installing PEAR environment: /usr/local/lib/php/
[PEAR] Archive_Tar - installed: 1.3.7
[PEAR] Console_Getopt - installed: 1.3.0
[PEAR] Structures_Graph- installed: 1.0.4
[PEAR] XML_Util - installed: 1.2.1
[PEAR] PEAR - installed: 1.9.4
Wrote PEAR system config file at: /usr/local/etc/pear.conf
You may want to add: /usr/local/lib/php to your php.ini include_path
/download/php-5.3.10/build/shtool install -c ext/phar/phar.phar /usr/local/bin
ln -s -f /usr/local/bin/phar.phar /usr/local/bin/phar
Installing PDO headers: /usr/local/include/php/ext/pdo/
[root@Cacti php-5.3.10]#
[root@Cacti php-5.3.10]#
아파치 httpd.conf 파일 수정
[root@Cacti php-5.3.10]# vi /usr/local/server/apache/conf/httpd.conf
#
# This is the main Apache HTTP server configuration file. It contains the
# configuration directives that give the server its instructions.
# See <URL:http://httpd.apache.org/docs/trunk/> for detailed information.
# In particular, see
# <URL:http://httpd.apache.org/docs/trunk/mod/directives.html>
.......
.......
AddType application/x-httpd-php .php .html <- 추가
.......
.......
LoadModule php5_module modules/libphp5.so <- 입력되어 있는지 확인
.......
.......
[root@Cacti php-5.3.10]#
[root@Cacti php-5.3.10]# cp php.ini-production /usr/local/lib/php.ini
[root@Cacti php-5.3.10]#
아파치 구동 시 아래와 같은 에러가 발생하면 apr 이 rpm 으로 설치되어 있을 가능성이 높다
httpd: Syntax error on line 123 of /usr/local/server/apache/conf/httpd.conf: Cannot load /usr/local/server/apache/modules/mod_proxy.so into server: /usr/local/server/apache/modules/mod_proxy.so: undefined symbol: apr_global_mutex_lockfile
# yum erase apr
Zendoptimizer 설치
php v5.3 이 후 부터는 Zendoptimizer가 지원하지 않으며, ZendGuardLoader를 설치해야 한다.
그런데 ZendGuardLoader는 apache mpm worker 를 지원하지 않는다.
따라서 사용하려면 prefork로 운영해야 한다.
worker 운영시 ZendGuardLoader를 설치하면 아래와 같은 메시지가 나온다.
[root@centos php-5.3.x]# php -v
Failed loading /usr/local/server/apache/modules/ZendGuardLoader.so: /usr/local/server/apache/modules/ZendGuardLoader.so: undefined symbol: compiler_globals
PHP 5.3.10 (cli) (built: Nov 6 2013 13:18:20)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies
그래서 pass...
'Study > System' 카테고리의 다른 글
phpMyAdmin 사용하기 (0) | 2012.03.22 |
---|---|
Cacti를 통한 모니터링 (0) | 2012.03.16 |
[네트워크 보안] Q.31 -> TCP_Wrapper를 통한 접근제어 설정 문제 (0) | 2011.11.16 |
[네트워크 보안] Q.23 -> smurf의 증폭사이트로 이용되는 것을 막기 위한 설정 문제 (0) | 2011.11.16 |
[네트워크 보안] Q.20 -> TCP/IP tunning 문제 (0) | 2011.11.15 |
- Total
- Today
- Yesterday
- capinfos
- metasploitable3
- bash modification
- 윈도우 패스워드 복구
- text2pcap
- ssl decrypt
- dvwa
- dvwa_bruteforce
- editcap
- bash parameter
- MySQL csv
- excel_aton
- mergecap
- history timestamp
- filesystem check
- ${1##*.}
- docker_dvwa
- docker
- pcapng
- dvwa_command
- megacli
- cisco ssh
- NX ASLR
- recovery file on linux
- 도커
- tshark
- 리눅스 버전
- oracle 11gr2
- tcpdstat
- webhack
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |