SQLiteLib icon indicating copy to clipboard operation
SQLiteLib copied to clipboard

Errory trying to use sqlite with ICU enabled

Open albertoAround opened this issue 2 years ago • 1 comments

I think that I followed all the right steps, but surely I did something wrong because I get these list of errors when I use the compiled library with ICU enabled (CUSTOM_SQLLIBRARY_CFLAGS = -DSQLITE_ENABLE_ICU)

Undefined symbols for architecture arm64: "_u_errorName_73", referenced from: _icuFunctionError in libsqlitecustom.a(sqlite3.o) "_u_foldCase_73", referenced from: _icuOpen in libsqlitecustom.a(sqlite3.o) _icuLikeCompare in libsqlitecustom.a(sqlite3.o) "_u_isspace_73", referenced from: _icuNext in libsqlitecustom.a(sqlite3.o) "_u_strToLower_73", referenced from: _icuCaseFunc16 in libsqlitecustom.a(sqlite3.o) "_u_strToUTF8_73", referenced from: _icuNext in libsqlitecustom.a(sqlite3.o) "_u_strToUpper_73", referenced from: _icuCaseFunc16 in libsqlitecustom.a(sqlite3.o) "_ubrk_close_73", referenced from: _icuClose in libsqlitecustom.a(sqlite3.o) "_ubrk_current_73", referenced from: _icuNext in libsqlitecustom.a(sqlite3.o) "_ubrk_first_73", referenced from: _icuOpen in libsqlitecustom.a(sqlite3.o) "_ubrk_next_73", referenced from: _icuNext in libsqlitecustom.a(sqlite3.o) "_ubrk_open_73", referenced from: _icuOpen in libsqlitecustom.a(sqlite3.o) "_ucol_close_73", referenced from: _icuLoadCollation in libsqlitecustom.a(sqlite3.o) _icuCollationDel in libsqlitecustom.a(sqlite3.o) "_ucol_open_73", referenced from: _icuLoadCollation in libsqlitecustom.a(sqlite3.o) "_ucol_strcoll_73", referenced from: _icuCollationColl in libsqlitecustom.a(sqlite3.o) "_uregex_close_73", referenced from: _icuRegexpDelete in libsqlitecustom.a(sqlite3.o) "_uregex_matches_73", referenced from: _icuRegexpFunc in libsqlitecustom.a(sqlite3.o) "_uregex_open_73", referenced from: _icuRegexpFunc in libsqlitecustom.a(sqlite3.o) "_uregex_setText_73", referenced from: _icuRegexpFunc in libsqlitecustom.a(sqlite3.o)

Someone has any idea what I'm doing wrong?

albertoAround avatar Jul 27 '23 09:07 albertoAround

Same issue. @albertoAround any luck fixing it?

I noticed that the unicode that comes with the macOS SDK does not have ucol.h so I ran brew install icu4c and added this to the header search path: /opt/homebrew/opt/icu4c/include which gave me this error:

Ld /Users/macintosh/Library/Developer/Xcode/DerivedData/ProNotes-gymsstwowowjulfsqthohdwcworn/Build/Products/Debug/GRDB.framework/Versions/A/GRDB normal (in target 'GRDBCustom' from project 'GRDBCustom')
    cd /Users/macintosh/code/ProNotes/GRDB.swift
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -Xlinker -reproducible -target arm64-apple-macos10.13 -dynamiclib -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX15.1.sdk -O0 -L/Users/macintosh/Library/Developer/Xcode/DerivedData/ProNotes-gymsstwowowjulfsqthohdwcworn/Build/Intermediates.noindex/EagerLinkingTBDs/Debug -L/Users/macintosh/Library/Developer/Xcode/DerivedData/ProNotes-gymsstwowowjulfsqthohdwcworn/Build/Products/Debug -F/Users/macintosh/Library/Developer/Xcode/DerivedData/ProNotes-gymsstwowowjulfsqthohdwcworn/Build/Intermediates.noindex/EagerLinkingTBDs/Debug -F/Users/macintosh/Library/Developer/Xcode/DerivedData/ProNotes-gymsstwowowjulfsqthohdwcworn/Build/Products/Debug -filelist /Users/macintosh/Library/Developer/Xcode/DerivedData/ProNotes-gymsstwowowjulfsqthohdwcworn/Build/Intermediates.noindex/GRDBCustom.build/Debug/GRDBCustom.build/Objects-normal/arm64/GRDB.LinkFileList -install_name @rpath/GRDB.framework/Versions/A/GRDB -Xlinker -rpath -Xlinker /usr/lib/swift -Xlinker -rpath -Xlinker @executable_path/Frameworks -Xlinker -rpath -Xlinker @loader_path/Frameworks -dead_strip -Xlinker -object_path_lto -Xlinker /Users/macintosh/Library/Developer/Xcode/DerivedData/ProNotes-gymsstwowowjulfsqthohdwcworn/Build/Intermediates.noindex/GRDBCustom.build/Debug/GRDBCustom.build/Objects-normal/arm64/GRDB_lto.o -Xlinker -export_dynamic -Xlinker -no_deduplicate -Xlinker -debug_variant -fapplication-extension -fprofile-instr-generate -fobjc-link-runtime -L/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/macosx -L/usr/lib/swift -Xlinker -add_ast_path -Xlinker /Users/macintosh/Library/Developer/Xcode/DerivedData/ProNotes-gymsstwowowjulfsqthohdwcworn/Build/Intermediates.noindex/GRDBCustom.build/Debug/GRDBCustom.build/Objects-normal/arm64/GRDB.swiftmodule /Users/macintosh/Library/Developer/Xcode/DerivedData/ProNotes-gymsstwowowjulfsqthohdwcworn/Build/Products/Debug/libsqlitecustom.a -Xlinker -no_adhoc_codesign -compatibility_version 1 -current_version 1 -Xlinker -dependency_info -Xlinker /Users/macintosh/Library/Developer/Xcode/DerivedData/ProNotes-gymsstwowowjulfsqthohdwcworn/Build/Intermediates.noindex/GRDBCustom.build/Debug/GRDBCustom.build/Objects-normal/arm64/GRDB_dependency_info.dat -o /Users/macintosh/Library/Developer/Xcode/DerivedData/ProNotes-gymsstwowowjulfsqthohdwcworn/Build/Products/Debug/GRDB.framework/Versions/A/GRDB

Undefined symbols for architecture arm64:
  "_u_errorName_76", referenced from:
      _icuFunctionError in libsqlitecustom.a[2](sqlite3.o)
  "_u_foldCase_76", referenced from:
      _icuOpen in libsqlitecustom.a[2](sqlite3.o)
      _icuLikeCompare in libsqlitecustom.a[2](sqlite3.o)
      _icuLikeCompare in libsqlitecustom.a[2](sqlite3.o)
  "_u_isspace_76", referenced from:
      _icuNext in libsqlitecustom.a[2](sqlite3.o)
  "_u_strToLower_76", referenced from:
      _icuCaseFunc16 in libsqlitecustom.a[2](sqlite3.o)
  "_u_strToUTF8_76", referenced from:
      _icuNext in libsqlitecustom.a[2](sqlite3.o)
  "_u_strToUpper_76", referenced from:
      _icuCaseFunc16 in libsqlitecustom.a[2](sqlite3.o)
  "_ubrk_close_76", referenced from:
      _icuClose in libsqlitecustom.a[2](sqlite3.o)
  "_ubrk_current_76", referenced from:
      _icuNext in libsqlitecustom.a[2](sqlite3.o)
  "_ubrk_first_76", referenced from:
      _icuOpen in libsqlitecustom.a[2](sqlite3.o)
  "_ubrk_next_76", referenced from:
      _icuNext in libsqlitecustom.a[2](sqlite3.o)
  "_ubrk_open_76", referenced from:
      _icuOpen in libsqlitecustom.a[2](sqlite3.o)
  "_ucol_close_76", referenced from:
      _icuLoadCollation in libsqlitecustom.a[2](sqlite3.o)
      _icuCollationDel in libsqlitecustom.a[2](sqlite3.o)
  "_ucol_open_76", referenced from:
      _icuLoadCollation in libsqlitecustom.a[2](sqlite3.o)
  "_ucol_strcoll_76", referenced from:
      _icuCollationColl in libsqlitecustom.a[2](sqlite3.o)
  "_uregex_close_76", referenced from:
      _icuRegexpDelete in libsqlitecustom.a[2](sqlite3.o)
  "_uregex_matches_76", referenced from:
      _icuRegexpFunc in libsqlitecustom.a[2](sqlite3.o)
  "_uregex_open_76", referenced from:
      _icuRegexpFunc in libsqlitecustom.a[2](sqlite3.o)
  "_uregex_setText_76", referenced from:
      _icuRegexpFunc in libsqlitecustom.a[2](sqlite3.o)
      _icuRegexpFunc in libsqlitecustom.a[2](sqlite3.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

dexterleng avatar Jan 12 '25 09:01 dexterleng