Mecab 설치로 깨진 경우의 조치

7886 단어 mecab

이 기사에 대하여


  • Mecab을 Mac에 설치하려고 할 때 결과가 깨지기 시작했기 때문에 해결책의 비망록입니다.
  • 버전 및 날짜 표기 부분을 적절하게 읽으십시오.

    Mecab을 솔직하게 설치할 수 있는 패턴



    mecab 공식 사이트 에서 본체 및 IPA 사전 데이터를 다운로드합니다.



    mecab 본체 설치


    $ tar -xvf mecab-0.996.tar.gz 
    $ cd mecab-0.996
    $ ./configure
    $ make
    $ make check
    $ sudo make install
    
    $ mecab -v
    mecab of 0.996
    

    사전 데이터 설치


    $ tar -xvf mecab-ipadic-2.7.0-20070801.tar.gz
    $ cd mecab-ipadic-2.7.0-20070801
    $ ./configure
    $ make
    $ sudo make install
    

    mecab 실행


  • 깨지지 않는 패턴
  • $ echo "mecabで遊ぼうと思ったら文字化ける" | mecab
    mecab   名詞,一般,*,*,*,*,*
    で 助詞,格助詞,一般,*,*,*,で,デ,デ
    遊ぼ  動詞,自立,*,*,五段・バ行,未然ウ接続,遊ぶ,アソボ,アソボ
    う 助動詞,*,*,*,不変化型,基本形,う,ウ,ウ
    と 助詞,格助詞,引用,*,*,*,と,ト,ト
    思っ  動詞,自立,*,*,五段・ワ行促音便,連用タ接続,思う,オモッ,オモッ
    たら  助動詞,*,*,*,特殊・タ,仮定形,た,タラ,タラ
    文字  名詞,一般,*,*,*,*,文字,モジ,モジ
    化ける   動詞,自立,*,*,一段,基本形,化ける,バケル,バケル
    
  • 깨진 패턴

  • 이에 대처하
    $ echo "mecabで遊ぼうと思ったら文字化ける" | mecab
    mecab   ̾??,??ͭ̾??,?ȿ?,*,*,*,*
    ?   ????,????,*,*,*,*,*
    ??  ̾??,??ͭ̾??,?ȿ?,*,*,*,*
    ??? ????,????,*,*,*,*,*
    ??  ̾??,??ͭ̾??,??̾,̾,*,*,??,?參,?參
    ??と思?   ????,????,*,*,*,*,*
    ??  ????,????ե??٥å?,*,*,*,*,??,????,????
    ??ら文    ????,????,*,*,*,*,*
    ?   ̾??,????,*,*,*,*,?,?̥?,?̥?
    ?化ける  ????,????,*,*,*,*,*
    

    깨지는 경우의 조치



    여기 페이지 에서 거의 해결할 수 있었습니다만, 일부만 자신의 환경과는 순서가 달랐습니다

    해결책 1



    먼저 mecab 본체와 사전을 설치할 때 --with-charset=utf8
  • mecab 본체
  • $ cd mecab-0.996
    $ ./configure --with-charset=utf8
    $ make
    $ make check
    $ sudo make install
    
  • 사전 데이터
  • $ cd mecab-ipadic-2.7.0-20070801
    $ ./configure --with-charset=utf8
    $ make
    $ sudo make install
    

    내 환경에서는 이것으로 해결되지 않았습니다.

    솔루션 2



    해결책 1로 안된다면, 직접 사전의 문자 코드를 변환 한 다음 다시 설치하십시오.
    mecab 본체는 솔루션 1에서 설치된 가정입니다.
    $ cd mecab-ipadic-2.7.0-20070801
    $ nkf -w --overwrite *.csv
    $ nkf -w --overwrite *.def
    
    mecab-ipadic-2.7.0-20070801/dicrc 편집
    $ config-charset = EUC-JP
    ↓
    $ config-charset = UTF-8
    

    다시 사전을 설치했는데 잘 모르는 오류가 발생했습니다./usr/local/libexec/mecab/mecab-dict-index -d . -o . -f EUC-JP -t utf8그러므로 그 밖에도 EUC-JP → UTF-8로 다시 써야 할 부분이 있는지 미주했습니다.
    $ cd mecab-ipadic-2.7.0-20070801
    $ ./configure --with-charset=utf8
    $ make
    /usr/local/libexec/mecab/mecab-dict-index -d . -o . -f EUC-JP -t utf8
    reading ./unk.def ... iconv conversion failed. skip this entry
    :
    iconv conversion failed. skip this entry
    0
    make: *** [matrix.bin] Segmentation fault: 11
    

    결론적으로 --with-charset=utf8 없이 ./configure를 실행하면 오류없이 설치할 수있었습니다.
    $ cd mecab-ipadic-2.7.0-20070801
    $ ./configure
    $ make
    $ make install
    

    문자 깨짐도 해소되었습니다.
    $ echo "mecabで遊ぼうと思ったら文字化ける" | mecab
    mecab   名詞,一般,*,*,*,*,*
    で 助詞,格助詞,一般,*,*,*,で,デ,デ
    遊ぼ  動詞,自立,*,*,五段・バ行,未然ウ接続,遊ぶ,アソボ,アソボ
    う 助動詞,*,*,*,不変化型,基本形,う,ウ,ウ
    と 助詞,格助詞,引用,*,*,*,と,ト,ト
    思っ  動詞,自立,*,*,五段・ワ行促音便,連用タ接続,思う,オモッ,オモッ
    たら  助動詞,*,*,*,特殊・タ,仮定形,た,タラ,タラ
    文字  名詞,一般,*,*,*,*,文字,モジ,モジ
    化ける   動詞,自立,*,*,一段,基本形,化ける,バケル,バケル
    

    좋은 웹페이지 즐겨찾기