Open sooftware opened 1 month ago
pypi에 등록된 .whl 파일을 빌드한 환경이랑 차이가 좀 있나보네요. .whl 파일을 수정해서 제가 원하는 방향으로는 일단은 빌드에 성공했습니다.
안녕하세요! 다음과 같이 python:3.12
도커 컨테이너에서 테스트 하였을 때 저는 문제 없이 작동하는데, 혹시 mecab-ko
설치를 어떻게 하셨는지 알 수 있을까요?
~/Development
➜ docker run --rm -it --entrypoint=bash python:3.12
root@2f197fb77049:/# git clone https://github.com/jonghwanhyeon/python-mecab-ko
Cloning into 'python-mecab-ko'...
remote: Enumerating objects: 1279, done.
remote: Counting objects: 100% (381/381), done.
remote: Compressing objects: 100% (111/111), done.
remote: Total 1279 (delta 303), reused 296 (delta 256), pack-reused 898 (from 1)
Receiving objects: 100% (1279/1279), 1.11 MiB | 1.20 MiB/s, done.
Resolving deltas: 100% (693/693), done.
root@2f197fb77049:/# cd python-mecab-ko/scripts/
root@2f197fb77049:/python-mecab-ko/scripts# python3 install_mecab_ko.py
Downloading mecab-ko...
Downloading https://bitbucket.org/eunjeon/mecab-ko/downloads/mecab-0.996-ko-0.9.2.tar.gz
> 1414979 bytes / 1414979 bytes(100.00%)
Downloading http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
> 50743 bytes
Downloading http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
> 39713 bytes
Building mecab-ko...
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... aarch64-unknown-linux-gnu
checking host system type... aarch64-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 aarch64-unknown-linux-gnu file names to aarch64-unknown-linux-gnu format... func_convert_file_noop
checking how to convert aarch64-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) 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
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking whether the g++ linker (/usr/bin/ld) 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) 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
checking if the linker (/usr/bin/ld) 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/tmpzqlyi_5z'
Making all in src
make[2]: Entering directory '/tmp/tmpzqlyi_5z/src'
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o viterbi.lo viterbi.cpp
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o tagger.lo tagger.cpp
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o utils.lo utils.cpp
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o eval.lo eval.cpp
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o iconv_utils.lo iconv_utils.cpp
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o dictionary_rewriter.lo dictionary_rewriter.cpp
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o dictionary_generator.lo dictionary_generator.cpp
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o dictionary_compiler.lo dictionary_compiler.cpp
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o context_id.lo context_id.cpp
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -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_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c tagger.cpp -fPIC -DPIC -o .libs/tagger.o
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c viterbi.cpp -fPIC -DPIC -o .libs/viterbi.o
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c iconv_utils.cpp -fPIC -DPIC -o .libs/iconv_utils.o
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -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_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c dictionary_compiler.cpp -fPIC -DPIC -o .libs/dictionary_compiler.o
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c dictionary_generator.cpp -fPIC -DPIC -o .libs/dictionary_generator.o
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c dictionary_rewriter.cpp -fPIC -DPIC -o .libs/dictionary_rewriter.o
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -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_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c eval.cpp -fPIC -DPIC -o .libs/eval.o
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c connector.cpp -fPIC -DPIC -o .libs/connector.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 [-Wregister]
40 | register const char *p = begin;
| ^
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 [-Wregister]
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 [-Wregister]
407 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:408:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
408 | register array_u_type_ p;
| ^
darts.h:410:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
434 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:435:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
435 | register size_t num = 0;
| ^~~
darts.h:436:27: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
436 | register array_type_ n;
| ^
darts.h:437:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
437 | register array_u_type_ p;
| ^
darts.h:439:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
472 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:473:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
473 | register array_u_type_ p;
| ^
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 [-Wregister]
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 [-Wregister]
407 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:408:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
408 | register array_u_type_ p;
| ^
darts.h:410:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
434 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:435:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
435 | register size_t num = 0;
| ^~~
darts.h:436:27: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
436 | register array_type_ n;
| ^
darts.h:437:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
437 | register array_u_type_ p;
| ^
darts.h:439:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
472 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:473:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
473 | register array_u_type_ p;
| ^
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 [-Wregister]
407 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:408:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
408 | register array_u_type_ p;
| ^
darts.h:410:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
434 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:435:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
435 | register size_t num = 0;
| ^~~
darts.h:436:27: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
436 | register array_type_ n;
| ^
darts.h:437:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
437 | register array_u_type_ p;
| ^
darts.h:439:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
472 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:473:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
473 | register array_u_type_ p;
| ^
In file included from dictionary.h: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 [-Wregister]
40 | register const char *p = begin;
| ^
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 [-Wregister]
407 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:408:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
408 | register array_u_type_ p;
| ^
darts.h:410:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
434 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:435:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
435 | register size_t num = 0;
| ^~~
darts.h:436:27: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
436 | register array_type_ n;
| ^
darts.h:437:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
437 | register array_u_type_ p;
| ^
darts.h:439:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
472 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:473:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
473 | register array_u_type_ p;
| ^
In file included from dictionary.h: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 [-Wregister]
40 | register const char *p = begin;
| ^
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; 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 [-Wregister]
434 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:435:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
435 | register size_t num = 0;
| ^~~
darts.h:436:27: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
436 | register array_type_ n;
| ^
darts.h:437:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
437 | register array_u_type_ p;
| ^
darts.h:439:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
439 | for (register size_t i = 0; i < len; ++i) {
| ^
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 [-Wregister]
321 | register long best_cost = 2147483647;
| ^~~~~~~~~
viterbi.cpp:324:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
325 | register long cost = lnode->cost + lcost;
| ^~~~
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>; 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>; 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 [-Wregister]
407 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:408:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
408 | register array_u_type_ p;
| ^
darts.h:410:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
410 | for (register size_t i = 0; i < len; ++i) {
| ^
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; 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 [-Wregister]
434 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:435:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
435 | register size_t num = 0;
| ^~~
darts.h:436:27: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
436 | register array_type_ n;
| ^
darts.h:437:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
437 | register array_u_type_ p;
| ^
darts.h:439:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
439 | for (register size_t i = 0; i < len; ++i) {
| ^
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; 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 [-Wregister]
434 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:435:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
435 | register size_t num = 0;
| ^~~
darts.h:436:27: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
436 | register array_type_ n;
| ^
darts.h:437:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
437 | register array_u_type_ p;
| ^
darts.h:439:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
439 | for (register size_t i = 0; i < len; ++i) {
| ^
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; 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 [-Wregister]
434 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:435:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
435 | register size_t num = 0;
| ^~~
darts.h:436:27: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
436 | register array_type_ n;
| ^
darts.h:437:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
437 | register array_u_type_ p;
| ^
darts.h:439:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
439 | for (register size_t i = 0; i < len; ++i) {
| ^
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c iconv_utils.cpp -o iconv_utils.o >/dev/null 2>&1
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>; 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>; 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 [-Wregister]
407 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:408:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
408 | register array_u_type_ p;
| ^
darts.h:410:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
321 | register long best_cost = 2147483647;
| ^~~~~~~~~
viterbi.cpp:324:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
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 [-Wregister]
321 | register long best_cost = 2147483647;
| ^~~~~~~~~
viterbi.cpp:324:20: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
325 | register long cost = lnode->cost + lcost;
| ^~~~
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>; 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>; 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 [-Wregister]
407 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:408:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
408 | register array_u_type_ p;
| ^
darts.h:410:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
410 | 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>; 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>; 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 [-Wregister]
407 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:408:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
408 | register array_u_type_ p;
| ^
darts.h:410:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
410 | for (register size_t i = 0; i < len; ++i) {
| ^
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 [-Wunused-function]
30 | std::string lexical_cast<std::string, std::string>(std::string arg) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In function 'bool {anonymous}::match_rewrite_pattern(const char*, const char*)',
inlined from 'bool MeCab::RewritePattern::rewrite(size_t, const char**, std::string*) const' at dictionary_rewriter.cpp:81:31:
dictionary_rewriter.cpp:47:17: warning: 'char* strncpy(char*, const char*, size_t)' specified bound 8192 equals destination size -Wstringop-truncation]
47 | std::strncpy(buf.get(), pat + 1, buf.size());
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c context_id.cpp -o context_id.o >/dev/null 2>&1
dictionary_rewriter.cpp: In member function 'bool MeCab::RewritePattern::set_pattern(const char*, const char*)':
dictionary_rewriter.cpp:67:15: warning: 'char* strncpy(char*, const char*, size_t)' specified bound 8192 equals destination size -Wstringop-truncation]
67 | std::strncpy(buf.get(), src, buf.size());
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
dictionary_rewriter.cpp:70:15: warning: 'char* strncpy(char*, const char*, size_t)' specified bound 8192 equals destination size -Wstringop-truncation]
70 | std::strncpy(buf.get(), dst, buf.size());
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c connector.cpp -o connector.o >/dev/null 2>&1
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -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_USE_UTF8_ONLY -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_USE_UTF8_ONLY -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_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c dictionary_rewriter.cpp -o dictionary_rewriter.o >/dev/null 2>&1
In static member function 'static bool MeCab::Eval::parseLevel(const char*, std::vector<int>*)',
inlined from 'static bool MeCab::Eval::eval(int, char**)' at eval.cpp:134:15:
eval.cpp:63:17: warning: 'char* strncpy(char*, const char*, size_t)' specified bound 8192 equals destination size [-Wstringop-truncation]
63 | std::strncpy(buf.get(), level_str, buf.size());
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c dictionary_compiler.cpp -o dictionary_compiler.o >/dev/null 2>&1
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c eval.cpp -o eval.o >/dev/null 2>&1
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c nbest_generator.cpp -o nbest_generator.o >/dev/null 2>&1
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -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_USE_UTF8_ONLY -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_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c writer.cpp -fPIC -DPIC -o .libs/writer.o
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -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_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c string_buffer.cpp -fPIC -DPIC -o .libs/string_buffer.o
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -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_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c param.cpp -fPIC -DPIC -o .libs/param.o
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -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_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c dictionary_generator.cpp -o dictionary_generator.o >/dev/null 2>&1
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c tokenizer.cpp -fPIC -DPIC -o .libs/tokenizer.o
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -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_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c char_property.cpp -fPIC -DPIC -o .libs/char_property.o
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -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_USE_UTF8_ONLY -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_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c dictionary.cpp -fPIC -DPIC -o .libs/dictionary.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 [-Wregister]
407 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:408:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
408 | register array_u_type_ p;
| ^
darts.h:410:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
434 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:435:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
435 | register size_t num = 0;
| ^~~
darts.h:436:27: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
436 | register array_type_ n;
| ^
darts.h:437:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
437 | register array_u_type_ p;
| ^
darts.h:439:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
472 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:473:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
40 | register const char *p = begin;
| ^
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 [-Wregister]
40 | register const char *p = begin;
| ^
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; 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 [-Wregister]
434 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:435:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
435 | register size_t num = 0;
| ^~~
darts.h:436:27: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
436 | register array_type_ n;
| ^
darts.h:437:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
437 | register array_u_type_ p;
| ^
darts.h:439:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
439 | for (register size_t i = 0; i < len; ++i) {
| ^
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 [-Wclass-memaccess]
194 | std::memset(&c, 0, sizeof(c));
| ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
char_property.h:16:8: note: 'struct MeCab::CharInfo' declared here
16 | struct CharInfo {
| ^~~~~~~~
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>; 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>; 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 [-Wregister]
407 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:408:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
408 | register array_u_type_ p;
| ^
darts.h:410:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
410 | for (register size_t i = 0; i < len; ++i) {
| ^
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c tagger.cpp -o tagger.o >/dev/null 2>&1
writer.cpp: In member function 'bool MeCab::Writer::writeNode(MeCab::Lattice*, const char*, const MeCab::Node*, MeCab::StringBuffer*) const':
writer.cpp:352:27: warning: 'char* strncpy(char*, const char*, size_t)' specified bound 8192 equals destination size [-Wstringop-truncation]
352 | std::strncpy(buf.get(), node->feature, buf.size());
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -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_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c feature_index.cpp -fPIC -DPIC -o .libs/feature_index.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 [-Wregister]
40 | register const char *p = begin;
| ^
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o lbfgs.lo lbfgs.cpp
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 [-Wregister]
407 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:408:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
408 | register array_u_type_ p;
| ^
darts.h:410:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
434 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:435:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
435 | register size_t num = 0;
| ^~~
darts.h:436:27: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
436 | register array_type_ n;
| ^
darts.h:437:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
437 | register array_u_type_ p;
| ^
darts.h:439:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
472 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:473:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
473 | register array_u_type_ p;
| ^
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c lbfgs.cpp -fPIC -DPIC -o .libs/lbfgs.o
dictionary.cpp: At global scope:
dictionary.cpp:68:34: warning: 'template<class _Arg1, class _Arg2, class _Result> struct std::binary_function' is deprecated [-Wdeprecated-declarations]
68 | struct pair_1st_cmp: public std::binary_function<bool, T1, T2> {
| ^~~~~~~~~~~~~~~
In file included from /usr/include/c++/12/string:48,
from /usr/include/c++/12/bits/locale_classes.h:40,
from /usr/include/c++/12/bits/ios_base.h:41,
from /usr/include/c++/12/ios:42,
from /usr/include/c++/12/istream:38,
from /usr/include/c++/12/fstream:38,
from dictionary.cpp:6:
/usr/include/c++/12/bits/stl_function.h:131:12: note: declared here
131 | struct binary_function
| ^~~~~~~~~~~~~~~
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; 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 [-Wregister]
434 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:435:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
435 | register size_t num = 0;
| ^~~
darts.h:436:27: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
436 | register array_type_ n;
| ^
darts.h:437:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
437 | register array_u_type_ p;
| ^
darts.h:439:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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>; 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>; 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 [-Wregister]
407 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:408:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
408 | register array_u_type_ p;
| ^
darts.h:410:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
410 | for (register size_t i = 0; i < len; ++i) {
| ^
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -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_USE_UTF8_ONLY -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 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 [-Wregister]
407 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:408:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
408 | register array_u_type_ p;
| ^
darts.h:410:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
434 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:435:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
435 | register size_t num = 0;
| ^~~
darts.h:436:27: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
436 | register array_type_ n;
| ^
darts.h:437:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
437 | register array_u_type_ p;
| ^
darts.h:439:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
472 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:473:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
473 | register array_u_type_ p;
| ^
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c writer.cpp -o writer.o >/dev/null 2>&1
param.cpp: In member function 'bool MeCab::Param::open(const char*, const MeCab::Option*)':
param.cpp:194:15: warning: 'char* strncpy(char*, const char*, size_t)' specified bound 8192 equals destination size [-Wstringop-truncation]
194 | std::strncpy(str.get(), arg, str.size());
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c param.cpp -o param.o >/dev/null 2>&1
In function 'bool MeCab::{anonymous}::partial_match(const char*, const char*)',
inlined from 'bool MeCab::{anonymous}::is_valid_node(const MeCab::Lattice*, N*) [with N = mecab_node_t]' at tokenizer.cpp:224:20:
tokenizer.cpp:193:15: warning: 'char* strncpy(char*, const char*, size_t)' specified bound 8192 equals destination size [-Wstringop-truncation]
193 | std::strncpy(buf1.get(), f1, buf1.size());
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tokenizer.cpp:194:15: warning: 'char* strncpy(char*, const char*, size_t)' specified bound 8192 equals destination size [-Wstringop-truncation]
194 | std::strncpy(buf2.get(), f2, buf2.size());
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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 [-Wregister]
407 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:408:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
408 | register array_u_type_ p;
| ^
darts.h:410:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
434 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:435:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
435 | register size_t num = 0;
| ^~~
darts.h:436:27: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
436 | register array_type_ n;
| ^
darts.h:437:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
437 | register array_u_type_ p;
| ^
darts.h:439:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
472 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:473:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
473 | register array_u_type_ p;
| ^
In file included from dictionary.h:12,
from tokenizer.h:11,
from learner_tagger.h: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 [-Wregister]
40 | register const char *p = begin;
| ^
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c lbfgs.cpp -o lbfgs.o >/dev/null 2>&1
tokenizer.cpp: In member function 'bool MeCab::Tokenizer<N, P>::open(const MeCab::Param&) [with N = mecab_node_t; P = mecab_path_t]':
tokenizer.cpp:123:17: warning: 'char* strncpy(char*, const char*, size_t)' specified bound 8192 equals destination size [-Wstringop-truncation]
123 | std::strncpy(buf.get(), userdic.c_str(), buf.size());
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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; 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 [-Wregister]
434 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:435:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
435 | register size_t num = 0;
| ^~~
darts.h:436:27: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
436 | register array_type_ n;
| ^
darts.h:437:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
437 | register array_u_type_ p;
| ^
darts.h:439:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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>; 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>; 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 [-Wregister]
407 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:408:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
408 | register array_u_type_ p;
| ^
darts.h:410:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
410 | for (register size_t i = 0; i < len; ++i) {
| ^
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c char_property.cpp -o char_property.o >/dev/null 2>&1
learner_tagger.cpp: At global scope:
learner_tagger.cpp:25:7: warning: 'char* MeCab::{anonymous}::mystrdup(const std::string&)' defined but not used [-Wunused-functio]
25 | char *mystrdup(const std::string &str) {
| ^~~~~~~~
tokenizer.cpp: In member function 'bool MeCab::Tokenizer<N, P>::open(const MeCab::Param&) [with N = mecab_learner_node_t; P = mecab_learner_path_t]':
tokenizer.cpp:123:17: warning: 'char* strncpy(char*, const char*, size_t)' specified bound 8192 equals destination size [-Wstringop-truncation]
123 | std::strncpy(buf.get(), userdic.c_str(), buf.size());
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -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_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c learner.cpp -fPIC -DPIC -o .libs/learner.o
/bin/bash ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -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_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c libmecab.cpp -fPIC -DPIC -o .libs/libmecab.o
g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o mecab.o mecab.cpp
g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o mecab-dict-index.o mecab-dict-index.cpp
g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o mecab-dict-gen.o mecab-dict-gen.cpp
feature_index.cpp: In member function 'bool MeCab::FeatureIndex::buildUnigramFeature(MeCab::LearnerPath*, const char*)':
feature_index.cpp:337:15: warning: 'char* strncpy(char*, const char*, size_t)' specified bound 2048 equals destination size [-Wstringop-truncation]
337 | std::strncpy(ubuf.get(), ufeature, ubuf.size());
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o mecab-cost-train.o mecab-cost-train.cpp
feature_index.cpp: In member function 'bool MeCab::FeatureIndex::buildBigramFeature(MeCab::LearnerPath*, const char*, const char*':
feature_index.cpp:389:15: warning: 'char* strncpy(char*, const char*, size_t)' specified bound 2048 equals destination size [-Wstringop-truncation]
389 | std::strncpy(lbuf.get(), rfeature, lbuf.size());
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
feature_index.cpp:390:15: warning: 'char* strncpy(char*, const char*, size_t)' specified bound 2048 equals destination size [-Wstringop-truncation]
390 | std::strncpy(rbuf.get(), lfeature, rbuf.size());
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o mecab-system-eval.o mecab-system-eval.cpp
g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -c -o mecab-test-gen.o mecab-test-gen.cpp
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 [-Wregister]
407 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:408:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
408 | register array_u_type_ p;
| ^
darts.h:410:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
434 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:435:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
435 | register size_t num = 0;
| ^~~
darts.h:436:27: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
436 | register array_type_ n;
| ^
darts.h:437:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
437 | register array_u_type_ p;
| ^
darts.h:439:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
472 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:473:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
473 | register array_u_type_ p;
| ^
In file included from dictionary.h: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 [-Wregister]
40 | register const char *p = begin;
| ^
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 [-Wregister]
407 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:408:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
408 | register array_u_type_ p;
| ^
darts.h:410:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
434 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:435:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
435 | register size_t num = 0;
| ^~~
darts.h:436:27: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
436 | register array_type_ n;
| ^
darts.h:437:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
437 | register array_u_type_ p;
| ^
darts.h:439:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
472 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:473:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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 [-Wregister]
40 | register const char *p = begin;
| ^
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; 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 [-Wregister]
434 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:435:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
435 | register size_t num = 0;
| ^~~
darts.h:436:27: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
436 | register array_type_ n;
| ^
darts.h:437:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
437 | register array_u_type_ p;
| ^
darts.h:439:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
439 | for (register size_t i = 0; i < len; ++i) {
| ^
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c learner_tagger.cpp -o learner_tagger.o >/dev/null 2>&1
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>; 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>; 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 [-Wregister]
407 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:408:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
408 | register array_u_type_ p;
| ^
darts.h:410:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
410 | for (register size_t i = 0; i < len; ++i) {
| ^
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c tokenizer.cpp -o tokenizer.o >/dev/null 2>&1
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; 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 [-Wregister]
434 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:435:25: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
435 | register size_t num = 0;
| ^~~
darts.h:436:27: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
436 | register array_type_ n;
| ^
darts.h:437:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
437 | register array_u_type_ p;
| ^
darts.h:439:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
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>; 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>; 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 [-Wregister]
407 | register array_type_ b = array_[node_pos].base;
| ^
darts.h:408:28: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
408 | register array_u_type_ p;
| ^
darts.h:410:26: warning: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
410 | for (register size_t i = 0; i < len; ++i) {
| ^
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c libmecab.cpp -o libmecab.o >/dev/null 2>&1
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c feature_index.cpp -o feature_index.o >/dev/null 2>&1
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -c dictionary.cpp -o dictionary.o >/dev/null 2>&1
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_USE_UTF8_ONLY -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=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/aarch64-linux-gnu/12/../../../aarch64-linux-gnu/crti.o /usr/lib/gcc/aarch64-linux-gnu/12/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/aarch64-linux-gnu/12 -L/usr/lib/gcc/aarch64-linux-gnu/12/../../../aarch64-linux-gnu -L/usr/lib/gcc/aarch64-linux-gnu/12/../../../../lib -L/lib/aarch64-linux-gnu -L/lib/../lib -L/usr/lib/aarch64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/aarch64-linux-gnu/12/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/aarch64-linux-gnu/12/crtendS.o /usr/lib/gcc/aarch64-linux-gnu/12/../../../aarch64-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" )
/bin/bash ../libtool --tag=CXX --mode=link g++ -O3 -Wall -o mecab mecab.o libmecab.la -lpthread -lpthread -lstdc++
/bin/bash ../libtool --tag=CXX --mode=link g++ -O3 -Wall -o mecab-dict-index mecab-dict-index.o libmecab.la -lpthread -lpthread -lstdc++
/bin/bash ../libtool --tag=CXX --mode=link g++ -O3 -Wall -o mecab-dict-gen mecab-dict-gen.o libmecab.la -lpthread -lpthread -lstdc++
/bin/bash ../libtool --tag=CXX --mode=link g++ -O3 -Wall -o mecab-cost-train mecab-cost-train.o libmecab.la -lpthread -lpthread -lstdc++
/bin/bash ../libtool --tag=CXX --mode=link g++ -O3 -Wall -o mecab-system-eval mecab-system-eval.o libmecab.la -lpthread -lpthread -lstdc++
/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++
libtool: link: g++ -O3 -Wall -o .libs/mecab mecab.o ./.libs/libmecab.so -lpthread -lstdc++
libtool: link: g++ -O3 -Wall -o .libs/mecab-cost-train mecab-cost-train.o ./.libs/libmecab.so -lpthread -lstdc++
libtool: link: g++ -O3 -Wall -o .libs/mecab-dict-index mecab-dict-index.o ./.libs/libmecab.so -lpthread -lstdc++
libtool: link: g++ -O3 -Wall -o .libs/mecab-dict-gen mecab-dict-gen.o ./.libs/libmecab.so -lpthread -lstdc++
libtool: link: g++ -O3 -Wall -o .libs/mecab-system-eval mecab-system-eval.o ./.libs/libmecab.so -lpthread -lstdc++
make[2]: Leaving directory '/tmp/tmpzqlyi_5z/src'
Making all in man
make[2]: Entering directory '/tmp/tmpzqlyi_5z/man'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/tmp/tmpzqlyi_5z/man'
Making all in doc
make[2]: Entering directory '/tmp/tmpzqlyi_5z/doc'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/tmp/tmpzqlyi_5z/doc'
Making all in tests
make[2]: Entering directory '/tmp/tmpzqlyi_5z/tests'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/tmp/tmpzqlyi_5z/tests'
make[2]: Entering directory '/tmp/tmpzqlyi_5z'
make[2]: Leaving directory '/tmp/tmpzqlyi_5z'
make[1]: Leaving directory '/tmp/tmpzqlyi_5z'
Installing mecab-ko...
Making install in src
make[1]: Entering directory '/tmp/tmpzqlyi_5z/src'
make[2]: Entering directory '/tmp/tmpzqlyi_5z/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/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/sbin" ldconfig -n /usr/local/lib
----------------------------------------------------------------------
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/tmpzqlyi_5z/src'
make[1]: Leaving directory '/tmp/tmpzqlyi_5z/src'
Making install in man
make[1]: Entering directory '/tmp/tmpzqlyi_5z/man'
make[2]: Entering directory '/tmp/tmpzqlyi_5z/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/tmpzqlyi_5z/man'
make[1]: Leaving directory '/tmp/tmpzqlyi_5z/man'
Making install in doc
make[1]: Entering directory '/tmp/tmpzqlyi_5z/doc'
make[2]: Entering directory '/tmp/tmpzqlyi_5z/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/tmpzqlyi_5z/doc'
make[1]: Leaving directory '/tmp/tmpzqlyi_5z/doc'
Making install in tests
make[1]: Entering directory '/tmp/tmpzqlyi_5z/tests'
make[2]: Entering directory '/tmp/tmpzqlyi_5z/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/tmpzqlyi_5z/tests'
make[1]: Leaving directory '/tmp/tmpzqlyi_5z/tests'
make[1]: Entering directory '/tmp/tmpzqlyi_5z'
make[2]: Entering directory '/tmp/tmpzqlyi_5z'
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/tmpzqlyi_5z'
make[1]: Leaving directory '/tmp/tmpzqlyi_5z'
root@2f197fb77049:/python-mecab-ko/scripts# ldconfig
root@2f197fb77049:/python-mecab-ko/scripts# cd ..
root@2f197fb77049:/python-mecab-ko# pip install -e .
Obtaining file:///python-mecab-ko
Installing build dependencies ... done
Checking if build backend supports build_editable ... done
Getting requirements to build editable ... done
Preparing editable metadata (pyproject.toml) ... done
Collecting python-mecab-ko-dic (from python-mecab-ko==1.3.7)
Downloading python_mecab_ko_dic-2.1.1.post2-py3-none-any.whl.metadata (1.4 kB)
Downloading python_mecab_ko_dic-2.1.1.post2-py3-none-any.whl (34.5 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 34.5/34.5 MB 8.0 MB/s eta 0:00:00
Building wheels for collected packages: python-mecab-ko
Building editable for python-mecab-ko (pyproject.toml) ... done
Created wheel for python-mecab-ko: filename=python_mecab_ko-1.3.7-0.editable-cp312-cp312-linux_aarch64.whl size=5003 sha256=9fa1354bd75a2e4ae6d5f036f1ae7e86be57221b48911eedfe3ff9973db94b78
Stored in directory: /tmp/pip-ephem-wheel-cache-igsv0lre/wheels/48/26/8e/12eebd74e0b6631436eb7282b113e54816512ab5864ae3a2bf
Successfully built python-mecab-ko
Installing collected packages: python-mecab-ko-dic, python-mecab-ko
Successfully installed python-mecab-ko-1.3.7 python-mecab-ko-dic-2.1.1.post2
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager, possibly rendering your system unusable.It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv. Use the --root-user-action option if you know what you are doing and want to suppress this warning.
root@2f197fb77049:/python-mecab-ko# cat > nouns.csv
트위치,,,,NNP,*,F,트위치,*,*,*,*
플랫폼,,,,NNG,*,T,플랫폼,*,*,*,*
root@2f197fb77049:/python-mecab-ko# python3 -m mecab dict-index --userdic nouns.dic nouns.csv
reading nouns.csv ... 2
emitting double-array: 100% |###########################################|
done!
root@2f197fb77049:/python-mecab-ko#
네 제가 시간 되는대로 로그를 남겨두겠습니다.
안녕하세요. 좋은 프로젝트 감사합니다 :)
User dictionary 적용을 위해서
python3 -m mecab dict-index --userdic nouns.dic nouns.csv
해당 명령어를 실행하려하는데,pip install python-mecab-ko
로 실행시에는 잘 동작하는데, 현재 깃허브 main 브랜치와 pypi에 등록된 1.3.7 버전 코드를 로컬에서 다운받아pip install -e .
로 설치시에는 아래와 같이 에러가 나옵니다.이 프로젝트 소스코드 기반으로 커스터마이징하게 수정해서 사용하려고 하는 중이여서
pip install -e .
으로 빌드했을때 잘 동작해야하는데, 혹시 원인을 아실까요?