I actually first used ./configure CFLAGS="-DSQLITE_ENABLE_ICU `icu-config --cppflags`" LDFLAGS="`icu-config --ldflags`" But I got the error
sqlite3.c:184184:10: fatal error: 'unicode/utypes.h' file not found #include <unicode/utypes.h> Then I added -I -L switches and if I remembered correct I used brew to install icu4c. The compiler command are these qiulangs-MacBook-Pro:sqlite-autoconf-3250100 qiulang$ make /bin/sh ./libtool --tag=CC --mode=compile gcc -DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.25.1\" -DPACKAGE_STRING=\"sqlite\ 3.25.1\" -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\" -DPACKAGE=\"sqlite\" -DVERSION=\"3.25.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1 -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1 -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DHAVE_EDITLINE_READLINE_H=1 -DHAVE_READLINE_READLINE_H=1 -DHAVE_READLINE=1 -DHAVE_ZLIB_H=1 -I. -D_REENTRANT=1 -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_RTREE -DSQLITE_HAVE_ZLIB -I/usr/local/opt/icu4c/include -DSQLITE_ENABLE_ICU -MT sqlite3.lo -MD -MP -MF .deps/sqlite3.Tpo -c -o sqlite3.lo sqlite3.c libtool: compile: gcc -DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.25.1\" "-DPACKAGE_STRING=\"sqlite 3.25.1\"" -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\" -DPACKAGE=\"sqlite\" -DVERSION=\"3.25.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1 -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1 -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DHAVE_EDITLINE_READLINE_H=1 -DHAVE_READLINE_READLINE_H=1 -DHAVE_READLINE=1 -DHAVE_ZLIB_H=1 -I. -D_REENTRANT=1 -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_RTREE -DSQLITE_HAVE_ZLIB -I/usr/local/opt/icu4c/include -DSQLITE_ENABLE_ICU -MT sqlite3.lo -MD -MP -MF .deps/sqlite3.Tpo -c sqlite3.c -fno-common -DPIC -o .libs/sqlite3.o libtool: compile: gcc -DPACKAGE_NAME=\"sqlite\" -DPACKAGE_TARNAME=\"sqlite\" -DPACKAGE_VERSION=\"3.25.1\" "-DPACKAGE_STRING=\"sqlite 3.25.1\"" -DPACKAGE_BUGREPORT=\"http://www.sqlite.org\" -DPACKAGE_URL=\"\" -DPACKAGE=\"sqlite\" -DVERSION=\"3.25.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_FDATASYNC=1 -DHAVE_USLEEP=1 -DHAVE_LOCALTIME_R=1 -DHAVE_GMTIME_R=1 -DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DHAVE_EDITLINE_READLINE_H=1 -DHAVE_READLINE_READLINE_H=1 -DHAVE_READLINE=1 -DHAVE_ZLIB_H=1 -I. -D_REENTRANT=1 -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_RTREE -DSQLITE_HAVE_ZLIB -I/usr/local/opt/icu4c/include -DSQLITE_ENABLE_ICU -MT sqlite3.lo -MD -MP -MF .deps/sqlite3.Tpo -c sqlite3.c -o sqlite3.o >/dev/null 2>&1 mv -f .deps/sqlite3.Tpo .deps/sqlite3.Plo /bin/sh ./libtool --tag=CC --mode=link gcc -D_REENTRANT=1 -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_FTS5 -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_RTREE -DSQLITE_HAVE_ZLIB -I/usr/local/opt/icu4c/include -DSQLITE_ENABLE_ICU -no-undefined -version-info 8:6:8 -L/usr/local/opt/icu4c/lib -o libsqlite3.la -rpath /usr/local/lib sqlite3.lo -lz libtool: link: gcc -dynamiclib -o .libs/libsqlite3.0.dylib .libs/sqlite3.o -L/usr/local/opt/icu4c/lib -lz -install_name /usr/local/lib/libsqlite3.0.dylib -compatibility_version 9 -current_version 9.6 -Wl,-single_module Undefined symbols for architecture x86_64: "_u_errorName_62", referenced from: _icuFunctionError in sqlite3.o "_u_foldCase_62", referenced from: ... At 2018-09-21 21:52:30, "Dan Kennedy" <danielk1...@gmail.com> wrote: >On 09/21/2018 05:21 PM, 邱朗 wrote: >> Hi, >> >> Thanks for replying my question. Following are the error I got when >> compiling sqlite-autoconf-3250100.tar.gz . The error looks similar to this >> old discussion >> http://sqlite.1065341.n5.nabble.com/compiling-Sqlite-with-ICU-td40641.html >> >> >> I am using macOS 10.13 & xcode 10 > >The text below is just the error. If you post the compiler commands that >appear before it in the build log somebody might be able to spot the >problem. > > From the error message, it may be that you have mismatched ICU header >and library files, or it may be that not all required ICU libraries are >being linked. If you remove the -I... and -L... switches from your >command line does it make any difference? > >Dan. > > > >> >> >> Undefined symbols for architecture x86_64: >> "_u_errorName_62", referenced from: >> _icuFunctionError in sqlite3.o >> "_u_foldCase_62", referenced from: >> _icuOpen in sqlite3.o >> _icuLikeCompare in sqlite3.o >> "_u_isspace_62", referenced from: >> _icuNext in sqlite3.o >> "_u_strToLower_62", referenced from: >> _icuCaseFunc16 in sqlite3.o >> "_u_strToUTF8_62", referenced from: >> _icuNext in sqlite3.o >> "_u_strToUpper_62", referenced from: >> _icuCaseFunc16 in sqlite3.o >> "_ubrk_close_62", referenced from: >> _icuClose in sqlite3.o >> "_ubrk_current_62", referenced from: >> _icuNext in sqlite3.o >> "_ubrk_first_62", referenced from: >> _icuOpen in sqlite3.o >> "_ubrk_next_62", referenced from: >> _icuNext in sqlite3.o >> "_ubrk_open_62", referenced from: >> _icuOpen in sqlite3.o >> "_ucol_close_62", referenced from: >> _icuLoadCollation in sqlite3.o >> _icuCollationDel in sqlite3.o >> "_ucol_open_62", referenced from: >> _icuLoadCollation in sqlite3.o >> "_ucol_strcoll_62", referenced from: >> _icuCollationColl in sqlite3.o >> "_uregex_close_62", referenced from: >> _icuRegexpDelete in sqlite3.o >> "_uregex_matches_62", referenced from: >> _icuRegexpFunc in sqlite3.o >> "_uregex_open_62", referenced from: >> _icuRegexpFunc in sqlite3.o >> "_uregex_setText_62", referenced from: >> _icuRegexpFunc in sqlite3.o >> ld: symbol(s) not found for architecture x86_64 >> clang: error: linker command failed with exit code 1 (use -v to see >> invocation) >> make: *** [libsqlite3.la] Error 1 >> >> >> >> >> 在 2018-09-21 17:32:38,"Dan Kennedy" <danielk1...@gmail.com> 写道: >>> On 09/21/2018 01:38 PM, 邱朗 wrote: >>>>> >>>>> I think it could be made to work, or at least, I have experience >>>>> making it work with CJK based on functionality exposed via ICU. I >>>>> don't know if the unicode tokenizer uses ICU or if the functionality >>>>> in ICU that I used is available in the unicode tables. Not >>>>> understanding any of the languages represented by CJK, I can't say >>>>> with any confidence how good my solution was, but it seemed to be good >>>>> enough for the use case of my management and customers in the impacted >>>>> regions. >>>>> _______________________________________________ >>>>> sqlite-users mailing list >>>>> sqlite-users@mailinglists.sqlite.org >>>>> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users >>>> >>>> I am Chinese and I know a little bit of Korean, I can help to test your >>>> product :D All Jokes aside I also tried to build an ICU SQlite macOS >>>> version but I failed. All the document I googled seem outdated. e.g. I >>>> used this (and other solutions) but I just can not build a macOS version. >>>> Do you have any experience for that ? >>>> >>>> >>>> ./configure CFLAGS="-I/usr/local/opt/icu4c/include -DSQLITE_ENABLE_ICU >>>> `icu-config --cppflags`" LDFLAGS="-L/usr/local/opt/icu4c/lib `icu-config >>>> --ldflags`" >>> >>> Can you post the complete output of the failed build attempt? Thanks. >>> >>> Dan. >>> >> _______________________________________________ >> sqlite-users mailing list >> sqlite-users@mailinglists.sqlite.org >> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users >> > >_______________________________________________ >sqlite-users mailing list >sqlite-users@mailinglists.sqlite.org >http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users