강좌 & 팁
안녕하세요.
유형석입니다.
이번에는 4월에 발매할 ARM PC-V210 으로
APM 설치를 해보도록 하겠습니다.
1. APM
제가 얼마전에 APM Setup 을 사용하여 윈도우에서 간편하게
Apache, PHP, MySQL 을 설치하는 글을 쓴적이 있습니다.
x86에서는 완전 편하죠?
하지만 ARM에서 하려면 아...장난 아닙니다.
죽어 나죠...특히 크로스 컴파일로 하려면...
그래서 이번에 발매하는 ARM PC를 이용해서 ARM용 네이티브 컴파일러를 사용하여 컴파일 해보도록 하겠습니다.
스크롤의 압박이 장난 아니니... 느긋하게 보시길 바랍니다.
2. APACHE
http://httpd.apache.org/download.cgi#apache24
로 접속하여 2.4.4 버전 링크를 클릭해 줍니다.
그러면 위와 같은 화면이 나오는데요.
httpd-2.4.4.tar.gz 파일을 클릭하여 다운로드 받습니다.
$ cd Download
$ tar -zxvf httpd-2.4.4.tar.gz
위의 명령을 수행하여 압축을 풉니다.
$ ./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/aprutil --with-pcre=/usr/local/pcre --enable-module=so --enable-so --with-mpm=worker --enable-cache
./configure 명령으로 빌드 환경 설정을 해줍니다.
하지만 에러가 나실건데요. 필요한 라이브러리들이 없기 때문이죠...
열심히 컴파일 해줘야 합니다.
필요한 것은 위에서 써있듯이 apr, apruitl, pcre 라이브러리 입니다.
http://apr.apache.org/download.cgi
위의 주소로 들어 가서 apr-1.4.6.tar.gz 파일을 다운로드 합니다.
그리고 그 아래에 있는 apr-util-1.5.1.tar.gz 파일도 다운로드 합니다.
그 후 아파치와 동일하게 두파일 모두 압축을 풀고 apr-1.4.6폴더 부터 진입합니다.
$ ./configure --prefix=/usr/local/apr
$ make
$ sudo make install
다행히 아파치 설정보다는 짧게 하실수 있어요! 씐나!
별일 없으시면 apr은 위와 같이 나오시면 됩니다.
$ ./configure --prefix=/usr/local/aprutil --with-apr=/usr/local/apr
$ make
$ sudo make install
apr-util 은 위와 같이 설치 합니다.
꼭 apr을 먼저 make install 하시고 난뒤에 하셔야 합니다.
apr-util 별일 없으면 위와 같이 나와야 합니다.
이번에는 PCRE를 컴파일 해봅시다.
로 접속 하신 후에 Download 에 있는 링크를 클릭해 줍니다.
파일들이 보이면 pcre-8.32.tar.gz 파일을 다운로드 합니다.
$ ./configure --prefix=/usr/local/pcre
$ make
$ sudo make install
압축을 푸시고 위와 같이 환경설정을 하고 인스톨 해주시면 됩니다.
pcre도 별일 없으면 make install 후 위와 같은 화면이 나오시면 됩니다.
아 이제 드디어 apache를 빌드 할 준비가 되었습니다....
다시 아파치 폴더로 돌아 가셔서 컨피그 명령을 입력해 주세요! 뙇! 하고!
$ ./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/aprutil --with-pcre=/usr/local/pcre --enable-module=so --enable-so --with-mpm=worker --enable-cache
$ make
$ sudo make install
참 쉽죠?
아무일도 없다면 make install 후 위와 같은 화면이 나와야 합니다.
$ cd /usr/local/apache2/conf
$ sudo vi httpd.conf
이제 아파치 환경 설정을 좀 변경 해야 합니다.
위의 명령으로 환경 설정 파일을 열어 줍니다.
243라인 부근에 <IfModule dir_module> 를 변경해줍니다.
그리고 374 라인에 있는 #Added 아래 두줄을 추가해 줍니다.
$ cd /usr/local/apache2/bin
$ sudo cp apachectl /etc/init.d/httpd
$ sudo /etc/init.d/httpd configtest
$ sudo /etc/initd/httpd start
위와 같은 메시지가 나오면 됩니다.
에러만 안나오면!
테스트를 위해서 저같은 경우 작업 PC에서 ARM PC 아이피로 접속해 보았습니다.
아~ 정상 동작 하네요.
apache 설치 끗!
3. MySQL
MySQL을 컴파일 & 설치 해보도록 합시다!
http:/dev.mysql.com/downloads/mysql
위의 주소로 들어간뒤 MySQL Community Server 링크를 클릭합니다.
그러면 MySQL Community Server 을 다운로드 할 수 있는데
Select Platform: 에서 Source Code 를 선택 해 줍니다.
Generic Linux (Architecture Independent), Compressed Tar Archive 를 찾아 Download 버튼을 클릭!
아 역시 바로...안되네요... 로그인이나 새로 가입할 필요 없이..
No thanks, just start my download. 링크를 가차 없이 클릭해 줍니다.
그러면 정상적으로 다운로드 하실 수 있습니다.
다운로드 하고 이제 뭐하시는지 대강 예측 되시죠?
컴파일 환경 설정 하고.... 컴파일 하고 인스톨 하고! 모든 라이브러리들이 이 공식을 따라 가신다고 보면 됩니다.
하지만 MySQL 최신버전에서는 복병이 숨어 있으니....
바로 make를 안쓰고 cmake 라는것을 씁니다.
귀찮으니 apt-get으로 받기로 합시다.
$ sudo apt-get install cmake
요래 요래 설치 해주시면 감사하겠습니다.
./configure 를 사용하지 않고 cmake 스똬일로 하기 위해 아래의 명령을 입력해 주세요!
$ cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.6.10 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DMYSQL_DATADIR=/usr/local/mysql/var -DENABLE_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 DMYSQL_TCP_PORT=3306 .
$ make
$ sudo make install
마지막에 cmake 할때 마지막에 . 꼭 넣어 주세요.
예... MySQL도 별일 없다면 요렇게 인스톨 됩니다.
$ sudo ln -s /usr/local/mysql-5.6.10 /usr/local/mysql
쓰기 편하게 심볼릭 링크를 하나 만들어 줍시다.
$ sudo groupadd mysql
$ sudo useradd -M -d /usr/local/mysql -g mysql -s /usr/sbin/nologin mysql
$ sudo chown root.mysql -R /usr/local/mysql
$ sudo chown root.mysql -R /usr/local/mysql-5.6.10
$ sudo chown mysql.mysql -R /usr/local/mysql/data
mysql 관리 그룹과 유저를 만들어 주고
MySQL 폴더 접근 권한을 변경 해 줍니다.
$ cd /usr/local/mysql
$ sudo ./script/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data
위의 명령어로 디비를 생성해 줍니다.
$ sudo ./bin/mysqld_safe &
위의 명령으로 서버 데몬을 구동 시켜 봅니다.
$ sudo ./bin/mysqladmin -u root password root
데몬이 뜬 상태에서 root 계정의 비밀번호를 원하는 비밀번호로 변경 할 수도 있습니다.
4. PHP
대망의 마지막 PHP 입니다.
http://www.php.net/downloads.php
주소로 들어 가셔서 PHP 5.4.13 (tar.gz) 를 받으세요!
한국에서 받으실테니 Republic of Korea 밑의 작은 링크를 클릭해 줍니다.
$ ./configure --prefix=/usr/local/php-5.4.13 --with-apxs2=/usr/local/apache2/bin/apx --with-mysql=/usr/local/mysql-5.6.10 --with-config-file-path=/usr/local/apache2/conf --enable-mbstring --enable-exif
$ make
$sudo make install
자 또 나왔습니다. 빌드환경 설정...
Apache2와 MySQL은 PHP를 위한 사전 작업으로 볼 수 있습니다.
빌드 환경 설정에서 참조 하도록 해줘야 하거든요!
안하고 하면.... 저도 어떻게 되는지 모릅니다.-_-;
$ sudo cp php.ini-production /usr/local/apache2/conf/php.ini
$ cd /usr/local/apache2/conf
$ sudo vi php.ini
위의 파일을 수정하여 php 설정을 변경 하실 수 있습니다.
뭐 이건 스킵 하셔도 됩니다.
$ cd /usr/local/apache2/htdocs
$ sudo vi index.php
php 테스트를 위해서 파일을 하나 생성해 봅시다.
내용은 아래와 같습니다.
<?php
phpinfo();
?>
하고 저장 해주시면 됩니다.
아마도 apache 테스트를 위한 기본 index.html 있을텐데요.
적절하게 index.html.bak 등으로 이름을 변경 해주시면 됩니다.
아파치 테스트와 마찬가지로 PC에서 ARM PC 보드 아이피를 입력해 보았습니다.
아까전에는 It Work!가 떳는데 이번에는 index.php를 불러와서 php 정보가 떠야지 정상동작 하고 있는 것입니다.
네~ 훌륭하게 정상 동작 중입니다.
빌드 컨피그와 기타 설정들이 제가 한것과 동일하게 보이네요.
참 쉽죠?
이번에 출시하는 ARM PC-V210 을 사용하여 APM을 설치해 보았습니다.
Cortex 계열이라면 지금 설치한 라이브러리들만 뽑아서 램디스크로 만들면 바로 보드에도 적용 할 수 있습니다.
아래 주소로 방문 하시면 더 자세한 사항을 보실 수 있습니다.
http://wiki.falinux.com/doku.php?id=product:arm-pc-v210 ->
ARM PC 설명
오늘은 여기 까지!
긴 글 읽어 주셔서 감사합니다!
- apache_01.png (97.7KB)(167)
- apache_02.png (68.5KB)(122)
- apache_05.png (42.5KB)(161)
- apache_06.png (74.6KB)(145)
- apache_12.png (84.3KB)(122)
- apache_14.png (64.4KB)(155)
- apache_15.png (83.6KB)(137)
- apache_17.png (57.5KB)(98)
- apache_18.png (29.4KB)(125)
- apache_apr_01.png (103.1KB)(136)
- apache_apr_05.png (73.5KB)(176)
- apache_aprutil_04.png (79.1KB)(126)
- apache_pcre_01.png (76.5KB)(147)
- apache_pcre_02.png (27.6KB)(140)
- apache_pcre_06.png (101.2KB)(165)
- cmake_01.png (71.6KB)(126)
- cmake_02.png (118.7KB)(136)
- mysql_01.png (85.6KB)(135)
- mysql_02.png (144.1KB)(98)
- mysql_03.png (12.7KB)(184)
- mysql_04.png (52.5KB)(173)
- mysql_08.png (123.7KB)(154)
- mysql_14.png (67.8KB)(149)
- mysql_16.png (35.2KB)(145)
- php_01.png (64.9KB)(154)
- php_02.png (49.2KB)(142)
- apache_16.png (26.5KB)(135)
- apache2_works.png (35.4KB)(158)
- mysql_15.png (38.0KB)(155)
- apmtest_01.png (134.6KB)(90)
- apm_logo.png (58.3KB)(171)
우분투를 사용 하신다면 오히려 더 쉽게 하실 수도 있습니다.
저같은 경우는 임베디드 보드에 설치 하기 위해서 소스를 빌드 하는 방법을 이용 한것이구요.
그렇지 않은 경우에는 apt-get 을 사용 하셔서 apache, php, mysql을 설치 하시는 것이 더 쉽게 하실 수 있습니다.
소스를 빌드 해서 해보시고 싶은 경우는 가이드 대로 하시면 될것 같은데
잘 안된다고 하시니 제가 아직 빼먹은게 많나 보네요.
혹시 정확한 증상을 알려 주시면 답변 드리도록 하겠습니다.
혹시 몰라 링크 하나 첨부해 드립니다.
빠른 답변 감사드립니다...^^
우선 소스빌드로 전체적인 리눅스의 사용법을 공부하기 위함이 목적이기 때문에 패키지 설치는 하지 않으려 합니다.
가이드대로 해도 데스크탑 PC에서 정상적으로 설치 할 수 있는거였군요... 중간에
$ sudo groupadd mysql
$ sudo useradd -M -d /usr/local/mysql -g mysql -s /usr/sbin/nologin mysql
$ sudo chown root.mysql -R /usr/local/mysql
$ sudo chown root.mysql -R /usr/local/mysql
$ sudo chown mysql.mysql -R /usr/local/mysql/data
위에서
$ sudo chown root.mysql -R /usr/local/mysql
$ sudo chown root.mysql -R /usr/local/mysql
이 부분을 두번 실행하신 이유가 있습니까??
이외에도 궁금한 것이 너무많은데 어떻게 질문을 드려야 객관적으로 받아들이실 수 있으실지 초보라서 잘 모르겠습니다...ㅠ,.ㅠ
실행파일도 mysqld로 생성이 되는 것 같은데 가이드에서는 mysql이라고 돼있어서 틀린건 아닌가 걱정도 되고...ㅠ,.ㅠ
초보라 많이 부족합니다...ㅠ,.ㅠ
MySQL 설치 중에 Cmake 워닝이 뜨는데 워닝이라 그냥 무시하려고 하는데 그러자니 뭔가 찜찜해서 질문 드립니다.
내용은
Manually-specified variables were not used by the project
ENABLE_LOCAL_INFILE
ENABLE_DOWNLOADS
입니다.
최초 Cmake 시에는 워닝이 뜨지 않는 걸로 봐서 이미 사용이 되어서 그런것 같은데...
서버 사용에는 지장이 없는 건가요??
혹 해결방법은 어떤 것이 있을까요??
저도 저 부분은 경험이 없다보니 정확한 답을 드리기가 힘드네요.
일단 크게 지장을 없을것 같지만 이또한 확실 하진 않습니다.
혹시라도 안정적으로 사용 하고 싶으시면 apt-get 으로 해주시는게 좋습니다.
제가 적은 소스 빌드 같은 경우는
우분투에 리비전된 버전이 낮아서 상위 버전으로 바꾸고 싶을때
유저가 소스를 커스터 마이징 하고 싶을때 그리고 저의 경우 처럼 임베디드 보드에 옮기고 싶을때 해줍니다.
APM은 전보단 편하지만 소스 빌드 시 상호간의 연동 관계나 환경 설정 등을 어느정도 알고 계셔야 합니다.
저 또한 소스 내에 문서나 인터넷을 많이 참고 하고 적은 문서 이구요.
안정적으로 사용 하시고 싶으시거나 위의 조건에 해당 하지 않을 경우
apt-get을 하시면 좀더 마음 놓고 사용 하실수 있으실 겁니다.
아니면 구글신의 도움을 받으셔야 합니다..
성공했습니다!! ㅠ,.ㅠ 감사합니다...ㅠ,.ㅠ 너무너무 감사합니다..^^ㅋ
결국 워닝 무시하고 설치 하였습니다. 그래도 정상 동작 합니다.
나름대로 알아보니 Cmake 시에 저러한 워닝이 나는 것은 무시해도 괜찮다고 합니다.
어떤 원인이고 어떤 영향을 미칠지는 아직 모르겠습니다.
덕분에 잘 배우고 갑니다..^^
앞으로 양질의 가이드 많이 부탁드리겠습니다..^^
건강하세요,...^^
아 빌드중 워닝이였군요!
다른 라이브러리나 응용 프로그램을 빌드 하실때도 워닝은 엄청 나오실 겁니다-_-;
이런것들을 빌드 하실때 워닝은 빌드가 안되지 않는 이상은 크게 신경쓰실 필요는 없으실 겁니다..
다만 큰 프로그램을 제작 하실때는 가급적 워닝을 안내시는것이수록 정신 건강에 좋더라구요.-_-;
이러한 라이브러리나 어플리케이션은 어느정도의 검증을 마치고 나오것이기 때문에 무시 하셔도 됩니다.
물론 진짜 버그가 나타날때도 있으나 그것은 버전업이 되면서 패치가 되어 가는 것으로 알고 있습니다~
수고하셨습니다~
한가지 궁금한 것이 더 생겼습니다...ㅠ,.ㅠ
PHP설치중에 gd와 freetype을 포함해주고 싶은데
apt로 gd와 php를 설치한 후에
configure 옵션에서 -with로 포함만 해주면 되는 건가요?
구글링을 해보고 여러 방법을 찾아봤으나 지금 그외에도 많은 어플들이 설치되어있는 상황에서
다른 가이드대로 따라하기가 겁이 나네요...ㅠ,.ㅠ
괜찮으시다면 조언 부탁드리겠습니다...^^
가이드 감사합니다...^^ 리눅스 초보입니다...ㅠ,.ㅠ
궁금한 것이 있습니다.
이 가이드는 ARM용 PC의 컴파일러를 사용한다고 하셨는데 일반 데스크톱에서 APC를 설치할때랑 차이점이 있나요?
제가 봤을때는 큰 차이가 없어서 일반 데스크톱에서 가이드데로 APM을 설치했는데 중간에 어려움을 많이 겪어서요
답변 기다리겠습니다...^^
감사합니다...^^