Make: *** [sqlcipher] Error 1 on MacOS Mojave


#1

I have gone through all the answers but could not solve the problem.
I am using mac mojave 10.14.2
I have used following command to configure ../configure --disable-tcl --disable-shared --enable-static=yes --enable-load-extension --enable-tempstore=yes --with-crypto-lib=commoncrypto CFLAGS="-DSQLITE_HAS_CODEC -DSQLITE_ENABLE_FTS3" LDFLAGS="/usr/local/opt/openssl/lib/libcrypto.a"

When I ran make command, then I incurred linking problems.
Here is my complete log
tclsh8.6 /Users/royatirek/sqlcipher/bld/…/tool/mksqlite3h.tcl /Users/royatirek/sqlcipher/bld/… >sqlite3.h
clang -DSQLITE_HAS_CODEC -DSQLCIPHER_CRYPTO_CC -o mkkeywordhash -DSQLITE_ENABLE_FTS3 /Users/royatirek/sqlcipher/bld/…/tool/mkkeywordhash.c
./mkkeywordhash >keywordhash.h
clang -DSQLITE_HAS_CODEC -DSQLCIPHER_CRYPTO_CC -o lemon /Users/royatirek/sqlcipher/bld/…/tool/lemon.c
cp /Users/royatirek/sqlcipher/bld/…/tool/lempar.c .
cp /Users/royatirek/sqlcipher/bld/…/src/parse.y .
rm -f parse.h
./lemon -DSQLITE_ENABLE_FTS3 parse.y
mv parse.h parse.h.temp
tclsh8.6 /Users/royatirek/sqlcipher/bld/…/tool/addopcodes.tcl parse.h.temp >parse.h
cat parse.h /Users/royatirek/sqlcipher/bld/…/src/vdbe.c | tclsh8.6 /Users/royatirek/sqlcipher/bld/…/tool/mkopcodeh.tcl >opcodes.h
tclsh8.6 /Users/royatirek/sqlcipher/bld/…/tool/mkopcodec.tcl opcodes.h >opcodes.c
tclsh8.6 /Users/royatirek/sqlcipher/bld/…/tool/mkshellc.tcl >shell.c
cp /Users/royatirek/sqlcipher/bld/…/ext/fts5/fts5parse.y .
rm -f fts5parse.h
./lemon fts5parse.y
tclsh8.6 /Users/royatirek/sqlcipher/bld/…/ext/fts5/tool/mkfts5c.tcl
cp /Users/royatirek/sqlcipher/bld/…/ext/fts5/fts5.h .
rm -rf tsrc
mkdir tsrc
cp -f /Users/royatirek/sqlcipher/bld/…/src/crypto.h /Users/royatirek/sqlcipher/bld/…/src/sqlcipher.h /Users/royatirek/sqlcipher/bld/…/src/crypto.c /Users/royatirek/sqlcipher/bld/…/src/crypto_impl.c /Users/royatirek/sqlcipher/bld/…/src/crypto_libtomcrypt.c /Users/royatirek/sqlcipher/bld/…/src/crypto_openssl.c /Users/royatirek/sqlcipher/bld/…/src/crypto_cc.c /Users/royatirek/sqlcipher/bld/…/src/alter.c /Users/royatirek/sqlcipher/bld/…/src/analyze.c /Users/royatirek/sqlcipher/bld/…/src/attach.c /Users/royatirek/sqlcipher/bld/…/src/auth.c /Users/royatirek/sqlcipher/bld/…/src/backup.c /Users/royatirek/sqlcipher/bld/…/src/bitvec.c /Users/royatirek/sqlcipher/bld/…/src/btmutex.c /Users/royatirek/sqlcipher/bld/…/src/btree.c /Users/royatirek/sqlcipher/bld/…/src/btree.h /Users/royatirek/sqlcipher/bld/…/src/btreeInt.h /Users/royatirek/sqlcipher/bld/…/src/build.c /Users/royatirek/sqlcipher/bld/…/src/callback.c /Users/royatirek/sqlcipher/bld/…/src/complete.c /Users/royatirek/sqlcipher/bld/…/src/ctime.c /Users/royatirek/sqlcipher/bld/…/src/date.c /Users/royatirek/sqlcipher/bld/…/src/dbpage.c /Users/royatirek/sqlcipher/bld/…/src/dbstat.c /Users/royatirek/sqlcipher/bld/…/src/delete.c /Users/royatirek/sqlcipher/bld/…/src/expr.c /Users/royatirek/sqlcipher/bld/…/src/fault.c /Users/royatirek/sqlcipher/bld/…/src/fkey.c /Users/royatirek/sqlcipher/bld/…/src/func.c /Users/royatirek/sqlcipher/bld/…/src/global.c /Users/royatirek/sqlcipher/bld/…/src/hash.c /Users/royatirek/sqlcipher/bld/…/src/hash.h /Users/royatirek/sqlcipher/bld/…/src/hwtime.h /Users/royatirek/sqlcipher/bld/…/src/insert.c /Users/royatirek/sqlcipher/bld/…/src/legacy.c /Users/royatirek/sqlcipher/bld/…/src/loadext.c /Users/royatirek/sqlcipher/bld/…/src/main.c /Users/royatirek/sqlcipher/bld/…/src/malloc.c /Users/royatirek/sqlcipher/bld/…/src/mem0.c /Users/royatirek/sqlcipher/bld/…/src/mem1.c /Users/royatirek/sqlcipher/bld/…/src/mem2.c /Users/royatirek/sqlcipher/bld/…/src/mem3.c /Users/royatirek/sqlcipher/bld/…/src/mem5.c /Users/royatirek/sqlcipher/bld/…/src/memdb.c /Users/royatirek/sqlcipher/bld/…/src/memjournal.c /Users/royatirek/sqlcipher/bld/…/src/msvc.h /Users/royatirek/sqlcipher/bld/…/src/mutex.c /Users/royatirek/sqlcipher/bld/…/src/mutex.h /Users/royatirek/sqlcipher/bld/…/src/mutex_noop.c /Users/royatirek/sqlcipher/bld/…/src/mutex_unix.c /Users/royatirek/sqlcipher/bld/…/src/mutex_w32.c /Users/royatirek/sqlcipher/bld/…/src/notify.c /Users/royatirek/sqlcipher/bld/…/src/os.c /Users/royatirek/sqlcipher/bld/…/src/os.h /Users/royatirek/sqlcipher/bld/…/src/os_common.h /Users/royatirek/sqlcipher/bld/…/src/os_setup.h /Users/royatirek/sqlcipher/bld/…/src/os_unix.c /Users/royatirek/sqlcipher/bld/…/src/os_win.c /Users/royatirek/sqlcipher/bld/…/src/os_win.h /Users/royatirek/sqlcipher/bld/…/src/pager.c /Users/royatirek/sqlcipher/bld/…/src/pager.h /Users/royatirek/sqlcipher/bld/…/src/parse.y /Users/royatirek/sqlcipher/bld/…/src/pcache.c /Users/royatirek/sqlcipher/bld/…/src/pcache.h /Users/royatirek/sqlcipher/bld/…/src/pcache1.c /Users/royatirek/sqlcipher/bld/…/src/pragma.c /Users/royatirek/sqlcipher/bld/…/src/pragma.h /Users/royatirek/sqlcipher/bld/…/src/prepare.c /Users/royatirek/sqlcipher/bld/…/src/printf.c /Users/royatirek/sqlcipher/bld/…/src/random.c /Users/royatirek/sqlcipher/bld/…/src/resolve.c /Users/royatirek/sqlcipher/bld/…/src/rowset.c /Users/royatirek/sqlcipher/bld/…/src/select.c /Users/royatirek/sqlcipher/bld/…/src/status.c /Users/royatirek/sqlcipher/bld/…/src/shell.c.in /Users/royatirek/sqlcipher/bld/…/src/sqlite.h.in /Users/royatirek/sqlcipher/bld/…/src/sqlite3ext.h /Users/royatirek/sqlcipher/bld/…/src/sqliteInt.h /Users/royatirek/sqlcipher/bld/…/src/sqliteLimit.h /Users/royatirek/sqlcipher/bld/…/src/table.c /Users/royatirek/sqlcipher/bld/…/src/tclsqlite.c /Users/royatirek/sqlcipher/bld/…/src/threads.c /Users/royatirek/sqlcipher/bld/…/src/tokenize.c /Users/royatirek/sqlcipher/bld/…/src/treeview.c /Users/royatirek/sqlcipher/bld/…/src/trigger.c /Users/royatirek/sqlcipher/bld/…/src/utf.c /Users/royatirek/sqlcipher/bld/…/src/update.c /Users/royatirek/sqlcipher/bld/…/src/upsert.c /Users/royatirek/sqlcipher/bld/…/src/util.c /Users/royatirek/sqlcipher/bld/…/src/vacuum.c /Users/royatirek/sqlcipher/bld/…/src/vdbe.c /Users/royatirek/sqlcipher/bld/…/src/vdbe.h /Users/royatirek/sqlcipher/bld/…/src/vdbeapi.c /Users/royatirek/sqlcipher/bld/…/src/vdbeaux.c /Users/royatirek/sqlcipher/bld/…/src/vdbeblob.c /Users/royatirek/sqlcipher/bld/…/src/vdbemem.c /Users/royatirek/sqlcipher/bld/…/src/vdbesort.c /Users/royatirek/sqlcipher/bld/…/src/vdbetrace.c /Users/royatirek/sqlcipher/bld/…/src/vdbeInt.h /Users/royatirek/sqlcipher/bld/…/src/vtab.c /Users/royatirek/sqlcipher/bld/…/src/vxworks.h /Users/royatirek/sqlcipher/bld/…/src/wal.c /Users/royatirek/sqlcipher/bld/…/src/wal.h /Users/royatirek/sqlcipher/bld/…/src/walker.c /Users/royatirek/sqlcipher/bld/…/src/where.c /Users/royatirek/sqlcipher/bld/…/src/wherecode.c /Users/royatirek/sqlcipher/bld/…/src/whereexpr.c /Users/royatirek/sqlcipher/bld/…/src/whereInt.h /Users/royatirek/sqlcipher/bld/…/src/window.c /Users/royatirek/sqlcipher/bld/…/ext/fts1/fts1.c /Users/royatirek/sqlcipher/bld/…/ext/fts1/fts1.h /Users/royatirek/sqlcipher/bld/…/ext/fts1/fts1_hash.c /Users/royatirek/sqlcipher/bld/…/ext/fts1/fts1_hash.h /Users/royatirek/sqlcipher/bld/…/ext/fts1/fts1_porter.c /Users/royatirek/sqlcipher/bld/…/ext/fts1/fts1_tokenizer.h /Users/royatirek/sqlcipher/bld/…/ext/fts1/fts1_tokenizer1.c /Users/royatirek/sqlcipher/bld/…/ext/fts2/fts2.c /Users/royatirek/sqlcipher/bld/…/ext/fts2/fts2.h /Users/royatirek/sqlcipher/bld/…/ext/fts2/fts2_hash.c /Users/royatirek/sqlcipher/bld/…/ext/fts2/fts2_hash.h /Users/royatirek/sqlcipher/bld/…/ext/fts2/fts2_icu.c /Users/royatirek/sqlcipher/bld/…/ext/fts2/fts2_porter.c /Users/royatirek/sqlcipher/bld/…/ext/fts2/fts2_tokenizer.h /Users/royatirek/sqlcipher/bld/…/ext/fts2/fts2_tokenizer.c /Users/royatirek/sqlcipher/bld/…/ext/fts2/fts2_tokenizer1.c /Users/royatirek/sqlcipher/bld/…/ext/fts3/fts3.c /Users/royatirek/sqlcipher/bld/…/ext/fts3/fts3.h /Users/royatirek/sqlcipher/bld/…/ext/fts3/fts3Int.h /Users/royatirek/sqlcipher/bld/…/ext/fts3/fts3_aux.c /Users/royatirek/sqlcipher/bld/…/ext/fts3/fts3_expr.c /Users/royatirek/sqlcipher/bld/…/ext/fts3/fts3_hash.c /Users/royatirek/sqlcipher/bld/…/ext/fts3/fts3_hash.h /Users/royatirek/sqlcipher/bld/…/ext/fts3/fts3_icu.c /Users/royatirek/sqlcipher/bld/…/ext/fts3/fts3_porter.c /Users/royatirek/sqlcipher/bld/…/ext/fts3/fts3_snippet.c /Users/royatirek/sqlcipher/bld/…/ext/fts3/fts3_tokenizer.h /Users/royatirek/sqlcipher/bld/…/ext/fts3/fts3_tokenizer.c /Users/royatirek/sqlcipher/bld/…/ext/fts3/fts3_tokenizer1.c /Users/royatirek/sqlcipher/bld/…/ext/fts3/fts3_tokenize_vtab.c /Users/royatirek/sqlcipher/bld/…/ext/fts3/fts3_unicode.c /Users/royatirek/sqlcipher/bld/…/ext/fts3/fts3_unicode2.c /Users/royatirek/sqlcipher/bld/…/ext/fts3/fts3_write.c /Users/royatirek/sqlcipher/bld/…/ext/icu/sqliteicu.h /Users/royatirek/sqlcipher/bld/…/ext/icu/icu.c /Users/royatirek/sqlcipher/bld/…/ext/rtree/rtree.h /Users/royatirek/sqlcipher/bld/…/ext/rtree/rtree.c /Users/royatirek/sqlcipher/bld/…/ext/rtree/geopoly.c /Users/royatirek/sqlcipher/bld/…/ext/session/sqlite3session.c /Users/royatirek/sqlcipher/bld/…/ext/session/sqlite3session.h /Users/royatirek/sqlcipher/bld/…/ext/userauth/userauth.c /Users/royatirek/sqlcipher/bld/…/ext/userauth/sqlite3userauth.h /Users/royatirek/sqlcipher/bld/…/ext/rbu/sqlite3rbu.h /Users/royatirek/sqlcipher/bld/…/ext/rbu/sqlite3rbu.c /Users/royatirek/sqlcipher/bld/…/ext/misc/json1.c /Users/royatirek/sqlcipher/bld/…/ext/misc/stmt.c keywordhash.h opcodes.c opcodes.h parse.c parse.h config.h shell.c sqlite3.h tsrc
rm tsrc/sqlite.h.in tsrc/parse.y
tclsh8.6 /Users/royatirek/sqlcipher/bld/…/tool/vdbe-compress.tcl <tsrc/vdbe.c >vdbe.new
mv vdbe.new tsrc/vdbe.c
cp fts5.c fts5.h tsrc
touch .target_source
tclsh8.6 /Users/royatirek/sqlcipher/bld/…/tool/mksqlite3c.tcl
cp tsrc/sqlite3ext.h .
cp /Users/royatirek/sqlcipher/bld/…/ext/session/sqlite3session.h .
./libtool --mode=compile --tag=CC clang -I/usr/local/opt/openssl/include -DSQLITE_HAS_CODEC -DSQLCIPHER_CRYPTO_CC -DSQLITE_OS_UNIX=1 -I. -I/Users/royatirek/sqlcipher/bld/…/src -I/Users/royatirek/sqlcipher/bld/…/ext/rtree -I/Users/royatirek/sqlcipher/bld/…/ext/icu -I/Users/royatirek/sqlcipher/bld/…/ext/fts3 -I/Users/royatirek/sqlcipher/bld/…/ext/async -I/Users/royatirek/sqlcipher/bld/…/ext/session -I/Users/royatirek/sqlcipher/bld/…/ext/userauth -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite -DNDEBUG -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_HAVE_ZLIB=1 -DSQLITE_TEMP_STORE=2 -c sqlite3.c
libtool: compile: clang -I/usr/local/opt/openssl/include -DSQLITE_HAS_CODEC -DSQLCIPHER_CRYPTO_CC -DSQLITE_OS_UNIX=1 -I. -I/Users/royatirek/sqlcipher/bld/…/src -I/Users/royatirek/sqlcipher/bld/…/ext/rtree -I/Users/royatirek/sqlcipher/bld/…/ext/icu -I/Users/royatirek/sqlcipher/bld/…/ext/fts3 -I/Users/royatirek/sqlcipher/bld/…/ext/async -I/Users/royatirek/sqlcipher/bld/…/ext/session -I/Users/royatirek/sqlcipher/bld/…/ext/userauth -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite -DNDEBUG -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_HAVE_ZLIB=1 -DSQLITE_TEMP_STORE=2 -c sqlite3.c -o sqlite3.o
./libtool --mode=link clang -I/usr/local/opt/openssl/include -DSQLITE_HAS_CODEC -DSQLCIPHER_CRYPTO_CC -DSQLITE_OS_UNIX=1 -I. -I/Users/royatirek/sqlcipher/bld/…/src -I/Users/royatirek/sqlcipher/bld/…/ext/rtree -I/Users/royatirek/sqlcipher/bld/…/ext/icu -I/Users/royatirek/sqlcipher/bld/…/ext/fts3 -I/Users/royatirek/sqlcipher/bld/…/ext/async -I/Users/royatirek/sqlcipher/bld/…/ext/session -I/Users/royatirek/sqlcipher/bld/…/ext/userauth -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite -DNDEBUG -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_HAVE_ZLIB=1 /usr/local/opt/openssl/lib/libcrypto.a -no-undefined -o libsqlcipher.la sqlite3.lo -lz
-rpath “/usr/local/lib” -version-info “8:6:8”

*** Warning: Linking the shared library libsqlcipher.la against the
*** static library /usr/local/opt/openssl/lib/libcrypto.a is not portable!
libtool: link: /Users/royatirek/anaconda3/bin/x86_64-apple-darwin13.4.0-ar cru .libs/libsqlcipher.a /usr/local/opt/openssl/lib/libcrypto.a  sqlite3.o
libtool: link: /Users/royatirek/anaconda3/bin/x86_64-apple-darwin13.4.0-ranlib .libs/libsqlcipher.a
libtool: link: ( cd ".libs" && rm -f "libsqlcipher.la" && ln -s "../libsqlcipher.la" "libsqlcipher.la" )
./libtool --mode=link clang -I/usr/local/opt/openssl/include  -DSQLITE_HAS_CODEC -DSQLCIPHER_CRYPTO_CC -DSQLITE_OS_UNIX=1 -I. -I/Users/royatirek/sqlcipher/bld/../src -I/Users/royatirek/sqlcipher/bld/../ext/rtree -I/Users/royatirek/sqlcipher/bld/../ext/icu -I/Users/royatirek/sqlcipher/bld/../ext/fts3 -I/Users/royatirek/sqlcipher/bld/../ext/async -I/Users/royatirek/sqlcipher/bld/../ext/session -I/Users/royatirek/sqlcipher/bld/../ext/userauth -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite -DNDEBUG  -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_FTS3  -DSQLITE_HAVE_ZLIB=1  /usr/local/opt/openssl/lib/libcrypto.a  -DHAVE_READLINE=0  -DHAVE_EDITLINE=1 -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_EXPLAIN_COMMENTS -DSQLITE_ENABLE_UNKNOWN_SQL_FUNCTION -DSQLITE_ENABLE_STMTVTAB -DSQLITE_ENABLE_DBPAGE_VTAB -DSQLITE_ENABLE_DBSTAT_VTAB -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_DESERIALIZE -DSQLITE_INTROSPECTION_PRAGMAS -o sqlcipher \
		shell.c sqlite3.c \
		-ledit  -lz   -rpath "/usr/local/lib"
libtool: link: clang -I/usr/local/opt/openssl/include -DSQLITE_HAS_CODEC -DSQLCIPHER_CRYPTO_CC -DSQLITE_OS_UNIX=1 -I. -I/Users/royatirek/sqlcipher/bld/../src -I/Users/royatirek/sqlcipher/bld/../ext/rtree -I/Users/royatirek/sqlcipher/bld/../ext/icu -I/Users/royatirek/sqlcipher/bld/../ext/fts3 -I/Users/royatirek/sqlcipher/bld/../ext/async -I/Users/royatirek/sqlcipher/bld/../ext/session -I/Users/royatirek/sqlcipher/bld/../ext/userauth -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite -DNDEBUG -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_HAVE_ZLIB=1 -DHAVE_READLINE=0 -DHAVE_EDITLINE=1 -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_EXPLAIN_COMMENTS -DSQLITE_ENABLE_UNKNOWN_SQL_FUNCTION -DSQLITE_ENABLE_STMTVTAB -DSQLITE_ENABLE_DBPAGE_VTAB -DSQLITE_ENABLE_DBSTAT_VTAB -DSQLITE_ENABLE_OFFSET_SQL_FUNC -DSQLITE_ENABLE_DESERIALIZE -DSQLITE_INTROSPECTION_PRAGMAS -o sqlcipher shell.c sqlite3.c  /usr/local/opt/openssl/lib/libcrypto.a -ledit -lz
Undefined symbols for architecture x86_64:
  "_CFBundleGetBundleWithIdentifier", referenced from:
      _sqlcipher_cc_get_provider_version in sqlite3-0bc8f1.o
  "_CFBundleGetValueForInfoDictionaryKey", referenced from:
      _sqlcipher_cc_get_provider_version in sqlite3-0bc8f1.o
  "_CFStringGetCStringPtr", referenced from:
      _sqlcipher_cc_get_provider_version in sqlite3-0bc8f1.o
  "_SecRandomCopyBytes", referenced from:
      _sqlcipher_cc_random in sqlite3-0bc8f1.o
  "___CFConstantStringClassReference", referenced from:
      CFString in sqlite3-0bc8f1.o
      CFString in sqlite3-0bc8f1.o
  "_kSecRandomDefault", referenced from:
      _sqlcipher_cc_random in sqlite3-0bc8f1.o
ld: symbol(s) not found for architecture x86_64
clang-4.0: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [sqlcipher] Error 1