본문 바로가기

개발

한국어 형태소 분석기 mecab-ko, 우분투 환경에서 테스트하기

반응형

일을 하다가 한국어 형태소 분석이 필요해 mecab-ko를 사용하게 되었다. 

이용할 수 있는 서버가 아직 없는터라 사용하고 있는 윈도우즈 로컬에 WSL2로 우분투를 설치해 진행했다.

 

1. 먼저 mecab-ko 라이브러리와 mecab-ko-dic 라이브러리 파일을 가져와야 한다.

# mecab-ko
wget https://bitbucket.org/eunjeon/mecab-ko/downloads/mecab-0.996-ko-0.9.2.tar.gz

# mecab-ko-dic
wget https://bitbucket.org/eunjeon/mecab-ko-dic/downloads/mecab-ko-dic-2.1.1-20180720.tar.gz

mecab-ko 다운로드는 여기 에서 받을 수 있고, 글을 쓰는 현재 2015년 버전이 최신이다.

mecab-ko-dic 은 여기 에서 받을 수 있으며, 글을 쓰는 현재 2018년 버전이 최신이다. 

다운로드 받고자 하는 파일의 이름을 우클릭하고 링크 복사를 하면된다!

 

2. 다운로드 받은 파일들을 압축해제 해준다.

# mecab-ko 압축해제
tar axfv mecab-0.996-ko-0.9.2.tar.gz

# mecab-ko-dic 압축해제
tar zxfv mecab-ko-dic-2.1.1-20180720.tar.gz

 

3. 먼저 mecab-ko 폴더로 들어가서 설치를 진행한다. 리눅스 환경을 처음 올리는 거라서 컴파일러도 받아야했다.

cd mecab-0.996-ko-0.9.2/
./configure
make
make check
sudo make install

나는 컴파일러가 설치되지 않아서 설치해줘야했다. 컴파일러가 없으면 ./configure 명령시에 이렇게 에러가난다.

error: no acceptable C compiler found in $PATH

이땐 이렇게 설치해주세요!

sudo apt install gcc g++ make

그 뒤에 다시 ./configure 부터 진행하면 된다.

 

4. 다음은 mecab-ko-dic 폴더로 들어가서 설치를 진행한다. 

./configure
make
sudo make install

그런데 이번에는 libmecab.so.2 가 없다는 에러가 떴다. 확인해보니 잘있는걸 ㅠ

/usr/local/libexec/mecab/mecab-dict-index: error while loading shared libraries: libmecab.so.2: cannot open shared object file: No such file or directory

검색해보니 링크를 걸어주거나 automake를 설치해주면 된다고 한다.

sudo apt install automake libtool -y

mecab-ko-dic 공식 페이지에서도 다음과 같이 안내한다.

그래서 나는 automake를 설치하고 ./autogen.sh 를 configure 단계 전에 실행해서 이 문제를 해결했다.

 

5. 설치가 완료되었으니 실행하여 테스트를 해본다.

mecab -d /usr/local/lib/mecab/dic/mecab-ko-dic

이렇게 입력한뒤에 형태소를 분석할 문장을 입력한다.

나의 실행결과

 

지명 분석되는거 보고 감동의 눈물 흘려버림..

NNP, NNG 등 맨 앞에 나와있는 게 뭔지 찾아서 이 게시글을 업데이트하겠다! (아마도 명사, 부사 뭐 이런 문법적인 거 아닐까 추측중..)

 

반응형