apm_logo.png

     

안녕하세요.

 

유형석입니다.

 

이번에는 4월에 발매할 ARM PC-V210 으로

APM 설치를 해보도록 하겠습니다. 


1. APM

    

 

제가 얼마전에 APM Setup 을 사용하여 윈도우에서 간편하게

Apache, PHP, MySQL 을 설치하는 글을 쓴적이 있습니다.

x86에서는 완전 편하죠?

 

하지만 ARM에서 하려면 아...장난 아닙니다.

죽어 나죠...특히 크로스 컴파일로 하려면...

 

그래서 이번에 발매하는 ARM PC를 이용해서 ARM용 네이티브 컴파일러를 사용하여 컴파일 해보도록 하겠습니다.

스크롤의 압박이 장난 아니니... 느긋하게 보시길 바랍니다.

 

 

2. APACHE

  

 apache_01.png


http://httpd.apache.org/download.cgi#apache24

로 접속하여 2.4.4 버전 링크를 클릭해 줍니다.

 

 

apache_02.png

 

그러면 위와 같은 화면이 나오는데요.

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 라이브러리 입니다.

 

apache_apr_01.png

 

 

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

 

다행히 아파치 설정보다는 짧게 하실수 있어요! 씐나!

 

apache_apr_05.png

 

별일 없으시면 apr은 위와 같이 나오시면 됩니다.
 

$ ./configure --prefix=/usr/local/aprutil --with-apr=/usr/local/apr
$ make
$ sudo make install

 

apr-util 은 위와 같이 설치 합니다.

꼭 apr을 먼저 make install 하시고 난뒤에 하셔야 합니다.

 

apache_aprutil_04.png

 

apr-util 별일 없으면 위와 같이 나와야 합니다.

apache_pcre_01.png

 

이번에는 PCRE를 컴파일 해봅시다.

http://pcre.org/

로 접속 하신 후에 Download 에 있는 링크를 클릭해 줍니다.

 

apache_pcre_02.png

 

파일들이 보이면 pcre-8.32.tar.gz 파일을 다운로드 합니다.

 

 

$ ./configure --prefix=/usr/local/pcre
$ make
$ sudo make install

압축을 푸시고 위와 같이 환경설정을 하고 인스톨 해주시면 됩니다.

 

apache_pcre_06.png

 

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

 

참 쉽죠?

 

apache_12.png

 

아무일도 없다면 make install 후 위와 같은 화면이 나와야 합니다.

$ cd /usr/local/apache2/conf
$ sudo vi httpd.conf

이제 아파치 환경 설정을 좀 변경 해야 합니다.

위의 명령으로 환경 설정 파일을 열어 줍니다.

 

apache_14.png

apache_15.png

 

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

 

apache_16.png

 

위와 같은 메시지가 나오면 됩니다.

에러만 안나오면! 

 

테스트를 위해서 저같은 경우 작업 PC에서 ARM PC 아이피로 접속해 보았습니다.

 

apache2_works.png

 

아~ 정상 동작 하네요.

apache 설치 끗!

 

 

3. MySQL

  

 

MySQL을 컴파일 & 설치 해보도록 합시다!

 

mysql_01.png

 

http:/dev.mysql.com/downloads/mysql

 

위의 주소로 들어간뒤 MySQL Community Server 링크를 클릭합니다.

 

mysql_02.png

 

그러면 MySQL Community Server 을 다운로드 할 수 있는데

Select Platform: 에서 Source Code 를 선택 해 줍니다.

 

mysql_03.png

 

Generic Linux (Architecture Independent), Compressed Tar Archive 를 찾아 Download 버튼을 클릭!

 

mysql_04.png

 

아 역시 바로...안되네요... 로그인이나 새로 가입할 필요 없이..

No thanks, just start my download. 링크를 가차 없이 클릭해 줍니다.

 

그러면 정상적으로 다운로드 하실 수 있습니다.

다운로드 하고 이제 뭐하시는지 대강 예측 되시죠?

컴파일 환경 설정 하고.... 컴파일 하고 인스톨 하고! 모든 라이브러리들이 이 공식을 따라 가신다고 보면 됩니다.

 

하지만 MySQL 최신버전에서는 복병이 숨어 있으니....

바로 make를 안쓰고 cmake 라는것을 씁니다.

 

귀찮으니 apt-get으로 받기로 합시다.

 

 

$ sudo apt-get install cmake

 

cmake_01.png

cmake_02.png

요래 요래 설치 해주시면 감사하겠습니다.

 

./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_08.png

 

예... 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

 

위의 명령어로 디비를 생성해 줍니다.

 

mysql_15.png

 

$ sudo ./bin/mysqld_safe &

 

위의 명령으로 서버 데몬을 구동 시켜 봅니다.

 

 

$ sudo ./bin/mysqladmin -u root password root

 

데몬이 뜬 상태에서 root 계정의 비밀번호를 원하는 비밀번호로 변경 할 수도 있습니다.

 

 

4. PHP

  

php_01.png

 

대망의 마지막 PHP 입니다.

http://www.php.net/downloads.php

 

주소로 들어 가셔서 PHP 5.4.13 (tar.gz) 를 받으세요!

 

php_02.png

 

한국에서 받으실테니 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 정보가 떠야지 정상동작 하고 있는 것입니다.

 

apmtest_01.png

 

네~ 훌륭하게 정상 동작 중입니다.

빌드 컨피그와 기타 설정들이 제가 한것과 동일하게 보이네요.

 

참 쉽죠?

 

이번에 출시하는 ARM PC-V210 을 사용하여 APM을 설치해 보았습니다.

Cortex 계열이라면 지금 설치한 라이브러리들만 뽑아서 램디스크로 만들면 바로 보드에도 적용 할 수 있습니다.


아래 주소로 방문 하시면 더 자세한 사항을 보실 수 있습니다.

http://wiki.falinux.com/doku.php?id=product:arm-pc-v210 -> ARM PC 설명

 

오늘은 여기 까지!

 

긴 글 읽어 주셔서 감사합니다!