아래 링크를 통해 이 노트북을 주피터 노트북 뷰어(nbviewer.org)로 보거나 구글 코랩(colab.research.google.com)에서 실행할 수 있습니다.
주피터 노트북 뷰어로 보기 | 구글 코랩(Colab)에서 실행하기 |
MeCab을 설치하려면 다음 명령을 실행하세요.
$ bash <(curl -s https://raw.githubusercontent.com/konlpy/konlpy/master/scripts/mecab.sh)
파이썬 가상 환경에서 MeCab을 설치하려면 이 깃허브에 포함된 mecab.sh
파일을 실행하세요.
최신 macOS Mojave에서는 Mecab에 필요한 jpype 라이브러리가 컴파일 오류가 발생할 수 있습니다. 이런 경우 다음 명령으로 konlpy를 설치해 주세요.
$ export MACOSX_DEPLOYMENT_TARGET=10.10 CFLAGS='-stdlib=libc++' pip install konlpy
!apt-get update
!apt-get install g++ openjdk-8-jdk
!pip3 install konlpy JPype1-py3
!bash <(curl -s https://raw.githubusercontent.com/konlpy/konlpy/master/scripts/mecab.sh)
!pip install mecab-python3
Get:1 https://cloud.r-project.org/bin/linux/ubuntu jammy-cran40/ InRelease [3,626 B] Hit:2 https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64 InRelease Get:3 http://security.ubuntu.com/ubuntu jammy-security InRelease [110 kB] Hit:4 http://archive.ubuntu.com/ubuntu jammy InRelease Get:5 http://archive.ubuntu.com/ubuntu jammy-updates InRelease [119 kB] Hit:6 https://ppa.launchpadcontent.net/c2d4u.team/c2d4u4.0+/ubuntu jammy InRelease Get:7 http://security.ubuntu.com/ubuntu jammy-security/restricted amd64 Packages [995 kB] Get:8 http://archive.ubuntu.com/ubuntu jammy-backports InRelease [109 kB] Hit:9 https://ppa.launchpadcontent.net/deadsnakes/ppa/ubuntu jammy InRelease Get:10 http://archive.ubuntu.com/ubuntu jammy-updates/main amd64 Packages [1,185 kB] Get:11 http://security.ubuntu.com/ubuntu jammy-security/main amd64 Packages [915 kB] Get:12 http://archive.ubuntu.com/ubuntu jammy-updates/restricted amd64 Packages [1,015 kB] Get:13 https://ppa.launchpadcontent.net/graphics-drivers/ppa/ubuntu jammy InRelease [24.3 kB] Get:14 http://archive.ubuntu.com/ubuntu jammy-updates/universe amd64 Packages [1,251 kB] Hit:15 https://ppa.launchpadcontent.net/ubuntugis/ppa/ubuntu jammy InRelease Get:16 https://ppa.launchpadcontent.net/graphics-drivers/ppa/ubuntu jammy/main amd64 Packages [37.3 kB] Fetched 5,765 kB in 3s (1,710 kB/s) Reading package lists... Done Reading package lists... Done Building dependency tree... Done Reading state information... Done g++ is already the newest version (4:11.2.0-1ubuntu1). g++ set to manually installed. The following additional packages will be installed: fonts-dejavu-core fonts-dejavu-extra libatk-wrapper-java libatk-wrapper-java-jni libfontenc1 libgail-common libgail18 libgtk2.0-0 libgtk2.0-bin libgtk2.0-common libice-dev librsvg2-common libsm-dev libxkbfile1 libxt-dev libxtst6 libxxf86dga1 openjdk-8-jdk-headless openjdk-8-jre openjdk-8-jre-headless x11-utils Suggested packages: gvfs libice-doc libsm-doc libxt-doc openjdk-8-demo openjdk-8-source visualvm libnss-mdns fonts-nanum fonts-ipafont-gothic fonts-ipafont-mincho fonts-wqy-microhei fonts-wqy-zenhei fonts-indic mesa-utils The following NEW packages will be installed: fonts-dejavu-core fonts-dejavu-extra libatk-wrapper-java libatk-wrapper-java-jni libfontenc1 libgail-common libgail18 libgtk2.0-0 libgtk2.0-bin libgtk2.0-common libice-dev librsvg2-common libsm-dev libxkbfile1 libxt-dev libxtst6 libxxf86dga1 openjdk-8-jdk openjdk-8-jdk-headless openjdk-8-jre openjdk-8-jre-headless x11-utils 0 upgraded, 22 newly installed, 0 to remove and 16 not upgraded. Need to get 50.0 MB of archives. After this operation, 169 MB of additional disk space will be used. Get:1 http://archive.ubuntu.com/ubuntu jammy/main amd64 fonts-dejavu-core all 2.37-2build1 [1,041 kB] Get:2 http://archive.ubuntu.com/ubuntu jammy/main amd64 fonts-dejavu-extra all 2.37-2build1 [2,041 kB] Get:3 http://archive.ubuntu.com/ubuntu jammy/main amd64 libfontenc1 amd64 1:1.1.4-1build3 [14.7 kB] Get:4 http://archive.ubuntu.com/ubuntu jammy/main amd64 libxkbfile1 amd64 1:1.1.0-1build3 [71.8 kB] Get:5 http://archive.ubuntu.com/ubuntu jammy/main amd64 libxtst6 amd64 2:1.2.3-1build4 [13.4 kB] Get:6 http://archive.ubuntu.com/ubuntu jammy/main amd64 libxxf86dga1 amd64 2:1.1.5-0ubuntu3 [12.6 kB] Get:7 http://archive.ubuntu.com/ubuntu jammy/main amd64 x11-utils amd64 7.7+5build2 [206 kB] Get:8 http://archive.ubuntu.com/ubuntu jammy/main amd64 libatk-wrapper-java all 0.38.0-5build1 [53.1 kB] Get:9 http://archive.ubuntu.com/ubuntu jammy/main amd64 libatk-wrapper-java-jni amd64 0.38.0-5build1 [49.0 kB] Get:10 http://archive.ubuntu.com/ubuntu jammy/main amd64 libgtk2.0-common all 2.24.33-2ubuntu2 [125 kB] Get:11 http://archive.ubuntu.com/ubuntu jammy/main amd64 libgtk2.0-0 amd64 2.24.33-2ubuntu2 [2,037 kB] Get:12 http://archive.ubuntu.com/ubuntu jammy/main amd64 libgail18 amd64 2.24.33-2ubuntu2 [15.9 kB] Get:13 http://archive.ubuntu.com/ubuntu jammy/main amd64 libgail-common amd64 2.24.33-2ubuntu2 [132 kB] Get:14 http://archive.ubuntu.com/ubuntu jammy/main amd64 libgtk2.0-bin amd64 2.24.33-2ubuntu2 [7,932 B] Get:15 http://archive.ubuntu.com/ubuntu jammy/main amd64 libice-dev amd64 2:1.0.10-1build2 [51.4 kB] Get:16 http://archive.ubuntu.com/ubuntu jammy-updates/main amd64 librsvg2-common amd64 2.52.5+dfsg-3ubuntu0.2 [17.7 kB] Get:17 http://archive.ubuntu.com/ubuntu jammy/main amd64 libsm-dev amd64 2:1.2.3-1build2 [18.1 kB] Get:18 http://archive.ubuntu.com/ubuntu jammy/main amd64 libxt-dev amd64 1:1.2.1-1 [396 kB] Get:19 http://archive.ubuntu.com/ubuntu jammy-updates/universe amd64 openjdk-8-jre-headless amd64 8u382-ga-1~22.04.1 [30.8 MB] Get:20 http://archive.ubuntu.com/ubuntu jammy-updates/universe amd64 openjdk-8-jre amd64 8u382-ga-1~22.04.1 [75.4 kB] Get:21 http://archive.ubuntu.com/ubuntu jammy-updates/universe amd64 openjdk-8-jdk-headless amd64 8u382-ga-1~22.04.1 [8,851 kB] Get:22 http://archive.ubuntu.com/ubuntu jammy-updates/universe amd64 openjdk-8-jdk amd64 8u382-ga-1~22.04.1 [3,943 kB] Fetched 50.0 MB in 5s (9,574 kB/s) Selecting previously unselected package fonts-dejavu-core. (Reading database ... 120893 files and directories currently installed.) Preparing to unpack .../00-fonts-dejavu-core_2.37-2build1_all.deb ... Unpacking fonts-dejavu-core (2.37-2build1) ... Selecting previously unselected package fonts-dejavu-extra. Preparing to unpack .../01-fonts-dejavu-extra_2.37-2build1_all.deb ... Unpacking fonts-dejavu-extra (2.37-2build1) ... Selecting previously unselected package libfontenc1:amd64. Preparing to unpack .../02-libfontenc1_1%3a1.1.4-1build3_amd64.deb ... Unpacking libfontenc1:amd64 (1:1.1.4-1build3) ... Selecting previously unselected package libxkbfile1:amd64. Preparing to unpack .../03-libxkbfile1_1%3a1.1.0-1build3_amd64.deb ... Unpacking libxkbfile1:amd64 (1:1.1.0-1build3) ... Selecting previously unselected package libxtst6:amd64. Preparing to unpack .../04-libxtst6_2%3a1.2.3-1build4_amd64.deb ... Unpacking libxtst6:amd64 (2:1.2.3-1build4) ... Selecting previously unselected package libxxf86dga1:amd64. Preparing to unpack .../05-libxxf86dga1_2%3a1.1.5-0ubuntu3_amd64.deb ... Unpacking libxxf86dga1:amd64 (2:1.1.5-0ubuntu3) ... Selecting previously unselected package x11-utils. Preparing to unpack .../06-x11-utils_7.7+5build2_amd64.deb ... Unpacking x11-utils (7.7+5build2) ... Selecting previously unselected package libatk-wrapper-java. Preparing to unpack .../07-libatk-wrapper-java_0.38.0-5build1_all.deb ... Unpacking libatk-wrapper-java (0.38.0-5build1) ... Selecting previously unselected package libatk-wrapper-java-jni:amd64. Preparing to unpack .../08-libatk-wrapper-java-jni_0.38.0-5build1_amd64.deb ... Unpacking libatk-wrapper-java-jni:amd64 (0.38.0-5build1) ... Selecting previously unselected package libgtk2.0-common. Preparing to unpack .../09-libgtk2.0-common_2.24.33-2ubuntu2_all.deb ... Unpacking libgtk2.0-common (2.24.33-2ubuntu2) ... Selecting previously unselected package libgtk2.0-0:amd64. Preparing to unpack .../10-libgtk2.0-0_2.24.33-2ubuntu2_amd64.deb ... Unpacking libgtk2.0-0:amd64 (2.24.33-2ubuntu2) ... Selecting previously unselected package libgail18:amd64. Preparing to unpack .../11-libgail18_2.24.33-2ubuntu2_amd64.deb ... Unpacking libgail18:amd64 (2.24.33-2ubuntu2) ... Selecting previously unselected package libgail-common:amd64. Preparing to unpack .../12-libgail-common_2.24.33-2ubuntu2_amd64.deb ... Unpacking libgail-common:amd64 (2.24.33-2ubuntu2) ... Selecting previously unselected package libgtk2.0-bin. Preparing to unpack .../13-libgtk2.0-bin_2.24.33-2ubuntu2_amd64.deb ... Unpacking libgtk2.0-bin (2.24.33-2ubuntu2) ... Selecting previously unselected package libice-dev:amd64. Preparing to unpack .../14-libice-dev_2%3a1.0.10-1build2_amd64.deb ... Unpacking libice-dev:amd64 (2:1.0.10-1build2) ... Selecting previously unselected package librsvg2-common:amd64. Preparing to unpack .../15-librsvg2-common_2.52.5+dfsg-3ubuntu0.2_amd64.deb ... Unpacking librsvg2-common:amd64 (2.52.5+dfsg-3ubuntu0.2) ... Selecting previously unselected package libsm-dev:amd64. Preparing to unpack .../16-libsm-dev_2%3a1.2.3-1build2_amd64.deb ... Unpacking libsm-dev:amd64 (2:1.2.3-1build2) ... Selecting previously unselected package libxt-dev:amd64. Preparing to unpack .../17-libxt-dev_1%3a1.2.1-1_amd64.deb ... Unpacking libxt-dev:amd64 (1:1.2.1-1) ... Selecting previously unselected package openjdk-8-jre-headless:amd64. Preparing to unpack .../18-openjdk-8-jre-headless_8u382-ga-1~22.04.1_amd64.deb ... Unpacking openjdk-8-jre-headless:amd64 (8u382-ga-1~22.04.1) ... Selecting previously unselected package openjdk-8-jre:amd64. Preparing to unpack .../19-openjdk-8-jre_8u382-ga-1~22.04.1_amd64.deb ... Unpacking openjdk-8-jre:amd64 (8u382-ga-1~22.04.1) ... Selecting previously unselected package openjdk-8-jdk-headless:amd64. Preparing to unpack .../20-openjdk-8-jdk-headless_8u382-ga-1~22.04.1_amd64.deb ... Unpacking openjdk-8-jdk-headless:amd64 (8u382-ga-1~22.04.1) ... Selecting previously unselected package openjdk-8-jdk:amd64. Preparing to unpack .../21-openjdk-8-jdk_8u382-ga-1~22.04.1_amd64.deb ... Unpacking openjdk-8-jdk:amd64 (8u382-ga-1~22.04.1) ... Setting up libice-dev:amd64 (2:1.0.10-1build2) ... Setting up libsm-dev:amd64 (2:1.2.3-1build2) ... Setting up libxtst6:amd64 (2:1.2.3-1build4) ... Setting up libxxf86dga1:amd64 (2:1.1.5-0ubuntu3) ... Setting up libfontenc1:amd64 (1:1.1.4-1build3) ... Setting up libxt-dev:amd64 (1:1.2.1-1) ... Setting up openjdk-8-jre-headless:amd64 (8u382-ga-1~22.04.1) ... update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/orbd to provide /usr/bin/orbd (orbd) in auto mode update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/servertool to provide /usr/bin/servertool (servertool) in auto mode update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/tnameserv to provide /usr/bin/tnameserv (tnameserv) in auto mode Setting up fonts-dejavu-core (2.37-2build1) ... Setting up librsvg2-common:amd64 (2.52.5+dfsg-3ubuntu0.2) ... Setting up fonts-dejavu-extra (2.37-2build1) ... Setting up libgtk2.0-common (2.24.33-2ubuntu2) ... Setting up libxkbfile1:amd64 (1:1.1.0-1build3) ... Setting up libgtk2.0-0:amd64 (2.24.33-2ubuntu2) ... Setting up openjdk-8-jdk-headless:amd64 (8u382-ga-1~22.04.1) ... update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/clhsdb to provide /usr/bin/clhsdb (clhsdb) in auto mode update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/extcheck to provide /usr/bin/extcheck (extcheck) in auto mode update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/hsdb to provide /usr/bin/hsdb (hsdb) in auto mode update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/idlj to provide /usr/bin/idlj (idlj) in auto mode update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/javah to provide /usr/bin/javah (javah) in auto mode update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/jhat to provide /usr/bin/jhat (jhat) in auto mode update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/jsadebugd to provide /usr/bin/jsadebugd (jsadebugd) in auto mode update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/native2ascii to provide /usr/bin/native2ascii (native2ascii) in auto mode update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/schemagen to provide /usr/bin/schemagen (schemagen) in auto mode update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/wsgen to provide /usr/bin/wsgen (wsgen) in auto mode update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/wsimport to provide /usr/bin/wsimport (wsimport) in auto mode update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/xjc to provide /usr/bin/xjc (xjc) in auto mode Setting up libgail18:amd64 (2.24.33-2ubuntu2) ... Setting up libgtk2.0-bin (2.24.33-2ubuntu2) ... Setting up x11-utils (7.7+5build2) ... Setting up libatk-wrapper-java (0.38.0-5build1) ... Setting up libgail-common:amd64 (2.24.33-2ubuntu2) ... Setting up libatk-wrapper-java-jni:amd64 (0.38.0-5build1) ... Setting up openjdk-8-jre:amd64 (8u382-ga-1~22.04.1) ... update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/policytool to provide /usr/bin/policytool (policytool) in auto mode Setting up openjdk-8-jdk:amd64 (8u382-ga-1~22.04.1) ... update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/appletviewer to provide /usr/bin/appletviewer (appletviewer) in auto mode update-alternatives: using /usr/lib/jvm/java-8-openjdk-amd64/bin/jconsole to provide /usr/bin/jconsole (jconsole) in auto mode Processing triggers for hicolor-icon-theme (0.17-2) ... Processing triggers for libc-bin (2.35-0ubuntu3.1) ... /sbin/ldconfig.real: /usr/local/lib/libtbbmalloc.so.2 is not a symbolic link /sbin/ldconfig.real: /usr/local/lib/libtbbmalloc_proxy.so.2 is not a symbolic link /sbin/ldconfig.real: /usr/local/lib/libtbb.so.12 is not a symbolic link /sbin/ldconfig.real: /usr/local/lib/libtbbbind_2_5.so.3 is not a symbolic link /sbin/ldconfig.real: /usr/local/lib/libtbbbind.so.3 is not a symbolic link /sbin/ldconfig.real: /usr/local/lib/libtbbbind_2_0.so.3 is not a symbolic link Processing triggers for man-db (2.10.2-1) ... Processing triggers for libgdk-pixbuf-2.0-0:amd64 (2.42.8+dfsg-1ubuntu0.2) ... Processing triggers for fontconfig (2.13.1-4.2ubuntu5) ... Collecting konlpy Downloading konlpy-0.6.0-py2.py3-none-any.whl (19.4 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 19.4/19.4 MB 50.0 MB/s eta 0:00:00 Collecting JPype1-py3 Downloading JPype1-py3-0.5.5.4.tar.gz (88 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 88.4/88.4 kB 11.1 MB/s eta 0:00:00 Preparing metadata (setup.py) ... done Collecting JPype1>=0.7.0 (from konlpy) Downloading JPype1-1.4.1-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (465 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 465.3/465.3 kB 38.2 MB/s eta 0:00:00 Requirement already satisfied: lxml>=4.1.0 in /usr/local/lib/python3.10/dist-packages (from konlpy) (4.9.3) Requirement already satisfied: numpy>=1.6 in /usr/local/lib/python3.10/dist-packages (from konlpy) (1.23.5) Requirement already satisfied: packaging in /usr/local/lib/python3.10/dist-packages (from JPype1>=0.7.0->konlpy) (23.1) Building wheels for collected packages: JPype1-py3 Building wheel for JPype1-py3 (setup.py) ... done Created wheel for JPype1-py3: filename=JPype1_py3-0.5.5.4-cp310-cp310-linux_x86_64.whl size=3258008 sha256=542fe05856f8f09bec826ab919aee1c2531bf3a0a1e4b067c2528acf2bd75aa4 Stored in directory: /root/.cache/pip/wheels/57/72/ea/b886a286a27c6e3c35ba9e9833b13abc5c5bdc0a9cad91e328 Successfully built JPype1-py3 Installing collected packages: JPype1-py3, JPype1, konlpy Successfully installed JPype1-1.4.1 JPype1-py3-0.5.5.4 konlpy-0.6.0 Install mecab-ko % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 100 1381k 100 1381k 0 0 1088k 0 0:00:01 0:00:01 --:--:-- 6705k mecab-0.996-ko-0.9.2/ mecab-0.996-ko-0.9.2/example/ mecab-0.996-ko-0.9.2/example/example.cpp mecab-0.996-ko-0.9.2/example/example_lattice.cpp mecab-0.996-ko-0.9.2/example/example_lattice.c mecab-0.996-ko-0.9.2/example/example.c mecab-0.996-ko-0.9.2/example/thread_test.cpp mecab-0.996-ko-0.9.2/mecab-config.in mecab-0.996-ko-0.9.2/man/ mecab-0.996-ko-0.9.2/man/Makefile.am mecab-0.996-ko-0.9.2/man/mecab.1 mecab-0.996-ko-0.9.2/man/Makefile.in mecab-0.996-ko-0.9.2/mecab.iss.in mecab-0.996-ko-0.9.2/config.guess mecab-0.996-ko-0.9.2/README mecab-0.996-ko-0.9.2/COPYING mecab-0.996-ko-0.9.2/CHANGES.md mecab-0.996-ko-0.9.2/README.md mecab-0.996-ko-0.9.2/INSTALL mecab-0.996-ko-0.9.2/config.sub mecab-0.996-ko-0.9.2/configure.in mecab-0.996-ko-0.9.2/swig/ mecab-0.996-ko-0.9.2/swig/Makefile mecab-0.996-ko-0.9.2/swig/version.h.in mecab-0.996-ko-0.9.2/swig/version.h mecab-0.996-ko-0.9.2/swig/MeCab.i mecab-0.996-ko-0.9.2/aclocal.m4 mecab-0.996-ko-0.9.2/LGPL mecab-0.996-ko-0.9.2/Makefile.am mecab-0.996-ko-0.9.2/configure mecab-0.996-ko-0.9.2/tests/ mecab-0.996-ko-0.9.2/tests/autolink/ mecab-0.996-ko-0.9.2/tests/autolink/unk.def mecab-0.996-ko-0.9.2/tests/autolink/dicrc mecab-0.996-ko-0.9.2/tests/autolink/dic.csv mecab-0.996-ko-0.9.2/tests/autolink/test mecab-0.996-ko-0.9.2/tests/autolink/char.def mecab-0.996-ko-0.9.2/tests/autolink/matrix.def mecab-0.996-ko-0.9.2/tests/autolink/test.gld mecab-0.996-ko-0.9.2/tests/t9/ mecab-0.996-ko-0.9.2/tests/t9/unk.def mecab-0.996-ko-0.9.2/tests/t9/ipadic.pl mecab-0.996-ko-0.9.2/tests/t9/dicrc mecab-0.996-ko-0.9.2/tests/t9/dic.csv mecab-0.996-ko-0.9.2/tests/t9/test mecab-0.996-ko-0.9.2/tests/t9/char.def mecab-0.996-ko-0.9.2/tests/t9/matrix.def mecab-0.996-ko-0.9.2/tests/t9/mkdic.pl mecab-0.996-ko-0.9.2/tests/t9/test.gld mecab-0.996-ko-0.9.2/tests/cost-train/ mecab-0.996-ko-0.9.2/tests/cost-train/ipa.train mecab-0.996-ko-0.9.2/tests/cost-train/ipa.test mecab-0.996-ko-0.9.2/tests/cost-train/seed/ mecab-0.996-ko-0.9.2/tests/cost-train/seed/rewrite.def mecab-0.996-ko-0.9.2/tests/cost-train/seed/feature.def mecab-0.996-ko-0.9.2/tests/cost-train/seed/unk.def mecab-0.996-ko-0.9.2/tests/cost-train/seed/dicrc mecab-0.996-ko-0.9.2/tests/cost-train/seed/dic.csv mecab-0.996-ko-0.9.2/tests/cost-train/seed/char.def mecab-0.996-ko-0.9.2/tests/cost-train/seed/matrix.def mecab-0.996-ko-0.9.2/tests/run-eval.sh mecab-0.996-ko-0.9.2/tests/run-cost-train.sh mecab-0.996-ko-0.9.2/tests/Makefile.am mecab-0.996-ko-0.9.2/tests/katakana/ mecab-0.996-ko-0.9.2/tests/katakana/unk.def mecab-0.996-ko-0.9.2/tests/katakana/dicrc mecab-0.996-ko-0.9.2/tests/katakana/dic.csv mecab-0.996-ko-0.9.2/tests/katakana/test mecab-0.996-ko-0.9.2/tests/katakana/char.def mecab-0.996-ko-0.9.2/tests/katakana/matrix.def mecab-0.996-ko-0.9.2/tests/katakana/test.gld mecab-0.996-ko-0.9.2/tests/eval/ mecab-0.996-ko-0.9.2/tests/eval/answer mecab-0.996-ko-0.9.2/tests/eval/system mecab-0.996-ko-0.9.2/tests/eval/test.gld mecab-0.996-ko-0.9.2/tests/shiin/ mecab-0.996-ko-0.9.2/tests/shiin/unk.def mecab-0.996-ko-0.9.2/tests/shiin/dicrc mecab-0.996-ko-0.9.2/tests/shiin/dic.csv mecab-0.996-ko-0.9.2/tests/shiin/test mecab-0.996-ko-0.9.2/tests/shiin/char.def mecab-0.996-ko-0.9.2/tests/shiin/matrix.def mecab-0.996-ko-0.9.2/tests/shiin/mkdic.pl mecab-0.996-ko-0.9.2/tests/shiin/test.gld mecab-0.996-ko-0.9.2/tests/latin/ mecab-0.996-ko-0.9.2/tests/latin/unk.def mecab-0.996-ko-0.9.2/tests/latin/dicrc mecab-0.996-ko-0.9.2/tests/latin/dic.csv mecab-0.996-ko-0.9.2/tests/latin/test mecab-0.996-ko-0.9.2/tests/latin/char.def mecab-0.996-ko-0.9.2/tests/latin/matrix.def mecab-0.996-ko-0.9.2/tests/latin/test.gld mecab-0.996-ko-0.9.2/tests/chartype/ mecab-0.996-ko-0.9.2/tests/chartype/unk.def mecab-0.996-ko-0.9.2/tests/chartype/dicrc mecab-0.996-ko-0.9.2/tests/chartype/dic.csv mecab-0.996-ko-0.9.2/tests/chartype/test mecab-0.996-ko-0.9.2/tests/chartype/char.def mecab-0.996-ko-0.9.2/tests/chartype/matrix.def mecab-0.996-ko-0.9.2/tests/chartype/test.gld mecab-0.996-ko-0.9.2/tests/run-dics.sh mecab-0.996-ko-0.9.2/tests/ngram/ mecab-0.996-ko-0.9.2/tests/ngram/unk.def mecab-0.996-ko-0.9.2/tests/ngram/dicrc mecab-0.996-ko-0.9.2/tests/ngram/dic.csv mecab-0.996-ko-0.9.2/tests/ngram/test mecab-0.996-ko-0.9.2/tests/ngram/char.def mecab-0.996-ko-0.9.2/tests/ngram/matrix.def mecab-0.996-ko-0.9.2/tests/ngram/test.gld mecab-0.996-ko-0.9.2/tests/Makefile.in mecab-0.996-ko-0.9.2/ltmain.sh mecab-0.996-ko-0.9.2/config.rpath mecab-0.996-ko-0.9.2/config.h.in mecab-0.996-ko-0.9.2/mecabrc.in mecab-0.996-ko-0.9.2/GPL mecab-0.996-ko-0.9.2/Makefile.train mecab-0.996-ko-0.9.2/ChangeLog mecab-0.996-ko-0.9.2/install-sh mecab-0.996-ko-0.9.2/AUTHORS mecab-0.996-ko-0.9.2/doc/ mecab-0.996-ko-0.9.2/doc/bindings.html mecab-0.996-ko-0.9.2/doc/posid.html mecab-0.996-ko-0.9.2/doc/unk.html mecab-0.996-ko-0.9.2/doc/learn.html mecab-0.996-ko-0.9.2/doc/format.html mecab-0.996-ko-0.9.2/doc/libmecab.html mecab-0.996-ko-0.9.2/doc/mecab.css mecab-0.996-ko-0.9.2/doc/feature.html mecab-0.996-ko-0.9.2/doc/Makefile.am mecab-0.996-ko-0.9.2/doc/soft.html mecab-0.996-ko-0.9.2/doc/en/ mecab-0.996-ko-0.9.2/doc/en/bindings.html mecab-0.996-ko-0.9.2/doc/dic-detail.html mecab-0.996-ko-0.9.2/doc/flow.png mecab-0.996-ko-0.9.2/doc/mecab.html mecab-0.996-ko-0.9.2/doc/index.html mecab-0.996-ko-0.9.2/doc/result.png mecab-0.996-ko-0.9.2/doc/doxygen/ mecab-0.996-ko-0.9.2/doc/doxygen/tab_a.png mecab-0.996-ko-0.9.2/doc/doxygen/globals_eval.html mecab-0.996-ko-0.9.2/doc/doxygen/classMeCab_1_1Tagger-members.html mecab-0.996-ko-0.9.2/doc/doxygen/functions_vars.html mecab-0.996-ko-0.9.2/doc/doxygen/doxygen.css mecab-0.996-ko-0.9.2/doc/doxygen/tab_r.gif mecab-0.996-ko-0.9.2/doc/doxygen/classMeCab_1_1Lattice.html mecab-0.996-ko-0.9.2/doc/doxygen/functions.html mecab-0.996-ko-0.9.2/doc/doxygen/classMeCab_1_1Tagger.html mecab-0.996-ko-0.9.2/doc/doxygen/mecab_8h_source.html mecab-0.996-ko-0.9.2/doc/doxygen/tabs.css mecab-0.996-ko-0.9.2/doc/doxygen/nav_f.png mecab-0.996-ko-0.9.2/doc/doxygen/tab_b.png mecab-0.996-ko-0.9.2/doc/doxygen/globals.html mecab-0.996-ko-0.9.2/doc/doxygen/nav_h.png mecab-0.996-ko-0.9.2/doc/doxygen/tab_h.png mecab-0.996-ko-0.9.2/doc/doxygen/classMeCab_1_1Model.html mecab-0.996-ko-0.9.2/doc/doxygen/globals_func.html mecab-0.996-ko-0.9.2/doc/doxygen/closed.png mecab-0.996-ko-0.9.2/doc/doxygen/tab_l.gif mecab-0.996-ko-0.9.2/doc/doxygen/structmecab__path__t-members.html mecab-0.996-ko-0.9.2/doc/doxygen/functions_func.html mecab-0.996-ko-0.9.2/doc/doxygen/globals_type.html mecab-0.996-ko-0.9.2/doc/doxygen/classMeCab_1_1Lattice-members.html mecab-0.996-ko-0.9.2/doc/doxygen/structmecab__node__t.html mecab-0.996-ko-0.9.2/doc/doxygen/namespacemembers_func.html mecab-0.996-ko-0.9.2/doc/doxygen/tab_s.png mecab-0.996-ko-0.9.2/doc/doxygen/structmecab__dictionary__info__t-members.html mecab-0.996-ko-0.9.2/doc/doxygen/namespacemembers_type.html mecab-0.996-ko-0.9.2/doc/doxygen/classMeCab_1_1Model-members.html mecab-0.996-ko-0.9.2/doc/doxygen/structmecab__dictionary__info__t.html mecab-0.996-ko-0.9.2/doc/doxygen/namespaces.html mecab-0.996-ko-0.9.2/doc/doxygen/namespacemembers.html mecab-0.996-ko-0.9.2/doc/doxygen/namespaceMeCab.html mecab-0.996-ko-0.9.2/doc/doxygen/structmecab__path__t.html mecab-0.996-ko-0.9.2/doc/doxygen/files.html mecab-0.996-ko-0.9.2/doc/doxygen/structmecab__node__t-members.html mecab-0.996-ko-0.9.2/doc/doxygen/index.html mecab-0.996-ko-0.9.2/doc/doxygen/annotated.html mecab-0.996-ko-0.9.2/doc/doxygen/globals_defs.html mecab-0.996-ko-0.9.2/doc/doxygen/classes.html mecab-0.996-ko-0.9.2/doc/doxygen/mecab_8h-source.html mecab-0.996-ko-0.9.2/doc/doxygen/doxygen.png mecab-0.996-ko-0.9.2/doc/doxygen/tab_b.gif mecab-0.996-ko-0.9.2/doc/doxygen/bc_s.png mecab-0.996-ko-0.9.2/doc/doxygen/open.png mecab-0.996-ko-0.9.2/doc/doxygen/mecab_8h.html mecab-0.996-ko-0.9.2/doc/dic.html mecab-0.996-ko-0.9.2/doc/partial.html mecab-0.996-ko-0.9.2/doc/feature.png mecab-0.996-ko-0.9.2/doc/Makefile.in mecab-0.996-ko-0.9.2/missing mecab-0.996-ko-0.9.2/BSD mecab-0.996-ko-0.9.2/NEWS mecab-0.996-ko-0.9.2/mkinstalldirs mecab-0.996-ko-0.9.2/src/ mecab-0.996-ko-0.9.2/src/dictionary.h mecab-0.996-ko-0.9.2/src/writer.h mecab-0.996-ko-0.9.2/src/utils.h mecab-0.996-ko-0.9.2/src/string_buffer.cpp mecab-0.996-ko-0.9.2/src/tokenizer.cpp mecab-0.996-ko-0.9.2/src/make.bat mecab-0.996-ko-0.9.2/src/mecab.h mecab-0.996-ko-0.9.2/src/freelist.h mecab-0.996-ko-0.9.2/src/string_buffer.h mecab-0.996-ko-0.9.2/src/learner_tagger.h mecab-0.996-ko-0.9.2/src/dictionary_compiler.cpp mecab-0.996-ko-0.9.2/src/eval.cpp mecab-0.996-ko-0.9.2/src/mecab-system-eval.cpp mecab-0.996-ko-0.9.2/src/darts.h mecab-0.996-ko-0.9.2/src/param.h mecab-0.996-ko-0.9.2/src/char_property.h mecab-0.996-ko-0.9.2/src/learner_node.h mecab-0.996-ko-0.9.2/src/mecab-dict-gen.cpp mecab-0.996-ko-0.9.2/src/mecab-dict-index.cpp mecab-0.996-ko-0.9.2/src/winmain.h mecab-0.996-ko-0.9.2/src/thread.h mecab-0.996-ko-0.9.2/src/context_id.cpp mecab-0.996-ko-0.9.2/src/Makefile.am mecab-0.996-ko-0.9.2/src/connector.h mecab-0.996-ko-0.9.2/src/common.h mecab-0.996-ko-0.9.2/src/dictionary_rewriter.cpp mecab-0.996-ko-0.9.2/src/Makefile.msvc.in mecab-0.996-ko-0.9.2/src/dictionary_rewriter.h mecab-0.996-ko-0.9.2/src/feature_index.h mecab-0.996-ko-0.9.2/src/iconv_utils.cpp mecab-0.996-ko-0.9.2/src/char_property.cpp mecab-0.996-ko-0.9.2/src/mecab-test-gen.cpp mecab-0.996-ko-0.9.2/src/tagger.cpp mecab-0.996-ko-0.9.2/src/mecab-cost-train.cpp mecab-0.996-ko-0.9.2/src/learner.cpp mecab-0.996-ko-0.9.2/src/dictionary.cpp mecab-0.996-ko-0.9.2/src/lbfgs.cpp mecab-0.996-ko-0.9.2/src/ucs.h mecab-0.996-ko-0.9.2/src/writer.cpp mecab-0.996-ko-0.9.2/src/learner_tagger.cpp mecab-0.996-ko-0.9.2/src/lbfgs.h mecab-0.996-ko-0.9.2/src/libmecab.cpp mecab-0.996-ko-0.9.2/src/tokenizer.h mecab-0.996-ko-0.9.2/src/mecab.cpp mecab-0.996-ko-0.9.2/src/utils.cpp mecab-0.996-ko-0.9.2/src/dictionary_generator.cpp mecab-0.996-ko-0.9.2/src/param.cpp mecab-0.996-ko-0.9.2/src/context_id.h mecab-0.996-ko-0.9.2/src/mmap.h mecab-0.996-ko-0.9.2/src/viterbi.h mecab-0.996-ko-0.9.2/src/viterbi.cpp mecab-0.996-ko-0.9.2/src/stream_wrapper.h mecab-0.996-ko-0.9.2/src/feature_index.cpp mecab-0.996-ko-0.9.2/src/nbest_generator.h mecab-0.996-ko-0.9.2/src/ucstable.h mecab-0.996-ko-0.9.2/src/nbest_generator.cpp mecab-0.996-ko-0.9.2/src/iconv_utils.h mecab-0.996-ko-0.9.2/src/connector.cpp mecab-0.996-ko-0.9.2/src/Makefile.in mecab-0.996-ko-0.9.2/src/scoped_ptr.h mecab-0.996-ko-0.9.2/Makefile.in checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /usr/bin/mkdir -p checking for gawk... no checking for mawk... mawk checking whether make sets $(MAKE)... yes checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking for style of include used by make... GNU checking dependency style of gcc... none checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking dependency style of g++... none checking how to run the C preprocessor... gcc -E checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking whether gcc needs -traditional... no checking whether make sets $(MAKE)... (cached) yes checking build system type... x86_64-unknown-linux-gnu checking host system type... x86_64-unknown-linux-gnu checking how to print strings... printf checking for a sed that does not truncate output... /usr/bin/sed checking for fgrep... /usr/bin/grep -F checking for ld used by gcc... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... yes checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B checking the name lister (/usr/bin/nm -B) interface... BSD nm checking whether ln -s works... yes checking the maximum length of command line arguments... 1572864 checking whether the shell understands some XSI constructs... yes checking whether the shell understands "+="... yes checking how to convert x86_64-unknown-linux-gnu file names to x86_64-unknown-linux-gnu format... func_convert_file_noop checking how to convert x86_64-unknown-linux-gnu file names to toolchain format... func_convert_file_noop checking for /usr/bin/ld option to reload object files... -r checking for objdump... objdump checking how to recognize dependent libraries... pass_all checking for dlltool... dlltool checking how to associate runtime and link libraries... printf %s\n checking for ar... ar checking for archiver @FILE support... @ checking for strip... strip checking for ranlib... ranlib checking command to parse /usr/bin/nm -B output from gcc object... ok checking for sysroot... no checking for mt... no checking if : is a manifest tool... no checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for dlfcn.h... yes checking for objdir... .libs checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC -DPIC checking if gcc PIC flag -fPIC -DPIC works... yes checking if gcc static flag -static works... yes checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes checking whether -lc should be explicitly linked in... no checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes checking how to run the C++ preprocessor... g++ -E checking for ld used by g++... /usr/bin/ld -m elf_x86_64 checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes checking for g++ option to produce PIC... -fPIC -DPIC checking if g++ PIC flag -fPIC -DPIC works... yes checking if g++ static flag -static works... yes checking if g++ supports -c -o file.o... yes checking if g++ supports -c -o file.o... (cached) yes checking whether the g++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes checking dynamic linker characteristics... (cached) GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking for library containing strerror... none required checking whether byte ordering is bigendian... no checking for ld used by GCC... /usr/bin/ld -m elf_x86_64 checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes checking for shared library run path origin... done checking for iconv... yes checking for working iconv... yes checking for iconv declaration... extern size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); checking for ANSI C header files... (cached) yes checking for an ANSI C-conforming const... yes checking whether byte ordering is bigendian... (cached) no checking for string.h... (cached) yes checking for stdlib.h... (cached) yes checking for unistd.h... (cached) yes checking fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking for stdint.h... (cached) yes checking for sys/stat.h... (cached) yes checking sys/mman.h usability... yes checking sys/mman.h presence... yes checking for sys/mman.h... yes checking sys/times.h usability... yes checking sys/times.h presence... yes checking for sys/times.h... yes checking for sys/types.h... (cached) yes checking dirent.h usability... yes checking dirent.h presence... yes checking for dirent.h... yes checking ctype.h usability... yes checking ctype.h presence... yes checking for ctype.h... yes checking for sys/types.h... (cached) yes checking io.h usability... no checking io.h presence... no checking for io.h... no checking windows.h usability... no checking windows.h presence... no checking for windows.h... no checking pthread.h usability... yes checking pthread.h presence... yes checking for pthread.h... yes checking for off_t... yes checking for size_t... yes checking size of char... 1 checking size of short... 2 checking size of int... 4 checking size of long... 8 checking size of long long... 8 checking size of size_t... 8 checking for size_t... (cached) yes checking for unsigned long long int... yes checking for stdlib.h... (cached) yes checking for unistd.h... (cached) yes checking for sys/param.h... yes checking for getpagesize... yes checking for working mmap... yes checking for main in -lstdc++... yes checking for pthread_create in -lpthread... yes checking for pthread_join in -lpthread... yes checking for getenv... yes checking for opendir... yes checking whether make is GNU Make... yes checking if g++ supports stl <vector> (required)... yes checking if g++ supports stl <list> (required)... yes checking if g++ supports stl <map> (required)... yes checking if g++ supports stl <set> (required)... yes checking if g++ supports stl <queue> (required)... yes checking if g++ supports stl <functional> (required)... yes checking if g++ supports stl <algorithm> (required)... yes checking if g++ supports stl <string> (required)... yes checking if g++ supports stl <iostream> (required)... yes checking if g++ supports stl <sstream> (required)... yes checking if g++ supports stl <fstream> (required)... yes checking if g++ supports template <class T> (required)... yes checking if g++ supports const_cast<> (required)... yes checking if g++ supports static_cast<> (required)... yes checking if g++ supports reinterpret_cast<> (required)... yes checking if g++ supports namespaces (required) ... yes checking if g++ supports __thread (optional)... yes checking if g++ supports template <class T> (required)... yes checking if g++ supports GCC native atomic operations (optional)... yes checking if g++ supports OSX native atomic operations (optional)... no checking if g++ environment provides all required features... yes configure: creating ./config.status config.status: creating Makefile config.status: creating src/Makefile config.status: creating src/Makefile.msvc config.status: creating man/Makefile config.status: creating doc/Makefile config.status: creating tests/Makefile config.status: creating swig/version.h config.status: creating mecab.iss config.status: creating mecab-config config.status: creating mecabrc config.status: creating config.h config.status: executing depfiles commands config.status: executing libtool commands config.status: executing default commands make all-recursive make[1]: Entering directory '/tmp/mecab-0.996-ko-0.9.2' Making all in src make[2]: Entering directory '/tmp/mecab-0.996-ko-0.9.2/src' /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o viterbi.lo viterbi.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c viterbi.cpp -fPIC -DPIC -o .libs/viterbi.o In file included from dictionary.h:11, from tokenizer.h:11, from viterbi.cpp:18: darts.h: In member function ‘T MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, size_t, size_t) const’: darts.h:407:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 407 | register array_type_ b = array_[node_pos].base; | ^ darts.h:408:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 408 | register array_u_type_ p; | ^ darts.h:410:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 410 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In member function ‘size_t MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::commonPrefixSearch(const key_type*, T*, size_t, size_t, size_t) const’: darts.h:434:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 434 | register array_type_ b = array_[node_pos].base; | ^ darts.h:435:25: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 435 | register size_t num = 0; | ^~~ darts.h:436:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 436 | register array_type_ n; | ^ darts.h:437:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 437 | register array_u_type_ p; | ^ darts.h:439:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 439 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In member function ‘MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::value_type MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::traverse(const key_type*, size_t&, size_t&, size_t) const’: darts.h:472:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 472 | register array_type_ b = array_[node_pos].base; | ^ darts.h:473:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 473 | register array_u_type_ p; | ^ In file included from dictionary.h:12, from tokenizer.h:11, from viterbi.cpp:18: char_property.h: In member function ‘const char* MeCab::CharProperty::seekToOtherType(const char*, const char*, MeCab::CharInfo, MeCab::CharInfo*, size_t*, size_t*) const’: char_property.h:40:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 40 | register const char *p = begin; | ^ viterbi.cpp: In function ‘bool MeCab::{anonymous}::connect(size_t, MeCab::Node*, MeCab::Node**, MeCab::Node**, const MeCab::Connector*, MeCab::Allocator<mecab_node_t, mecab_path_t>*)’: viterbi.cpp:321:19: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 321 | register long best_cost = 2147483647; | ^~~~~~~~~ viterbi.cpp:324:20: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 324 | register int lcost = connector->cost(lnode, rnode); // local cost | ^~~~~ viterbi.cpp:325:21: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 325 | register long cost = lnode->cost + lcost; | ^~~~ In file included from dictionary.h:11, from tokenizer.h:11, from viterbi.cpp:18: darts.h: In instantiation of ‘size_t MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::commonPrefixSearch(const key_type*, T*, size_t, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; size_t = long unsigned int; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char]’: dictionary.h:37:34: required from here darts.h:434:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 434 | register array_type_ b = array_[node_pos].base; | ^ darts.h:435:25: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 435 | register size_t num = 0; | ^~~ darts.h:436:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 436 | register array_type_ n; | ^ darts.h:437:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 437 | register array_u_type_ p; | ^ darts.h:439:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 439 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In instantiation of ‘T MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char; size_t = long unsigned int]’: darts.h:394:33: required from ‘void MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, T&, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char; size_t = long unsigned int]’ dictionary.h:42:25: required from here darts.h:407:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 407 | register array_type_ b = array_[node_pos].base; | ^ darts.h:408:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 408 | register array_u_type_ p; | ^ darts.h:410:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 410 | for (register size_t i = 0; i < len; ++i) { | ^ viterbi.cpp: In instantiation of ‘bool MeCab::{anonymous}::connect(size_t, MeCab::Node*, MeCab::Node**, MeCab::Node**, const MeCab::Connector*, MeCab::Allocator<mecab_node_t, mecab_path_t>*) [with bool IsAllPath = true; size_t = long unsigned int; MeCab::Node = mecab_node_t]’: viterbi.cpp:379:30: required from ‘bool MeCab::Viterbi::viterbi(MeCab::Lattice*) const [with bool IsAllPath = true; bool IsPartial = true]’ viterbi.cpp:84:35: required from here viterbi.cpp:321:19: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 321 | register long best_cost = 2147483647; | ^~~~~~~~~ viterbi.cpp:324:20: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 324 | register int lcost = connector->cost(lnode, rnode); // local cost | ^~~~~ viterbi.cpp:325:21: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 325 | register long cost = lnode->cost + lcost; | ^~~~ viterbi.cpp: In instantiation of ‘bool MeCab::{anonymous}::connect(size_t, MeCab::Node*, MeCab::Node**, MeCab::Node**, const MeCab::Connector*, MeCab::Allocator<mecab_node_t, mecab_path_t>*) [with bool IsAllPath = false; size_t = long unsigned int; MeCab::Node = mecab_node_t]’: viterbi.cpp:379:30: required from ‘bool MeCab::Viterbi::viterbi(MeCab::Lattice*) const [with bool IsAllPath = false; bool IsPartial = true]’ viterbi.cpp:91:36: required from here viterbi.cpp:321:19: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 321 | register long best_cost = 2147483647; | ^~~~~~~~~ viterbi.cpp:324:20: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 324 | register int lcost = connector->cost(lnode, rnode); // local cost | ^~~~~ viterbi.cpp:325:21: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 325 | register long cost = lnode->cost + lcost; | ^~~~ In file included from viterbi.cpp:14: param.h: At global scope: param.h:30:13: warning: ‘Target {anonymous}::lexical_cast(Source) [with Target = std::__cxx11::basic_string<char>; Source = std::__cxx11::basic_string<char>]’ defined but not used []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-function-Wunused-function]8;;] 30 | std::string lexical_cast<std::string, std::string>(std::string arg) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c viterbi.cpp -o viterbi.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o tagger.lo tagger.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c tagger.cpp -fPIC -DPIC -o .libs/tagger.o In file included from dictionary.h:11, from tokenizer.h:11, from tagger.cpp:18: darts.h: In member function ‘T MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, size_t, size_t) const’: darts.h:407:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 407 | register array_type_ b = array_[node_pos].base; | ^ darts.h:408:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 408 | register array_u_type_ p; | ^ darts.h:410:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 410 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In member function ‘size_t MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::commonPrefixSearch(const key_type*, T*, size_t, size_t, size_t) const’: darts.h:434:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 434 | register array_type_ b = array_[node_pos].base; | ^ darts.h:435:25: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 435 | register size_t num = 0; | ^~~ darts.h:436:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 436 | register array_type_ n; | ^ darts.h:437:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 437 | register array_u_type_ p; | ^ darts.h:439:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 439 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In member function ‘MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::value_type MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::traverse(const key_type*, size_t&, size_t&, size_t) const’: darts.h:472:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 472 | register array_type_ b = array_[node_pos].base; | ^ darts.h:473:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 473 | register array_u_type_ p; | ^ In file included from dictionary.h:12, from tokenizer.h:11, from tagger.cpp:18: char_property.h: In member function ‘const char* MeCab::CharProperty::seekToOtherType(const char*, const char*, MeCab::CharInfo, MeCab::CharInfo*, size_t*, size_t*) const’: char_property.h:40:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 40 | register const char *p = begin; | ^ In file included from dictionary.h:11, from tokenizer.h:11, from tagger.cpp:18: darts.h: In instantiation of ‘size_t MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::commonPrefixSearch(const key_type*, T*, size_t, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; size_t = long unsigned int; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char]’: dictionary.h:37:34: required from here darts.h:434:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 434 | register array_type_ b = array_[node_pos].base; | ^ darts.h:435:25: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 435 | register size_t num = 0; | ^~~ darts.h:436:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 436 | register array_type_ n; | ^ darts.h:437:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 437 | register array_u_type_ p; | ^ darts.h:439:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 439 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In instantiation of ‘T MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char; size_t = long unsigned int]’: darts.h:394:33: required from ‘void MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, T&, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char; size_t = long unsigned int]’ dictionary.h:42:25: required from here darts.h:407:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 407 | register array_type_ b = array_[node_pos].base; | ^ darts.h:408:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 408 | register array_u_type_ p; | ^ darts.h:410:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 410 | for (register size_t i = 0; i < len; ++i) { | ^ libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c tagger.cpp -o tagger.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o utils.lo utils.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c utils.cpp -fPIC -DPIC -o .libs/utils.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c utils.cpp -o utils.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o eval.lo eval.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c eval.cpp -fPIC -DPIC -o .libs/eval.o In file included from /usr/include/string.h:535, from /usr/include/c++/11/cstring:42, from common.h:13, from eval.cpp:11: In function ‘char* strncpy(char*, const char*, size_t)’, inlined from ‘static bool MeCab::Eval::parseLevel(const char*, std::vector<int>*)’ at eval.cpp:63:17, inlined from ‘static bool MeCab::Eval::eval(int, char**)’ at eval.cpp:134:15: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound 8192 equals destination size []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-truncation-Wstringop-truncation]8;;] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c eval.cpp -o eval.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o iconv_utils.lo iconv_utils.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c iconv_utils.cpp -fPIC -DPIC -o .libs/iconv_utils.o In file included from iconv_utils.cpp:18: char_property.h: In member function ‘const char* MeCab::CharProperty::seekToOtherType(const char*, const char*, MeCab::CharInfo, MeCab::CharInfo*, size_t*, size_t*) const’: char_property.h:40:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 40 | register const char *p = begin; | ^ libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c iconv_utils.cpp -o iconv_utils.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o dictionary_rewriter.lo dictionary_rewriter.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c dictionary_rewriter.cpp -fPIC -DPIC -o .libs/dictionary_rewriter.o In file included from /usr/include/string.h:535, from /usr/include/c++/11/cstring:42, from dictionary_rewriter.cpp:6: In function ‘char* strncpy(char*, const char*, size_t)’, inlined from ‘bool {anonymous}::match_rewrite_pattern(const char*, const char*)’ at dictionary_rewriter.cpp:47:17, inlined from ‘bool MeCab::RewritePattern::rewrite(size_t, const char**, std::string*) const’ at dictionary_rewriter.cpp:81:31: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound 8192 equals destination size []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-truncation-Wstringop-truncation]8;;] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ In function ‘char* strncpy(char*, const char*, size_t)’, inlined from ‘bool MeCab::RewritePattern::set_pattern(const char*, const char*)’ at dictionary_rewriter.cpp:67:15: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound 8192 equals destination size []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-truncation-Wstringop-truncation]8;;] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ In function ‘char* strncpy(char*, const char*, size_t)’, inlined from ‘bool MeCab::RewritePattern::set_pattern(const char*, const char*)’ at dictionary_rewriter.cpp:70:15: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound 8192 equals destination size []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-truncation-Wstringop-truncation]8;;] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c dictionary_rewriter.cpp -o dictionary_rewriter.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o dictionary_generator.lo dictionary_generator.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c dictionary_generator.cpp -fPIC -DPIC -o .libs/dictionary_generator.o In file included from dictionary_generator.cpp:11: char_property.h: In member function ‘const char* MeCab::CharProperty::seekToOtherType(const char*, const char*, MeCab::CharInfo, MeCab::CharInfo*, size_t*, size_t*) const’: char_property.h:40:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 40 | register const char *p = begin; | ^ In file included from dictionary.h:11, from dictionary_generator.cpp:14: darts.h: In member function ‘T MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, size_t, size_t) const’: darts.h:407:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 407 | register array_type_ b = array_[node_pos].base; | ^ darts.h:408:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 408 | register array_u_type_ p; | ^ darts.h:410:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 410 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In member function ‘size_t MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::commonPrefixSearch(const key_type*, T*, size_t, size_t, size_t) const’: darts.h:434:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 434 | register array_type_ b = array_[node_pos].base; | ^ darts.h:435:25: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 435 | register size_t num = 0; | ^~~ darts.h:436:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 436 | register array_type_ n; | ^ darts.h:437:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 437 | register array_u_type_ p; | ^ darts.h:439:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 439 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In member function ‘MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::value_type MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::traverse(const key_type*, size_t&, size_t&, size_t) const’: darts.h:472:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 472 | register array_type_ b = array_[node_pos].base; | ^ darts.h:473:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 473 | register array_u_type_ p; | ^ darts.h: In instantiation of ‘size_t MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::commonPrefixSearch(const key_type*, T*, size_t, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; size_t = long unsigned int; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char]’: dictionary.h:37:34: required from here darts.h:434:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 434 | register array_type_ b = array_[node_pos].base; | ^ darts.h:435:25: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 435 | register size_t num = 0; | ^~~ darts.h:436:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 436 | register array_type_ n; | ^ darts.h:437:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 437 | register array_u_type_ p; | ^ darts.h:439:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 439 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In instantiation of ‘T MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char; size_t = long unsigned int]’: darts.h:394:33: required from ‘void MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, T&, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char; size_t = long unsigned int]’ dictionary.h:42:25: required from here darts.h:407:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 407 | register array_type_ b = array_[node_pos].base; | ^ darts.h:408:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 408 | register array_u_type_ p; | ^ darts.h:410:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 410 | for (register size_t i = 0; i < len; ++i) { | ^ libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c dictionary_generator.cpp -o dictionary_generator.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o dictionary_compiler.lo dictionary_compiler.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c dictionary_compiler.cpp -fPIC -DPIC -o .libs/dictionary_compiler.o In file included from dictionary_compiler.cpp:9: char_property.h: In member function ‘const char* MeCab::CharProperty::seekToOtherType(const char*, const char*, MeCab::CharInfo, MeCab::CharInfo*, size_t*, size_t*) const’: char_property.h:40:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 40 | register const char *p = begin; | ^ In file included from dictionary.h:11, from dictionary_compiler.cpp:11: darts.h: In member function ‘T MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, size_t, size_t) const’: darts.h:407:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 407 | register array_type_ b = array_[node_pos].base; | ^ darts.h:408:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 408 | register array_u_type_ p; | ^ darts.h:410:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 410 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In member function ‘size_t MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::commonPrefixSearch(const key_type*, T*, size_t, size_t, size_t) const’: darts.h:434:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 434 | register array_type_ b = array_[node_pos].base; | ^ darts.h:435:25: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 435 | register size_t num = 0; | ^~~ darts.h:436:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 436 | register array_type_ n; | ^ darts.h:437:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 437 | register array_u_type_ p; | ^ darts.h:439:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 439 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In member function ‘MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::value_type MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::traverse(const key_type*, size_t&, size_t&, size_t) const’: darts.h:472:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 472 | register array_type_ b = array_[node_pos].base; | ^ darts.h:473:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 473 | register array_u_type_ p; | ^ darts.h: In instantiation of ‘size_t MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::commonPrefixSearch(const key_type*, T*, size_t, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; size_t = long unsigned int; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char]’: dictionary.h:37:34: required from here darts.h:434:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 434 | register array_type_ b = array_[node_pos].base; | ^ darts.h:435:25: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 435 | register size_t num = 0; | ^~~ darts.h:436:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 436 | register array_type_ n; | ^ darts.h:437:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 437 | register array_u_type_ p; | ^ darts.h:439:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 439 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In instantiation of ‘T MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char; size_t = long unsigned int]’: darts.h:394:33: required from ‘void MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, T&, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char; size_t = long unsigned int]’ dictionary.h:42:25: required from here darts.h:407:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 407 | register array_type_ b = array_[node_pos].base; | ^ darts.h:408:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 408 | register array_u_type_ p; | ^ darts.h:410:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 410 | for (register size_t i = 0; i < len; ++i) { | ^ libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c dictionary_compiler.cpp -o dictionary_compiler.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o context_id.lo context_id.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c context_id.cpp -fPIC -DPIC -o .libs/context_id.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c context_id.cpp -o context_id.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o connector.lo connector.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c connector.cpp -fPIC -DPIC -o .libs/connector.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c connector.cpp -o connector.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o nbest_generator.lo nbest_generator.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c nbest_generator.cpp -fPIC -DPIC -o .libs/nbest_generator.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c nbest_generator.cpp -o nbest_generator.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o writer.lo writer.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c writer.cpp -fPIC -DPIC -o .libs/writer.o In file included from /usr/include/string.h:535, from /usr/include/c++/11/cstring:42, from writer.cpp:7: In function ‘char* strncpy(char*, const char*, size_t)’, inlined from ‘bool MeCab::Writer::writeNode(MeCab::Lattice*, const char*, const Node*, MeCab::StringBuffer*) const’ at writer.cpp:352:27: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound 8192 equals destination size []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-truncation-Wstringop-truncation]8;;] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c writer.cpp -o writer.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o string_buffer.lo string_buffer.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c string_buffer.cpp -fPIC -DPIC -o .libs/string_buffer.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c string_buffer.cpp -o string_buffer.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o param.lo param.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c param.cpp -fPIC -DPIC -o .libs/param.o In file included from /usr/include/string.h:535, from /usr/include/c++/11/cstring:42, from common.h:13, from param.cpp:8: In function ‘char* strncpy(char*, const char*, size_t)’, inlined from ‘bool MeCab::Param::open(const char*, const MeCab::Option*)’ at param.cpp:194:15: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound 8192 equals destination size []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-truncation-Wstringop-truncation]8;;] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c param.cpp -o param.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o tokenizer.lo tokenizer.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c tokenizer.cpp -fPIC -DPIC -o .libs/tokenizer.o In file included from tokenizer.cpp:8: darts.h: In member function ‘T MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, size_t, size_t) const’: darts.h:407:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 407 | register array_type_ b = array_[node_pos].base; | ^ darts.h:408:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 408 | register array_u_type_ p; | ^ darts.h:410:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 410 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In member function ‘size_t MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::commonPrefixSearch(const key_type*, T*, size_t, size_t, size_t) const’: darts.h:434:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 434 | register array_type_ b = array_[node_pos].base; | ^ darts.h:435:25: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 435 | register size_t num = 0; | ^~~ darts.h:436:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 436 | register array_type_ n; | ^ darts.h:437:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 437 | register array_u_type_ p; | ^ darts.h:439:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 439 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In member function ‘MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::value_type MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::traverse(const key_type*, size_t&, size_t&, size_t) const’: darts.h:472:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 472 | register array_type_ b = array_[node_pos].base; | ^ darts.h:473:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 473 | register array_u_type_ p; | ^ In file included from dictionary.h:12, from tokenizer.h:11, from tokenizer.cpp:12: char_property.h: In member function ‘const char* MeCab::CharProperty::seekToOtherType(const char*, const char*, MeCab::CharInfo, MeCab::CharInfo*, size_t*, size_t*) const’: char_property.h:40:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 40 | register const char *p = begin; | ^ In file included from tokenizer.cpp:8: darts.h: In instantiation of ‘size_t MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::commonPrefixSearch(const key_type*, T*, size_t, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; size_t = long unsigned int; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char]’: dictionary.h:37:34: required from here darts.h:434:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 434 | register array_type_ b = array_[node_pos].base; | ^ darts.h:435:25: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 435 | register size_t num = 0; | ^~~ darts.h:436:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 436 | register array_type_ n; | ^ darts.h:437:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 437 | register array_u_type_ p; | ^ darts.h:439:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 439 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In instantiation of ‘T MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char; size_t = long unsigned int]’: darts.h:394:33: required from ‘void MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, T&, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char; size_t = long unsigned int]’ dictionary.h:42:25: required from here darts.h:407:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 407 | register array_type_ b = array_[node_pos].base; | ^ darts.h:408:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 408 | register array_u_type_ p; | ^ darts.h:410:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 410 | for (register size_t i = 0; i < len; ++i) { | ^ In file included from /usr/include/string.h:535, from /usr/include/c++/11/cstring:42, from common.h:13, from tokenizer.cpp:6: In function ‘char* strncpy(char*, const char*, size_t)’, inlined from ‘bool MeCab::{anonymous}::partial_match(const char*, const char*)’ at tokenizer.cpp:193:15, inlined from ‘bool MeCab::{anonymous}::is_valid_node(const MeCab::Lattice*, N*) [with N = mecab_node_t]’ at tokenizer.cpp:224:20: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound 8192 equals destination size []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-truncation-Wstringop-truncation]8;;] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ In function ‘char* strncpy(char*, const char*, size_t)’, inlined from ‘bool MeCab::{anonymous}::partial_match(const char*, const char*)’ at tokenizer.cpp:194:15, inlined from ‘bool MeCab::{anonymous}::is_valid_node(const MeCab::Lattice*, N*) [with N = mecab_node_t]’ at tokenizer.cpp:224:20: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound 8192 equals destination size []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-truncation-Wstringop-truncation]8;;] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ In function ‘char* strncpy(char*, const char*, size_t)’, inlined from ‘bool MeCab::Tokenizer<N, P>::open(const MeCab::Param&) [with N = mecab_learner_node_t; P = mecab_learner_path_t]’ at tokenizer.cpp:123:17: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound 8192 equals destination size []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-truncation-Wstringop-truncation]8;;] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ In function ‘char* strncpy(char*, const char*, size_t)’, inlined from ‘bool MeCab::Tokenizer<N, P>::open(const MeCab::Param&) [with N = mecab_node_t; P = mecab_path_t]’ at tokenizer.cpp:123:17: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound 8192 equals destination size []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-truncation-Wstringop-truncation]8;;] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c tokenizer.cpp -o tokenizer.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o char_property.lo char_property.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c char_property.cpp -fPIC -DPIC -o .libs/char_property.o In file included from char_property.cpp:11: char_property.h: In member function ‘const char* MeCab::CharProperty::seekToOtherType(const char*, const char*, MeCab::CharInfo, MeCab::CharInfo*, size_t*, size_t*) const’: char_property.h:40:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 40 | register const char *p = begin; | ^ char_property.cpp: In static member function ‘static bool MeCab::CharProperty::compile(const char*, const char*, const char*)’: char_property.cpp:194:18: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct MeCab::CharInfo’; use assignment or value-initialization instead []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wclass-memaccess-Wclass-memaccess]8;;] 194 | std::memset(&c, 0, sizeof(c)); | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ In file included from char_property.cpp:11: char_property.h:16:8: note: ‘struct MeCab::CharInfo’ declared here 16 | struct CharInfo { | ^~~~~~~~ libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c char_property.cpp -o char_property.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o dictionary.lo dictionary.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c dictionary.cpp -fPIC -DPIC -o .libs/dictionary.o In file included from dictionary.cpp:10: char_property.h: In member function ‘const char* MeCab::CharProperty::seekToOtherType(const char*, const char*, MeCab::CharInfo, MeCab::CharInfo*, size_t*, size_t*) const’: char_property.h:40:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 40 | register const char *p = begin; | ^ In file included from dictionary.h:11, from dictionary.cpp:12: darts.h: In member function ‘T MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, size_t, size_t) const’: darts.h:407:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 407 | register array_type_ b = array_[node_pos].base; | ^ darts.h:408:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 408 | register array_u_type_ p; | ^ darts.h:410:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 410 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In member function ‘size_t MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::commonPrefixSearch(const key_type*, T*, size_t, size_t, size_t) const’: darts.h:434:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 434 | register array_type_ b = array_[node_pos].base; | ^ darts.h:435:25: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 435 | register size_t num = 0; | ^~~ darts.h:436:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 436 | register array_type_ n; | ^ darts.h:437:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 437 | register array_u_type_ p; | ^ darts.h:439:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 439 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In member function ‘MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::value_type MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::traverse(const key_type*, size_t&, size_t&, size_t) const’: darts.h:472:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 472 | register array_type_ b = array_[node_pos].base; | ^ darts.h:473:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 473 | register array_u_type_ p; | ^ darts.h: In instantiation of ‘size_t MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::commonPrefixSearch(const key_type*, T*, size_t, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; size_t = long unsigned int; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char]’: dictionary.h:37:34: required from here darts.h:434:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 434 | register array_type_ b = array_[node_pos].base; | ^ darts.h:435:25: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 435 | register size_t num = 0; | ^~~ darts.h:436:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 436 | register array_type_ n; | ^ darts.h:437:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 437 | register array_u_type_ p; | ^ darts.h:439:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 439 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In instantiation of ‘T MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char; size_t = long unsigned int]’: darts.h:394:33: required from ‘void MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, T&, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char; size_t = long unsigned int]’ dictionary.h:42:25: required from here darts.h:407:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 407 | register array_type_ b = array_[node_pos].base; | ^ darts.h:408:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 408 | register array_u_type_ p; | ^ darts.h:410:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 410 | for (register size_t i = 0; i < len; ++i) { | ^ libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c dictionary.cpp -o dictionary.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o feature_index.lo feature_index.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c feature_index.cpp -fPIC -DPIC -o .libs/feature_index.o In file included from feature_index.h:13, from feature_index.cpp:11: darts.h: In member function ‘T MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, size_t, size_t) const’: darts.h:407:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 407 | register array_type_ b = array_[node_pos].base; | ^ darts.h:408:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 408 | register array_u_type_ p; | ^ darts.h:410:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 410 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In member function ‘size_t MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::commonPrefixSearch(const key_type*, T*, size_t, size_t, size_t) const’: darts.h:434:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 434 | register array_type_ b = array_[node_pos].base; | ^ darts.h:435:25: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 435 | register size_t num = 0; | ^~~ darts.h:436:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 436 | register array_type_ n; | ^ darts.h:437:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 437 | register array_u_type_ p; | ^ darts.h:439:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 439 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In member function ‘MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::value_type MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::traverse(const key_type*, size_t&, size_t&, size_t) const’: darts.h:472:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 472 | register array_type_ b = array_[node_pos].base; | ^ darts.h:473:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 473 | register array_u_type_ p; | ^ In file included from /usr/include/string.h:535, from /usr/include/c++/11/cstring:42, from feature_index.cpp:7: In function ‘char* strncpy(char*, const char*, size_t)’, inlined from ‘bool MeCab::FeatureIndex::buildUnigramFeature(MeCab::LearnerPath*, const char*)’ at feature_index.cpp:337:15: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound 2048 equals destination size []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-truncation-Wstringop-truncation]8;;] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ In function ‘char* strncpy(char*, const char*, size_t)’, inlined from ‘bool MeCab::FeatureIndex::buildBigramFeature(MeCab::LearnerPath*, const char*, const char*)’ at feature_index.cpp:389:15: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound 2048 equals destination size []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-truncation-Wstringop-truncation]8;;] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ In function ‘char* strncpy(char*, const char*, size_t)’, inlined from ‘bool MeCab::FeatureIndex::buildBigramFeature(MeCab::LearnerPath*, const char*, const char*)’ at feature_index.cpp:390:15: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:95:34: warning: ‘char* __builtin_strncpy(char*, const char*, long unsigned int)’ specified bound 2048 equals destination size []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wstringop-truncation-Wstringop-truncation]8;;] 95 | return __builtin___strncpy_chk (__dest, __src, __len, | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ 96 | __glibc_objsize (__dest)); | ~~~~~~~~~~~~~~~~~~~~~~~~~ libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c feature_index.cpp -o feature_index.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o lbfgs.lo lbfgs.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c lbfgs.cpp -fPIC -DPIC -o .libs/lbfgs.o libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c lbfgs.cpp -o lbfgs.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o learner_tagger.lo learner_tagger.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c learner_tagger.cpp -fPIC -DPIC -o .libs/learner_tagger.o In file included from feature_index.h:13, from learner_tagger.h:12, from learner_tagger.cpp:13: darts.h: In member function ‘T MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, size_t, size_t) const’: darts.h:407:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 407 | register array_type_ b = array_[node_pos].base; | ^ darts.h:408:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 408 | register array_u_type_ p; | ^ darts.h:410:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 410 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In member function ‘size_t MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::commonPrefixSearch(const key_type*, T*, size_t, size_t, size_t) const’: darts.h:434:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 434 | register array_type_ b = array_[node_pos].base; | ^ darts.h:435:25: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 435 | register size_t num = 0; | ^~~ darts.h:436:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 436 | register array_type_ n; | ^ darts.h:437:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 437 | register array_u_type_ p; | ^ darts.h:439:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 439 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In member function ‘MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::value_type MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::traverse(const key_type*, size_t&, size_t&, size_t) const’: darts.h:472:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 472 | register array_type_ b = array_[node_pos].base; | ^ darts.h:473:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 473 | register array_u_type_ p; | ^ In file included from dictionary.h:12, from tokenizer.h:11, from learner_tagger.h:13, from learner_tagger.cpp:13: char_property.h: In member function ‘const char* MeCab::CharProperty::seekToOtherType(const char*, const char*, MeCab::CharInfo, MeCab::CharInfo*, size_t*, size_t*) const’: char_property.h:40:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 40 | register const char *p = begin; | ^ In file included from feature_index.h:13, from learner_tagger.h:12, from learner_tagger.cpp:13: darts.h: In instantiation of ‘size_t MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::commonPrefixSearch(const key_type*, T*, size_t, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; size_t = long unsigned int; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char]’: dictionary.h:37:34: required from here darts.h:434:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 434 | register array_type_ b = array_[node_pos].base; | ^ darts.h:435:25: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 435 | register size_t num = 0; | ^~~ darts.h:436:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 436 | register array_type_ n; | ^ darts.h:437:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 437 | register array_u_type_ p; | ^ darts.h:439:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 439 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In instantiation of ‘T MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char; size_t = long unsigned int]’: darts.h:394:33: required from ‘void MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, T&, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char; size_t = long unsigned int]’ dictionary.h:42:25: required from here darts.h:407:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 407 | register array_type_ b = array_[node_pos].base; | ^ darts.h:408:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 408 | register array_u_type_ p; | ^ darts.h:410:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 410 | for (register size_t i = 0; i < len; ++i) { | ^ learner_tagger.cpp: At global scope: learner_tagger.cpp:25:7: warning: ‘char* MeCab::{anonymous}::mystrdup(const string&)’ defined but not used []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wunused-function-Wunused-function]8;;] 25 | char *mystrdup(const std::string &str) { | ^~~~~~~~ libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c learner_tagger.cpp -o learner_tagger.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o learner.lo learner.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c learner.cpp -fPIC -DPIC -o .libs/learner.o In file included from feature_index.h:13, from learner.cpp:10: darts.h: In member function ‘T MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, size_t, size_t) const’: darts.h:407:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 407 | register array_type_ b = array_[node_pos].base; | ^ darts.h:408:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 408 | register array_u_type_ p; | ^ darts.h:410:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 410 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In member function ‘size_t MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::commonPrefixSearch(const key_type*, T*, size_t, size_t, size_t) const’: darts.h:434:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 434 | register array_type_ b = array_[node_pos].base; | ^ darts.h:435:25: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 435 | register size_t num = 0; | ^~~ darts.h:436:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 436 | register array_type_ n; | ^ darts.h:437:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 437 | register array_u_type_ p; | ^ darts.h:439:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 439 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In member function ‘MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::value_type MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::traverse(const key_type*, size_t&, size_t&, size_t) const’: darts.h:472:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 472 | register array_type_ b = array_[node_pos].base; | ^ darts.h:473:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 473 | register array_u_type_ p; | ^ In file included from dictionary.h:12, from tokenizer.h:11, from learner_tagger.h:13, from learner.cpp:13: char_property.h: In member function ‘const char* MeCab::CharProperty::seekToOtherType(const char*, const char*, MeCab::CharInfo, MeCab::CharInfo*, size_t*, size_t*) const’: char_property.h:40:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 40 | register const char *p = begin; | ^ In file included from feature_index.h:13, from learner.cpp:10: darts.h: In instantiation of ‘size_t MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::commonPrefixSearch(const key_type*, T*, size_t, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; size_t = long unsigned int; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char]’: dictionary.h:37:34: required from here darts.h:434:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 434 | register array_type_ b = array_[node_pos].base; | ^ darts.h:435:25: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 435 | register size_t num = 0; | ^~~ darts.h:436:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 436 | register array_type_ n; | ^ darts.h:437:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 437 | register array_u_type_ p; | ^ darts.h:439:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 439 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In instantiation of ‘T MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char; size_t = long unsigned int]’: darts.h:394:33: required from ‘void MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, T&, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char; size_t = long unsigned int]’ dictionary.h:42:25: required from here darts.h:407:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 407 | register array_type_ b = array_[node_pos].base; | ^ darts.h:408:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 408 | register array_u_type_ p; | ^ darts.h:410:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 410 | for (register size_t i = 0; i < len; ++i) { | ^ libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c learner.cpp -o learner.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o libmecab.lo libmecab.cpp libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c libmecab.cpp -fPIC -DPIC -o .libs/libmecab.o In file included from dictionary.h:11, from tokenizer.h:11, from libmecab.cpp:11: darts.h: In member function ‘T MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, size_t, size_t) const’: darts.h:407:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 407 | register array_type_ b = array_[node_pos].base; | ^ darts.h:408:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 408 | register array_u_type_ p; | ^ darts.h:410:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 410 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In member function ‘size_t MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::commonPrefixSearch(const key_type*, T*, size_t, size_t, size_t) const’: darts.h:434:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 434 | register array_type_ b = array_[node_pos].base; | ^ darts.h:435:25: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 435 | register size_t num = 0; | ^~~ darts.h:436:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 436 | register array_type_ n; | ^ darts.h:437:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 437 | register array_u_type_ p; | ^ darts.h:439:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 439 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In member function ‘MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::value_type MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::traverse(const key_type*, size_t&, size_t&, size_t) const’: darts.h:472:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 472 | register array_type_ b = array_[node_pos].base; | ^ darts.h:473:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 473 | register array_u_type_ p; | ^ In file included from dictionary.h:12, from tokenizer.h:11, from libmecab.cpp:11: char_property.h: In member function ‘const char* MeCab::CharProperty::seekToOtherType(const char*, const char*, MeCab::CharInfo, MeCab::CharInfo*, size_t*, size_t*) const’: char_property.h:40:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 40 | register const char *p = begin; | ^ In file included from dictionary.h:11, from tokenizer.h:11, from libmecab.cpp:11: darts.h: In instantiation of ‘size_t MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::commonPrefixSearch(const key_type*, T*, size_t, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; size_t = long unsigned int; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char]’: dictionary.h:37:34: required from here darts.h:434:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 434 | register array_type_ b = array_[node_pos].base; | ^ darts.h:435:25: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 435 | register size_t num = 0; | ^~~ darts.h:436:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 436 | register array_type_ n; | ^ darts.h:437:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 437 | register array_u_type_ p; | ^ darts.h:439:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 439 | for (register size_t i = 0; i < len; ++i) { | ^ darts.h: In instantiation of ‘T MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char; size_t = long unsigned int]’: darts.h:394:33: required from ‘void MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::exactMatchSearch(const key_type*, T&, size_t, size_t) const [with T = MeCab::Darts::DoubleArrayImpl<char, unsigned char, int, unsigned int>::result_pair_type; node_type_ = char; node_u_type_ = unsigned char; array_type_ = int; array_u_type_ = unsigned int; length_func_ = MeCab::Darts::Length<char>; MeCab::Darts::DoubleArrayImpl<node_type_, node_u_type_, array_type_, array_u_type_, length_func_>::key_type = char; size_t = long unsigned int]’ dictionary.h:42:25: required from here darts.h:407:27: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 407 | register array_type_ b = array_[node_pos].base; | ^ darts.h:408:28: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 408 | register array_u_type_ p; | ^ darts.h:410:26: warning: ISO C++17 does not allow ‘register’ storage class specifier []8;;https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#index-Wregister-Wregister]8;;] 410 | for (register size_t i = 0; i < len; ++i) { | ^ libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c libmecab.cpp -o libmecab.o >/dev/null 2>&1 /bin/bash ../libtool --tag=CXX --mode=link g++ -O3 -Wall -no-undefined -version-info 2:0:0 -o libmecab.la -rpath /usr/local/lib viterbi.lo tagger.lo utils.lo eval.lo iconv_utils.lo dictionary_rewriter.lo dictionary_generator.lo dictionary_compiler.lo context_id.lo connector.lo nbest_generator.lo writer.lo string_buffer.lo param.lo tokenizer.lo char_property.lo dictionary.lo feature_index.lo lbfgs.lo learner_tagger.lo learner.lo libmecab.lo -lpthread -lpthread -lstdc++ libtool: link: g++ -fPIC -DPIC -shared -nostdlib /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o .libs/viterbi.o .libs/tagger.o .libs/utils.o .libs/eval.o .libs/iconv_utils.o .libs/dictionary_rewriter.o .libs/dictionary_generator.o .libs/dictionary_compiler.o .libs/context_id.o .libs/connector.o .libs/nbest_generator.o .libs/writer.o .libs/string_buffer.o .libs/param.o .libs/tokenizer.o .libs/char_property.o .libs/dictionary.o .libs/feature_index.o .libs/lbfgs.o .libs/learner_tagger.o .libs/learner.o .libs/libmecab.o -lpthread -L/usr/lib/gcc/x86_64-linux-gnu/11 -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/local/cuda/lib64/stubs -L/usr/lib/gcc/x86_64-linux-gnu/11/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o -O3 -Wl,-soname -Wl,libmecab.so.2 -o .libs/libmecab.so.2.0.0 libtool: link: (cd ".libs" && rm -f "libmecab.so.2" && ln -s "libmecab.so.2.0.0" "libmecab.so.2") libtool: link: (cd ".libs" && rm -f "libmecab.so" && ln -s "libmecab.so.2.0.0" "libmecab.so") libtool: link: ar cru .libs/libmecab.a viterbi.o tagger.o utils.o eval.o iconv_utils.o dictionary_rewriter.o dictionary_generator.o dictionary_compiler.o context_id.o connector.o nbest_generator.o writer.o string_buffer.o param.o tokenizer.o char_property.o dictionary.o feature_index.o lbfgs.o learner_tagger.o learner.o libmecab.o ar: `u' modifier ignored since `D' is the default (see `U') libtool: link: ranlib .libs/libmecab.a libtool: link: ( cd ".libs" && rm -f "libmecab.la" && ln -s "../libmecab.la" "libmecab.la" ) g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o mecab.o mecab.cpp /bin/bash ../libtool --tag=CXX --mode=link g++ -O3 -Wall -o mecab mecab.o libmecab.la -lpthread -lpthread -lstdc++ libtool: link: g++ -O3 -Wall -o .libs/mecab mecab.o ./.libs/libmecab.so -lpthread -lstdc++ g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o mecab-dict-index.o mecab-dict-index.cpp /bin/bash ../libtool --tag=CXX --mode=link g++ -O3 -Wall -o mecab-dict-index mecab-dict-index.o libmecab.la -lpthread -lpthread -lstdc++ libtool: link: g++ -O3 -Wall -o .libs/mecab-dict-index mecab-dict-index.o ./.libs/libmecab.so -lpthread -lstdc++ g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o mecab-dict-gen.o mecab-dict-gen.cpp /bin/bash ../libtool --tag=CXX --mode=link g++ -O3 -Wall -o mecab-dict-gen mecab-dict-gen.o libmecab.la -lpthread -lpthread -lstdc++ libtool: link: g++ -O3 -Wall -o .libs/mecab-dict-gen mecab-dict-gen.o ./.libs/libmecab.so -lpthread -lstdc++ g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o mecab-cost-train.o mecab-cost-train.cpp /bin/bash ../libtool --tag=CXX --mode=link g++ -O3 -Wall -o mecab-cost-train mecab-cost-train.o libmecab.la -lpthread -lpthread -lstdc++ libtool: link: g++ -O3 -Wall -o .libs/mecab-cost-train mecab-cost-train.o ./.libs/libmecab.so -lpthread -lstdc++ g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o mecab-system-eval.o mecab-system-eval.cpp /bin/bash ../libtool --tag=CXX --mode=link g++ -O3 -Wall -o mecab-system-eval mecab-system-eval.o libmecab.la -lpthread -lpthread -lstdc++ libtool: link: g++ -O3 -Wall -o .libs/mecab-system-eval mecab-system-eval.o ./.libs/libmecab.so -lpthread -lstdc++ g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o mecab-test-gen.o mecab-test-gen.cpp /bin/bash ../libtool --tag=CXX --mode=link g++ -O3 -Wall -o mecab-test-gen mecab-test-gen.o libmecab.la -lpthread -lpthread -lstdc++ libtool: link: g++ -O3 -Wall -o .libs/mecab-test-gen mecab-test-gen.o ./.libs/libmecab.so -lpthread -lstdc++ make[2]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2/src' Making all in man make[2]: Entering directory '/tmp/mecab-0.996-ko-0.9.2/man' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2/man' Making all in doc make[2]: Entering directory '/tmp/mecab-0.996-ko-0.9.2/doc' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2/doc' Making all in tests make[2]: Entering directory '/tmp/mecab-0.996-ko-0.9.2/tests' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2/tests' make[2]: Entering directory '/tmp/mecab-0.996-ko-0.9.2' make[2]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2' make[1]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2' Making check in src make[1]: Entering directory '/tmp/mecab-0.996-ko-0.9.2/src' make[1]: Nothing to be done for 'check'. make[1]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2/src' Making check in man make[1]: Entering directory '/tmp/mecab-0.996-ko-0.9.2/man' make[1]: Nothing to be done for 'check'. make[1]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2/man' Making check in doc make[1]: Entering directory '/tmp/mecab-0.996-ko-0.9.2/doc' make[1]: Nothing to be done for 'check'. make[1]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2/doc' Making check in tests make[1]: Entering directory '/tmp/mecab-0.996-ko-0.9.2/tests' make check-TESTS make[2]: Entering directory '/tmp/mecab-0.996-ko-0.9.2/tests' ./pos-id.def is not found. minimum setting is used reading ./unk.def ... 2 emitting double-array: 100% |###########################################| ./model.def is not found. skipped. ./pos-id.def is not found. minimum setting is used reading ./dic.csv ... 177 emitting double-array: 100% |###########################################| reading ./matrix.def ... 178x178 emitting matrix : 100% |###########################################| done! ./pos-id.def is not found. minimum setting is used reading ./unk.def ... 2 emitting double-array: 100% |###########################################| ./model.def is not found. skipped. ./pos-id.def is not found. minimum setting is used reading ./dic.csv ... 83 emitting double-array: 100% |###########################################| reading ./matrix.def ... 84x84 emitting matrix : 100% |###########################################| done! ./pos-id.def is not found. minimum setting is used reading ./unk.def ... 2 emitting double-array: 100% |###########################################| ./model.def is not found. skipped. ./pos-id.def is not found. minimum setting is used reading ./dic.csv ... 450 emitting double-array: 100% |###########################################| reading ./matrix.def ... 1x1 done! ./pos-id.def is not found. minimum setting is used reading ./unk.def ... 2 emitting double-array: 100% |###########################################| ./model.def is not found. skipped. ./pos-id.def is not found. minimum setting is used reading ./dic.csv ... 162 emitting double-array: 100% |###########################################| reading ./matrix.def ... 3x3 emitting matrix : 100% |###########################################| done! ./pos-id.def is not found. minimum setting is used reading ./unk.def ... 2 emitting double-array: 100% |###########################################| ./model.def is not found. skipped. ./pos-id.def is not found. minimum setting is used reading ./dic.csv ... 4 emitting double-array: 100% |###########################################| reading ./matrix.def ... 1x1 done! ./pos-id.def is not found. minimum setting is used reading ./unk.def ... 11 emitting double-array: 100% |###########################################| ./model.def is not found. skipped. ./pos-id.def is not found. minimum setting is used reading ./dic.csv ... 1 reading ./matrix.def ... 1x1 done! ./pos-id.def is not found. minimum setting is used reading ./unk.def ... 2 emitting double-array: 100% |###########################################| ./model.def is not found. skipped. ./pos-id.def is not found. minimum setting is used reading ./dic.csv ... 1 reading ./matrix.def ... 1x1 done! PASS: run-dics.sh PASS: run-eval.sh seed/pos-id.def is not found. minimum setting is used reading seed/unk.def ... 40 emitting double-array: 100% |###########################################| seed/model.def is not found. skipped. seed/pos-id.def is not found. minimum setting is used reading seed/dic.csv ... 4335 emitting double-array: 100% |###########################################| reading seed/matrix.def ... 1x1 done! reading corpus ... Number of sentences: 34 Number of features: 64108 eta: 0.00005 freq: 1 eval-size: 6 unk-eval-size: 4 threads: 1 charset: EUC-JP C(sigma^2): 1.00000 iter=0 err=1.00000 F=0.35771 target=2406.28355 diff=1.00000 iter=1 err=0.97059 F=0.65652 target=1484.25231 diff=0.38318 iter=2 err=0.91176 F=0.79331 target=863.32765 diff=0.41834 iter=3 err=0.85294 F=0.89213 target=596.72480 diff=0.30881 iter=4 err=0.61765 F=0.95467 target=336.30744 diff=0.43641 iter=5 err=0.50000 F=0.96702 target=246.53039 diff=0.26695 iter=6 err=0.35294 F=0.95472 target=188.93963 diff=0.23361 iter=7 err=0.20588 F=0.99106 target=168.62665 diff=0.10751 iter=8 err=0.05882 F=0.99777 target=158.64865 diff=0.05917 iter=9 err=0.08824 F=0.99665 target=154.14530 diff=0.02839 iter=10 err=0.08824 F=0.99665 target=151.94257 diff=0.01429 iter=11 err=0.02941 F=0.99888 target=147.20825 diff=0.03116 iter=12 err=0.00000 F=1.00000 target=147.34956 diff=0.00096 iter=13 err=0.02941 F=0.99888 target=146.32592 diff=0.00695 iter=14 err=0.00000 F=1.00000 target=145.77299 diff=0.00378 iter=15 err=0.02941 F=0.99888 target=145.24641 diff=0.00361 iter=16 err=0.00000 F=1.00000 target=144.96490 diff=0.00194 iter=17 err=0.02941 F=0.99888 target=144.90246 diff=0.00043 iter=18 err=0.00000 F=1.00000 target=144.75959 diff=0.00099 iter=19 err=0.00000 F=1.00000 target=144.71727 diff=0.00029 iter=20 err=0.00000 F=1.00000 target=144.66337 diff=0.00037 iter=21 err=0.00000 F=1.00000 target=144.61349 diff=0.00034 iter=22 err=0.00000 F=1.00000 target=144.62987 diff=0.00011 iter=23 err=0.00000 F=1.00000 target=144.60060 diff=0.00020 iter=24 err=0.00000 F=1.00000 target=144.59125 diff=0.00006 iter=25 err=0.00000 F=1.00000 target=144.58619 diff=0.00004 iter=26 err=0.00000 F=1.00000 target=144.58219 diff=0.00003 iter=27 err=0.00000 F=1.00000 target=144.58059 diff=0.00001 Done! writing model file ... model-ipadic.c1.0.f1.model is not a binary model. reopen it as text mode... reading seed/unk.def ... 40 reading seed/dic.csv ... 4335 emitting model-ipadic.c1.0.f1.dic/left-id.def/ model-ipadic.c1.0.f1.dic/right-id.def emitting model-ipadic.c1.0.f1.dic/unk.def ... 40 emitting model-ipadic.c1.0.f1.dic/dic.csv ... 4335 emitting matrix : 100% |###########################################| copying seed/char.def to model-ipadic.c1.0.f1.dic/char.def copying seed/rewrite.def to model-ipadic.c1.0.f1.dic/rewrite.def copying seed/dicrc to model-ipadic.c1.0.f1.dic/dicrc copying seed/feature.def to model-ipadic.c1.0.f1.dic/feature.def copying model-ipadic.c1.0.f1.model to model-ipadic.c1.0.f1.dic/model.def done! model-ipadic.c1.0.f1.dic/pos-id.def is not found. minimum setting is used reading model-ipadic.c1.0.f1.dic/unk.def ... 40 emitting double-array: 100% |###########################################| model-ipadic.c1.0.f1.dic/pos-id.def is not found. minimum setting is used reading model-ipadic.c1.0.f1.dic/dic.csv ... 4335 emitting double-array: 100% |###########################################| reading model-ipadic.c1.0.f1.dic/matrix.def ... 346x346 emitting matrix : 100% |###########################################| done! precision recall F LEVEL 0: 12.8959(57/442) 11.8998(57/479) 12.3779 LEVEL 1: 12.2172(54/442) 11.2735(54/479) 11.7264 LEVEL 2: 11.7647(52/442) 10.8559(52/479) 11.2921 LEVEL 4: 11.7647(52/442) 10.8559(52/479) 11.2921 PASS: run-cost-train.sh ================== All 3 tests passed ================== make[2]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2/tests' make[1]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2/tests' make[1]: Entering directory '/tmp/mecab-0.996-ko-0.9.2' make[1]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2' Making install in src make[1]: Entering directory '/tmp/mecab-0.996-ko-0.9.2/src' make[2]: Entering directory '/tmp/mecab-0.996-ko-0.9.2/src' test -z "/usr/local/lib" || /usr/bin/mkdir -p "/usr/local/lib" /bin/bash ../libtool --mode=install /usr/bin/install -c libmecab.la '/usr/local/lib' libtool: install: /usr/bin/install -c .libs/libmecab.so.2.0.0 /usr/local/lib/libmecab.so.2.0.0 libtool: install: (cd /usr/local/lib && { ln -s -f libmecab.so.2.0.0 libmecab.so.2 || { rm -f libmecab.so.2 && ln -s libmecab.so.2.0.0 libmecab.so.2; }; }) libtool: install: (cd /usr/local/lib && { ln -s -f libmecab.so.2.0.0 libmecab.so || { rm -f libmecab.so && ln -s libmecab.so.2.0.0 libmecab.so; }; }) libtool: install: /usr/bin/install -c .libs/libmecab.lai /usr/local/lib/libmecab.la libtool: install: /usr/bin/install -c .libs/libmecab.a /usr/local/lib/libmecab.a libtool: install: chmod 644 /usr/local/lib/libmecab.a libtool: install: ranlib /usr/local/lib/libmecab.a libtool: finish: PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/sbin" ldconfig -n /usr/local/lib /sbin/ldconfig.real: /usr/local/lib/libtbbmalloc.so.2 is not a symbolic link /sbin/ldconfig.real: /usr/local/lib/libtbbmalloc_proxy.so.2 is not a symbolic link /sbin/ldconfig.real: /usr/local/lib/libtbb.so.12 is not a symbolic link /sbin/ldconfig.real: /usr/local/lib/libtbbbind_2_5.so.3 is not a symbolic link /sbin/ldconfig.real: /usr/local/lib/libtbbbind.so.3 is not a symbolic link /sbin/ldconfig.real: /usr/local/lib/libtbbbind_2_0.so.3 is not a symbolic link ---------------------------------------------------------------------- Libraries have been installed in: /usr/local/lib If you ever happen to want to link against installed libraries in a given directory, LIBDIR, you must either use libtool, and specify the full pathname of the library, or use the `-LLIBDIR' flag during linking and do at least one of the following: - add LIBDIR to the `LD_LIBRARY_PATH' environment variable during execution - add LIBDIR to the `LD_RUN_PATH' environment variable during linking - use the `-Wl,-rpath -Wl,LIBDIR' linker flag - have your system administrator add LIBDIR to `/etc/ld.so.conf' See any operating system documentation about shared libraries for more information, such as the ld(1) and ld.so(8) manual pages. ---------------------------------------------------------------------- test -z "/usr/local/bin" || /usr/bin/mkdir -p "/usr/local/bin" /bin/bash ../libtool --mode=install /usr/bin/install -c mecab '/usr/local/bin' libtool: install: /usr/bin/install -c .libs/mecab /usr/local/bin/mecab test -z "/usr/local/libexec/mecab" || /usr/bin/mkdir -p "/usr/local/libexec/mecab" /bin/bash ../libtool --mode=install /usr/bin/install -c mecab-dict-index mecab-dict-gen mecab-cost-train mecab-system-eval mecab-test-gen '/usr/local/libexec/mecab' libtool: install: /usr/bin/install -c .libs/mecab-dict-index /usr/local/libexec/mecab/mecab-dict-index libtool: install: /usr/bin/install -c .libs/mecab-dict-gen /usr/local/libexec/mecab/mecab-dict-gen libtool: install: /usr/bin/install -c .libs/mecab-cost-train /usr/local/libexec/mecab/mecab-cost-train libtool: install: /usr/bin/install -c .libs/mecab-system-eval /usr/local/libexec/mecab/mecab-system-eval libtool: install: /usr/bin/install -c .libs/mecab-test-gen /usr/local/libexec/mecab/mecab-test-gen test -z "/usr/local/include" || /usr/bin/mkdir -p "/usr/local/include" /usr/bin/install -c -m 644 mecab.h '/usr/local/include' make[2]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2/src' make[1]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2/src' Making install in man make[1]: Entering directory '/tmp/mecab-0.996-ko-0.9.2/man' make[2]: Entering directory '/tmp/mecab-0.996-ko-0.9.2/man' make[2]: Nothing to be done for 'install-exec-am'. test -z "/usr/local/share/man/man1" || /usr/bin/mkdir -p "/usr/local/share/man/man1" /usr/bin/install -c -m 644 mecab.1 '/usr/local/share/man/man1' make[2]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2/man' make[1]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2/man' Making install in doc make[1]: Entering directory '/tmp/mecab-0.996-ko-0.9.2/doc' make[2]: Entering directory '/tmp/mecab-0.996-ko-0.9.2/doc' make[2]: Nothing to be done for 'install-exec-am'. make[2]: Nothing to be done for 'install-data-am'. make[2]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2/doc' make[1]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2/doc' Making install in tests make[1]: Entering directory '/tmp/mecab-0.996-ko-0.9.2/tests' make[2]: Entering directory '/tmp/mecab-0.996-ko-0.9.2/tests' make[2]: Nothing to be done for 'install-exec-am'. make[2]: Nothing to be done for 'install-data-am'. make[2]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2/tests' make[1]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2/tests' make[1]: Entering directory '/tmp/mecab-0.996-ko-0.9.2' make[2]: Entering directory '/tmp/mecab-0.996-ko-0.9.2' test -z "/usr/local/bin" || /usr/bin/mkdir -p "/usr/local/bin" /usr/bin/install -c mecab-config '/usr/local/bin' test -z "/usr/local/etc" || /usr/bin/mkdir -p "/usr/local/etc" /usr/bin/install -c -m 644 mecabrc '/usr/local/etc' make[2]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2' make[1]: Leaving directory '/tmp/mecab-0.996-ko-0.9.2' Install mecab-ko-dic Install mecab-ko-dic % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 100 47.4M 100 47.4M 0 0 18.1M 0 0:00:02 0:00:02 --:--:-- 33.5M mecab-ko-dic-2.1.1-20180720/ mecab-ko-dic-2.1.1-20180720/configure mecab-ko-dic-2.1.1-20180720/COPYING mecab-ko-dic-2.1.1-20180720/autogen.sh mecab-ko-dic-2.1.1-20180720/Place-station.csv mecab-ko-dic-2.1.1-20180720/NNG.csv mecab-ko-dic-2.1.1-20180720/README mecab-ko-dic-2.1.1-20180720/EF.csv mecab-ko-dic-2.1.1-20180720/MAG.csv mecab-ko-dic-2.1.1-20180720/Preanalysis.csv mecab-ko-dic-2.1.1-20180720/NNB.csv mecab-ko-dic-2.1.1-20180720/Person-actor.csv mecab-ko-dic-2.1.1-20180720/VV.csv mecab-ko-dic-2.1.1-20180720/Makefile.in mecab-ko-dic-2.1.1-20180720/matrix.def mecab-ko-dic-2.1.1-20180720/EC.csv mecab-ko-dic-2.1.1-20180720/NNBC.csv mecab-ko-dic-2.1.1-20180720/clean mecab-ko-dic-2.1.1-20180720/ChangeLog mecab-ko-dic-2.1.1-20180720/J.csv mecab-ko-dic-2.1.1-20180720/.keep mecab-ko-dic-2.1.1-20180720/feature.def mecab-ko-dic-2.1.1-20180720/Foreign.csv mecab-ko-dic-2.1.1-20180720/XPN.csv mecab-ko-dic-2.1.1-20180720/EP.csv mecab-ko-dic-2.1.1-20180720/NR.csv mecab-ko-dic-2.1.1-20180720/left-id.def mecab-ko-dic-2.1.1-20180720/Place.csv mecab-ko-dic-2.1.1-20180720/Symbol.csv mecab-ko-dic-2.1.1-20180720/dicrc mecab-ko-dic-2.1.1-20180720/NP.csv mecab-ko-dic-2.1.1-20180720/ETM.csv mecab-ko-dic-2.1.1-20180720/IC.csv mecab-ko-dic-2.1.1-20180720/Place-address.csv mecab-ko-dic-2.1.1-20180720/Group.csv mecab-ko-dic-2.1.1-20180720/model.def mecab-ko-dic-2.1.1-20180720/XSN.csv mecab-ko-dic-2.1.1-20180720/INSTALL mecab-ko-dic-2.1.1-20180720/rewrite.def mecab-ko-dic-2.1.1-20180720/Inflect.csv mecab-ko-dic-2.1.1-20180720/configure.ac mecab-ko-dic-2.1.1-20180720/NNP.csv mecab-ko-dic-2.1.1-20180720/CoinedWord.csv mecab-ko-dic-2.1.1-20180720/XSV.csv mecab-ko-dic-2.1.1-20180720/pos-id.def mecab-ko-dic-2.1.1-20180720/Makefile.am mecab-ko-dic-2.1.1-20180720/unk.def mecab-ko-dic-2.1.1-20180720/missing mecab-ko-dic-2.1.1-20180720/VCP.csv mecab-ko-dic-2.1.1-20180720/install-sh mecab-ko-dic-2.1.1-20180720/Hanja.csv mecab-ko-dic-2.1.1-20180720/MAJ.csv mecab-ko-dic-2.1.1-20180720/XSA.csv mecab-ko-dic-2.1.1-20180720/Wikipedia.csv mecab-ko-dic-2.1.1-20180720/tools/ mecab-ko-dic-2.1.1-20180720/tools/add-userdic.sh mecab-ko-dic-2.1.1-20180720/tools/mecab-bestn.sh mecab-ko-dic-2.1.1-20180720/tools/convert_for_using_store.sh mecab-ko-dic-2.1.1-20180720/user-dic/ mecab-ko-dic-2.1.1-20180720/user-dic/nnp.csv mecab-ko-dic-2.1.1-20180720/user-dic/place.csv mecab-ko-dic-2.1.1-20180720/user-dic/person.csv mecab-ko-dic-2.1.1-20180720/user-dic/README.md mecab-ko-dic-2.1.1-20180720/NorthKorea.csv mecab-ko-dic-2.1.1-20180720/VX.csv mecab-ko-dic-2.1.1-20180720/right-id.def mecab-ko-dic-2.1.1-20180720/VA.csv mecab-ko-dic-2.1.1-20180720/char.def mecab-ko-dic-2.1.1-20180720/NEWS mecab-ko-dic-2.1.1-20180720/MM.csv mecab-ko-dic-2.1.1-20180720/ETN.csv mecab-ko-dic-2.1.1-20180720/AUTHORS mecab-ko-dic-2.1.1-20180720/Person.csv mecab-ko-dic-2.1.1-20180720/XR.csv mecab-ko-dic-2.1.1-20180720/VCN.csv Looking in current directory for macros. configure.ac:2: warning: AM_INIT_AUTOMAKE: two- and three-arguments forms are deprecated. ./lib/autoconf/general.m4:2434: AC_DIAGNOSE is expanded from... aclocal.m4:139: AM_INIT_AUTOMAKE is expanded from... configure.ac:2: the top level configure.ac:56: warning: AC_OUTPUT should be used without arguments. configure.ac:56: You should run autoupdate. configure.ac:2: warning: AM_INIT_AUTOMAKE: two- and three-arguments forms are deprecated. For more info, see: configure.ac:2: https://www.gnu.org/software/automake/manual/automake.html#Modernize-AM_005fINIT_005fAUTOMAKE-invocation checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes /tmp/mecab-ko-dic-2.1.1-20180720/missing: Unknown `--is-lightweight' option Try `/tmp/mecab-ko-dic-2.1.1-20180720/missing --help' for more information configure: WARNING: 'missing' script is too old or missing checking for a race-free mkdir -p... /usr/bin/mkdir -p checking for gawk... no checking for mawk... mawk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking for mecab-config... /usr/local/bin/mecab-config checking that generated files are newer than configure... done configure: creating ./config.status config.status: creating Makefile /usr/local/lib /sbin/ldconfig.real: /usr/local/lib/libtbbmalloc.so.2 is not a symbolic link /sbin/ldconfig.real: /usr/local/lib/libtbbmalloc_proxy.so.2 is not a symbolic link /sbin/ldconfig.real: /usr/local/lib/libtbb.so.12 is not a symbolic link /sbin/ldconfig.real: /usr/local/lib/libtbbbind_2_5.so.3 is not a symbolic link /sbin/ldconfig.real: /usr/local/lib/libtbbbind.so.3 is not a symbolic link /sbin/ldconfig.real: /usr/local/lib/libtbbbind_2_0.so.3 is not a symbolic link /usr/local/libexec/mecab/mecab-dict-index -d . -o . -f UTF-8 -t UTF-8 reading ./unk.def ... 13 emitting double-array: 100% |###########################################| reading ./NP.csv ... 342 reading ./Wikipedia.csv ... 36762 reading ./Hanja.csv ... 125750 reading ./J.csv ... 416 reading ./NorthKorea.csv ... 3 reading ./NNB.csv ... 140 reading ./Group.csv ... 3176 reading ./XPN.csv ... 83 reading ./XSN.csv ... 124 reading ./Foreign.csv ... 11690 reading ./ETM.csv ... 133 reading ./Place.csv ... 30303 reading ./NNBC.csv ... 677 reading ./MM.csv ... 453 reading ./Place-address.csv ... 19301 reading ./MAJ.csv ... 240 reading ./XSA.csv ... 19 reading ./IC.csv ... 1305 reading ./VA.csv ... 2360 reading ./Person-actor.csv ... 99230 reading ./Person.csv ... 196459 reading ./NNG.csv ... 208524 reading ./EC.csv ... 2547 reading ./VCN.csv ... 7 reading ./Place-station.csv ... 1145 reading ./EF.csv ... 1820 reading ./XSV.csv ... 23 reading ./MAG.csv ... 14242 reading ./Symbol.csv ... 16 reading ./XR.csv ... 3637 reading ./VX.csv ... 125 reading ./VCP.csv ... 9 reading ./Preanalysis.csv ... 5 reading ./NNP.csv ... 2371 reading ./ETN.csv ... 14 reading ./NR.csv ... 482 reading ./VV.csv ... 7331 reading ./Inflect.csv ... 44820 reading ./EP.csv ... 51 reading ./CoinedWord.csv ... 148 emitting double-array: 100% |###########################################| reading ./matrix.def ... 3822x2693 emitting matrix : 100% |###########################################| done! echo To enable dictionary, rewrite /usr/local/etc/mecabrc as \"dicdir = /usr/local/lib/mecab/dic/mecab-ko-dic\" To enable dictionary, rewrite /usr/local/etc/mecabrc as "dicdir = /usr/local/lib/mecab/dic/mecab-ko-dic" make[1]: Entering directory '/tmp/mecab-ko-dic-2.1.1-20180720' make[1]: Nothing to be done for 'install-exec-am'. /usr/bin/mkdir -p '/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' make[1]: Leaving directory '/tmp/mecab-ko-dic-2.1.1-20180720' Install mecab-python /tmp /tmp/mecab-ko-dic-2.1.1-20180720 Cloning into 'mecab-python-0.996'... Unpacking objects: 100% (17/17), 59.65 KiB | 2.84 MiB/s, done. /tmp/mecab-ko-dic-2.1.1-20180720 Processing /tmp/mecab-python-0.996 error: subprocess-exited-with-error × python setup.py egg_info did not run successfully. │ exit code: 1 ╰─> See above for output. note: This error originates from a subprocess, and is likely not a problem with pip. Preparing metadata (setup.py) ... error error: metadata-generation-failed × Encountered error while generating package metadata. ╰─> See above for output. note: This is an issue with the package mentioned above, not pip. hint: See above for details. Collecting mecab-python3 Downloading mecab_python3-1.0.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (581 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 581.6/581.6 kB 8.3 MB/s eta 0:00:00 Installing collected packages: mecab-python3 Successfully installed mecab-python3-1.0.6
# 노트북이 코랩에서 실행 중인지 체크합니다.
import os
import sys
if 'google.colab' in sys.modules:
# 사이킷런 최신 버전을 설치합니다.
!pip install -q --upgrade scikit-learn
if not os.path.isdir('data'):
# 데이터를 다운받고 압축을 풉니다.
!wget -q -O data.tar.gz https://bit.ly/data-tar-gz
!tar -xzf data.tar.gz
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 10.8/10.8 MB 32.4 MB/s eta 0:00:00
최신 tweepy
를 설치할 경우 StreamListener
가 없다는 에러가 발생(https://github.com/tweepy/tweepy/issues/1531) 하므로 3.10버전을 설치해 주세요.
!pip install -q tweepy==3.10
try:
import konlpy
except:
!pip install -q konlpy
import konlpy
import pandas as pd
import numpy as np
konlpy.__version__
'0.6.0'
데이터 파일을 읽어 리뷰 텍스트와 점수를 text_train, y_train 변수에 저장합니다. 데이터 파일의 내용은 번호, 텍스트, 레이블이 탭으로 구분되어 한 라인에 한개의 데이터 샘플이 들어 있습니다.
df_train = pd.read_csv('data/ratings_train.txt', delimiter='\t', keep_default_na=False)
df_train.head()
id | document | label | |
---|---|---|---|
0 | 9976970 | 아 더빙.. 진짜 짜증나네요 목소리 | 0 |
1 | 3819312 | 흠...포스터보고 초딩영화줄....오버연기조차 가볍지 않구나 | 1 |
2 | 10265843 | 너무재밓었다그래서보는것을추천한다 | 0 |
3 | 9045019 | 교도소 이야기구먼 ..솔직히 재미는 없다..평점 조정 | 0 |
4 | 6483659 | 사이몬페그의 익살스런 연기가 돋보였던 영화!스파이더맨에서 늙어보이기만 했던 커스틴 ... | 1 |
text_train, y_train = df_train['document'].values, df_train['label'].values
같은 방식으로 테스트 데이터를 읽습니다.
df_test = pd.read_csv('data/ratings_test.txt', delimiter='\t', keep_default_na=False)
text_test = df_test['document'].values
y_test = df_test['label'].values
훈련 데이터와 테스트 데이터의 크기를 확인합니다.
len(text_train), np.bincount(y_train)
(150000, array([75173, 74827]))
len(text_test), np.bincount(y_test)
(50000, array([24827, 25173]))
KoNLPy 0.4.5 버전부터 Twitter
클래스가 Okt
클래스로 바뀌었습니다. open-korean-text 프로젝트는 twitter-korean-text 프로젝트의 공식 포크입니다.
피클링을 위해 __setstate__, __getstate__ 메서드를 추가하여 Okt 클래스를 감쌉니다.
from konlpy.tag import Okt
class PicklableOkt(Okt):
def __init__(self, *args):
self.args = args
Okt.__init__(self, *args)
def __setstate__(self, state):
self.__init__(*state['args'])
def __getstate__(self):
return {'args': self.args}
okt = PicklableOkt()
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.linear_model import LogisticRegression
from sklearn.pipeline import make_pipeline
from sklearn.model_selection import GridSearchCV
param_grid = {'tfidfvectorizer__min_df': [3, 5, 7],
'tfidfvectorizer__ngram_range': [(1, 1), (1, 2), (1, 3)],
'logisticregression__C': [0.1, 1, 10]}
pipe = make_pipeline(TfidfVectorizer(tokenizer=okt.morphs),
LogisticRegression())
grid = GridSearchCV(pipe, param_grid, n_jobs=-1)
# 그리드 서치를 수행합니다
grid.fit(text_train[:1000], y_train[:1000])
print("최상의 크로스 밸리데이션 점수: {:.3f}".format(grid.best_score_))
print("최적의 크로스 밸리데이션 파라미터: ", grid.best_params_)
/usr/local/lib/python3.10/dist-packages/sklearn/feature_extraction/text.py:525: UserWarning: The parameter 'token_pattern' will not be used since 'tokenizer' is not None' warnings.warn(
최상의 크로스 밸리데이션 점수: 0.718 최적의 크로스 밸리데이션 파라미터: {'logisticregression__C': 1, 'tfidfvectorizer__min_df': 3, 'tfidfvectorizer__ngram_range': (1, 3)}
tfidfvectorizer = grid.best_estimator_.named_steps["tfidfvectorizer"]
X_test = tfidfvectorizer.transform(text_test[:1000])
logisticregression = grid.best_estimator_.named_steps["logisticregression"]
score = logisticregression.score(X_test, y_test[:1000])
print("테스트 세트 점수: {:.3f}".format(score))
테스트 세트 점수: 0.714
from konlpy.tag import Mecab
class PicklableMecab(Mecab):
def __init__(self, *args):
self.args = args
Mecab.__init__(self, *args)
def __setstate__(self, state):
self.__init__(*state['args'])
def __getstate__(self):
return {'args': self.args}
mecab = PicklableMecab()
pipe = make_pipeline(TfidfVectorizer(tokenizer=mecab.morphs), LogisticRegression())
grid = GridSearchCV(pipe, param_grid, n_jobs=-1)
# 그리드 서치를 수행합니다
grid.fit(text_train[:1000], y_train[:1000])
print("최상의 크로스 밸리데이션 점수: {:.3f}".format(grid.best_score_))
print("최적의 크로스 밸리데이션 파라미터: ", grid.best_params_)
최상의 크로스 밸리데이션 점수: 0.752 최적의 크로스 밸리데이션 파라미터: {'logisticregression__C': 1, 'tfidfvectorizer__min_df': 3, 'tfidfvectorizer__ngram_range': (1, 2)}
/usr/local/lib/python3.10/dist-packages/sklearn/feature_extraction/text.py:525: UserWarning: The parameter 'token_pattern' will not be used since 'tokenizer' is not None' warnings.warn(
tfidfvectorizer = grid.best_estimator_.named_steps["tfidfvectorizer"]
X_test = tfidfvectorizer.transform(text_test[:1000])
logisticregression = grid.best_estimator_.named_steps["logisticregression"]
score = logisticregression.score(X_test, y_test[:1000])
print("테스트 세트 점수: {:.3f}".format(score))
테스트 세트 점수: 0.748