본문 바로가기
공부/데이터

[NLP] 형태소 분석기 mecab 설치하기(mac)

by demonic_ 2019. 10. 19.
반응형

자연어 처리에서 형태소 분석을 위해 사용되는 mecab를 설치하는데 겪었던 시행착오를 여기에 정리해둔다.

python jupyter 에서 mecab 를 실행하면 다음과 같은 에러가 발생했다.

from konlpy.tag import Mecab
tagger = Mecab()

---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
/usr/local/lib/python3.7/site-packages/konlpy/tag/_mecab.py in __init__(self, dicpath)
    106         try:
--> 107             self.tagger = Tagger('-d %s' % dicpath)
    108             self.tagset = utils.read_json('%s/data/tagset/mecab.json' % utils.installpath)

NameError: name 'Tagger' is not defined

During handling of the above exception, another exception occurred:

Exception                                 Traceback (most recent call last)
<ipython-input-467-211dfe63a9fb> in <module>
----> 1 tagger = Mecab()

/usr/local/lib/python3.7/site-packages/konlpy/tag/_mecab.py in __init__(self, dicpath)
    110             raise Exception('The MeCab dictionary does not exist at "%s". Is the dictionary correctly installed?\nYou can also try entering the dictionary path when initializing the Mecab class: "Mecab(\'/some/dic/path\')"' % dicpath)
    111         except NameError:
--> 112             raise Exception('Install MeCab in order to use it: http://konlpy.org/en/latest/install/')

Exception: Install MeCab in order to use it: http://konlpy.org/en/latest/install/

 

제시하는 홈페이지에 접속해서 설치를 시도해봤다.

http://konlpy.org/ko/latest/install/#id1

 

설치하기 — KoNLPy 0.5.2 documentation

주석 For troubleshooting information, see these pages: Linux. Mac OS. Windows. Please record a "New Issue" if you have an error that is not listed.

konlpy.org

 

그래도 다음의 에러가 발생하면서 진행되지 않았다.

configure: creating ./config.status
config.status: creating Makefile
sudo: ldconfig: command not found

 

메세지로 보면 ldconfig 를 설치해야 한다는 것인데, 검색해보니 나만 그런거 같진 않았다.

설치하는 명령어를 찾아서 실행해 보았는데 안된다.

sudo update_dyld_shared_cache

...
update_dyld_shared_cache: warning: x86_64h rejected from cached dylibs: /System/Library/PrivateFrameworks/CreateML.framework/Versions/A/CreateML (("Could not find dependency '/System/Library/PrivateFrameworks/TuriCore.framework/Versions/A/TuriCore'"))
update_dyld_shared_cache: warning: x86_64h rejected from cached dylibs: /usr/lib/swift/libswiftCreateML.dylib (("Could not find dependency '/System/Library/PrivateFrameworks/TuriCore.framework/Versions/A/TuriCore'"))

 

 

강제로 하라도 하는데 역시나 되지 않았다.

(강제로 하는방법 sudo update_dyld_shared_cache -force)

그러다 누군가 삽질한 글을 찾게 되었는데 여기 도움을 많이 받았다.

https://lovablebaby1015.wordpress.com/2018/09/24/mecab-macos-설치-삽질-후기-작성중/

 

MeCab MacOS + python 설치 삽질 후기 (리뉴얼)

(해당 글은 2019년 7월 20일 이후로 리뉴얼 하였습니다.)   안녕하세요! 형태소 분석기 MeCab 설치를 소개하는 페이지입니다. 일반적으로 쉽게 한국어 형태소분석기 konlpy를 쓰게 되는데 좀 더 괜찮은 형태소 분석기를 찾는다고 하면 다음이 MeCab일 것입니다. 설치가 잘 안되는 경우에는 개인적으로 메일을 주셔도 좋고, 카카오의 딥…

lovablebaby1015.wordpress.com

 

우선 다운로드 받는다.

wget https://raw.githubusercontent.com/konlpy/konlpy/master/scripts/mecab.sh

 

압축을 풀고 설치한다.

tar xvfz mecab-ko-dic-2.1.1-20180720.tar.gz
cd mecab-ko-dic-2.1.1-20180720
./configure
make
sudo make install

 

내 경우 설치하던 마지막줄에 에러가 입력되었다.

$ make
CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh /Users/user/Downloads/mecab-ko-dic-2.1.1-20180720/missing --run aclocal-1.11 
/Users/user/Downloads/mecab-ko-dic-2.1.1-20180720/missing: line 52: aclocal-1.11: command not found
WARNING: `aclocal-1.11' is missing on your system.  You should only need it if
         you modified `acinclude.m4' or `configure.ac'.  You might want
         to install the `Automake' and `Perl' packages.  Grab them from
         any GNU archive site.
 cd . && /bin/sh /Users/user/Downloads/mecab-ko-dic-2.1.1-20180720/missing --run automake-1.11 --gnu
/Users/user/Downloads/mecab-ko-dic-2.1.1-20180720/missing: line 52: automake-1.11: command not found
WARNING: `automake-1.11' is missing on your system.  You should only need it if
         you modified `Makefile.am', `acinclude.m4' or `configure.ac'.
         You might want to install the `Automake' and `Perl' packages.
         Grab them from any GNU archive site.
CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh /Users/user/Downloads/mecab-ko-dic-2.1.1-20180720/missing --run autoconf
configure.ac:2: error: possibly undefined macro: AM_INIT_AUTOMAKE
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
make: *** [configure] Error 1

 

그래서 압축해제한 파일을 삭제하고 다시 압축해제 한 다음 ./configure 전에 autoreconf 를 실행했다.

tar xvfz mecab-ko-dic-2.1.1-20180720.tar.gz
cd mecab-ko-dic-2.1.1-20180720
autoreconf
./configure
make
sudo make install

 

다음과 같은 메세지가 출력되면 설치완료

make[1]: Nothing to be done for `install-exec-am'.
 ./install-sh -c -d '/usr/local/lib/mecab/dic/mecab-ko-dic'
 /usr/bin/install -c -m 644 model.bin matrix.bin char.bin sys.dic unk.dic left-id.def right-id.def rewrite.def pos-id.def dicrc '/usr/local/lib/mecab/dic/mecab-ko-dic'

 

설치확인하는 방법은 터미널에 다음 명령어 실행한 후, 아무 문장이나 써보면 된다

mecab -d /usr/local/lib/mecab/dic/mecab-ko-dic
한글로 문장입력 해보자

력	NNG,*,T,력,*,*,*,*
해	VV+EC,*,F,해,Inflect,VV,EC,하/VV/*+아/EC/*
보	VX,*,F,보,*,*,*,*
자	EC,*,F,자,*,*,*,*

 

마지막으로 mecab-python 을 설치하자

mac os가 mojave의 경우는 다음으로 된다고 하는데, 그 아랫버전은 다른 방법으로 해야하는거 같다.

pip3 install mecab-python3

끝.

 

 

 

 

참조:

https://lovablebaby1015.wordpress.com/2018/09/24/mecab-macos-설치-삽질-후기-작성중/

 

MeCab MacOS + python 설치 삽질 후기 (리뉴얼)

(해당 글은 2019년 7월 20일 이후로 리뉴얼 하였습니다.)   안녕하세요! 형태소 분석기 MeCab 설치를 소개하는 페이지입니다. 일반적으로 쉽게 한국어 형태소분석기 konlpy를 쓰게 되는데 좀 더 괜찮은 형태소 분석기를 찾는다고 하면 다음이 MeCab일 것입니다. 설치가 잘 안되는 경우에는 개인적으로 메일을 주셔도 좋고, 카카오의 딥…

lovablebaby1015.wordpress.com

https://bitbucket.org/eunjeon/mecab-ko-dic/issues/4/mecab-ko-dic-150-20140223

 

mecab-ko-dic-1.5.0-20140223 컴파일 에러

CentOS Release: 5.9 x86_64 Linux WPDSPDEV1 2.6.18-348.el5 gcc version 4.4.7 20120313 (Red Hat 4.4.7-1) (GCC) 에러 상황 1. mecab-ko-dic-1.5.0-20140223.tar.gz 압축 해제 2. cd mecab-ko-dic-1.5.0-20140223 3. ./configure 4. make WARNING: `aclocal-1.11' is missing on yo

bitbucket.org

 

반응형

댓글