tursodatabase / libsql

libSQL is a fork of SQLite that is both Open Source, and Open Contributions.
https://turso.tech/libsql
MIT License
9.55k stars 252 forks source link

ld error: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIE #558

Closed tjyang closed 10 months ago

tjyang commented 11 months ago

[tokio::main]

async fn main() { let db = Database::open_in_memory().unwrap(); let conn = db.connect().unwrap(); conn.execute("CREATE TABLE IF NOT EXISTS users (email TEXT)", ()) .await .unwrap(); conn.execute("INSERT INTO users (email) VALUES ('alice@example.org')", ()) .await .unwrap(); } [me@rocky9t01a hello]$

- Cargo.toml

[me@rocky9t01a hello]$ cat Cargo.toml [package] name = "hello" version = "0.1.0" edition = "2021"

See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies] anyhow = "1.0.75"

libsql = "0.1.11"

libsql = { git = "https://github.com/tursodatabase/libsql" } tokio = { version = "1.33.0", features = ["rt","rt-multi-thread","macros"] } [me@rocky9t01a hello]$

- error

[me@rocky9t01a hello]$ cargo build Compiling hello v0.1.0 (/home/me/hello) error: linking with cc failed: exit status: 1 | = note: LC_ALL="C" PATH="/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/bin:/home/me/.cargo/bin:/home/me/.local/bin:/home/me/bin:/usr/share/Modules/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin" VSLANG="1033" "cc" "-m64" "/tmp/rustcKBPqUC/symbols.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.10vkn6pd104hdmk5.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.154mxg7lp4ngju76.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.1ijthfbj3qnf4lro.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.1u7ten3m6vrt72cv.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.1umbopeuq8ptn4vy.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.1w5qii2ybr70otiy.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.23t7dgrncb71pyk2.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.2yg3irnb9rebkk6p.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.35wf802hv91vl36j.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.37e899svvdw2rmt1.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.3aro9x6nmj7oeoca.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.3b14b9qdh0rbduws.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.3bi2lv2nazocivd.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.3t196m9s0ux7701w.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.3x8x1me693tl5dmm.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.3z3zpy415h9rv6wx.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.49iglx32iligbln3.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.4eogziog64q9y3mt.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.4eovv21e5qzi1bev.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.4fzt8auirwko9pdv.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.4lknl2idp3fsf8dh.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.4lwejl911yef7997.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.4m294glon2xlvey0.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.4n9wvw7uhccbsl03.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.4wr8j0qrhezcciiy.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.4x4s4quriazpzehk.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.576yxr3ambj5nsip.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.5f26nhxz2yff49i.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.5flv5rt6jlze5b77.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.6h2qjrug89aaehe.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.ce1w0g8ajccixn7.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.vpn6mvsg8xxwje9.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.wa30pzabq2xjhji.rcgu.o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59.1ypu31q3uscdgqjv.rcgu.o" "-Wl,--as-needed" "-L" "/home/me/hello/target/debug/deps" "-L" "/home/me/hello/target/debug/build/ring-609fd26e48f08879/out" "-L" "/home/me/hello/target/debug/build/libsql-sys-3df39b8034b1d18a/out" "-L" "/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-Wl,-Bstatic" "/home/me/hello/target/debug/deps/liblibsql-96bfbdf811f6604d.rlib" "/home/me/hello/target/debug/deps/libbincode-0a15955bbbaf72d6.rlib" "/home/me/hello/target/debug/deps/libfutures-0e1e3d7e20a0ca7e.rlib" "/home/me/hello/target/debug/deps/libfutures_executor-9784e17b85f2937a.rlib" "/home/me/hello/target/debug/deps/libsqlite3_parser-796083f33fd4f8ea.rlib" "/home/me/hello/target/debug/deps/libphf-9cdfa6221ad02669.rlib" "/home/me/hello/target/debug/deps/libphf_shared-a3dd6b81c7649822.rlib" "/home/me/hello/target/debug/deps/libsiphasher-b38a2cf2bc722971.rlib" "/home/me/hello/target/debug/deps/libindexmap-a38ecd90b7a5c90a.rlib" "/home/me/hello/target/debug/deps/libequivalent-a21f04681ac75739.rlib" "/home/me/hello/target/debug/deps/libuncased-b44e2c5c33295a7c.rlib" "/home/me/hello/target/debug/deps/libfallible_iterator-b127ffb3b3ba68ec.rlib" "/home/me/hello/target/debug/deps/libtonic_web-e23d3a898a747655.rlib" "/home/me/hello/target/debug/deps/libtower_http-3c5f0952a17242eb.rlib" "/home/me/hello/target/debug/deps/libhyper_rustls-35cac63e51dcf221.rlib" "/home/me/hello/target/debug/deps/libserde_json-39e59d75b4d89c5a.rlib" "/home/me/hello/target/debug/deps/libryu-1b8c11fa54e87e65.rlib" "/home/me/hello/target/debug/deps/liblibsql_replication-456902c655fb73c0.rlib" "/home/me/hello/target/debug/deps/libtonic-806f6bbec1a1bae0.rlib" "/home/me/hello/target/debug/deps/libwebpki_roots-a4da9cfb558ab184.rlib" "/home/me/hello/target/debug/deps/librustls_native_certs-35ffad0d215efaba.rlib" "/home/me/hello/target/debug/deps/librustls_pemfile-84a5e6f68a6901b8.rlib" "/home/me/hello/target/debug/deps/libopenssl_probe-616ce4d2798b29ed.rlib" "/home/me/hello/target/debug/deps/libhyper_timeout-fcdfb676e2cd6d64.rlib" "/home/me/hello/target/debug/deps/libtokio_io_timeout-ebe8c37dec38d619.rlib" "/home/me/hello/target/debug/deps/libaxum-a15c4b46d227322e.rlib" "/home/me/hello/target/debug/deps/libpercent_encoding-6835d1725645ad15.rlib" "/home/me/hello/target/debug/deps/libmatchit-8e5fd3a1fd7f8b53.rlib" "/home/me/hello/target/debug/deps/libbitflags-55ef495d32b18366.rlib" "/home/me/hello/target/debug/deps/libsync_wrapper-68938fe373abe395.rlib" "/home/me/hello/target/debug/deps/libaxum_core-592cf337b783f2e8.rlib" "/home/me/hello/target/debug/deps/libmime-91e2ac1991691a39.rlib" "/home/me/hello/target/debug/deps/libtokio_rustls-4004c10e6d3db711.rlib" "/home/me/hello/target/debug/deps/librustls-3610a73a9b84ab06.rlib" "/home/me/hello/target/debug/deps/libsct-5e2521ac29513539.rlib" "/home/me/hello/target/debug/deps/libwebpki-b3e78b02fb88b0dc.rlib" "/home/me/hello/target/debug/deps/libring-84667a9f922b1e61.rlib" "/home/me/hello/target/debug/deps/libspin-b42dc91e5d264772.rlib" "/home/me/hello/target/debug/deps/libuntrusted-5fd25c5535c45e41.rlib" "/home/me/hello/target/debug/deps/libhyper-c3470886b7253b33.rlib" "/home/me/hello/target/debug/deps/libwant-f427ec2f7a418b08.rlib" "/home/me/hello/target/debug/deps/libtry_lock-cc6b502c2ab95669.rlib" "/home/me/hello/target/debug/deps/libsocket2-520b69d921733554.rlib" "/home/me/hello/target/debug/deps/libhttparse-1f0d32fb3a9db302.rlib" "/home/me/hello/target/debug/deps/libh2-b54e8549635a3f7e.rlib" "/home/me/hello/target/debug/deps/libhttpdate-588217cf663dd1fa.rlib" "/home/me/hello/target/debug/deps/libtower-2400d7547d88a1e3.rlib" "/home/me/hello/target/debug/deps/libindexmap-38cf2de585bec8a5.rlib" "/home/me/hello/target/debug/deps/libhashbrown-408c3396876b0f1d.rlib" "/home/me/hello/target/debug/deps/librand-d675607ad172f5f5.rlib" "/home/me/hello/target/debug/deps/librand_chacha-93edeae698a53601.rlib" "/home/me/hello/target/debug/deps/libppv_lite86-9f7b2cf79ffaa1ac.rlib" "/home/me/hello/target/debug/deps/librand_core-448a660a34e9768f.rlib" "/home/me/hello/target/debug/deps/libfutures_util-5aaf048e2ef00a1b.rlib" "/home/me/hello/target/debug/deps/libmemchr-bf4cc2fac4c5f7ab.rlib" "/home/me/hello/target/debug/deps/libfutures_io-682a6048cbde5efb.rlib" "/home/me/hello/target/debug/deps/libslab-d5dd19d7b786f731.rlib" "/home/me/hello/target/debug/deps/libfutures_channel-04342d31a02c3195.rlib" "/home/me/hello/target/debug/deps/libfutures_task-e09c9eeff3298673.rlib" "/home/me/hello/target/debug/deps/libpin_utils-c2f8c3e8b8c28b8a.rlib" "/home/me/hello/target/debug/deps/libtower_layer-80b5ef3969af1ef0.rlib" "/home/me/hello/target/debug/deps/libbase64-e3fc03b187b1c5e5.rlib" "/home/me/hello/target/debug/deps/libpin_project-5035c61a257d692b.rlib" "/home/me/hello/target/debug/deps/libtower_service-d6b7116ad82b0f83.rlib" "/home/me/hello/target/debug/deps/libhttp_body-97e210f385b9af40.rlib" "/home/me/hello/target/debug/deps/libhttp-70d0a780ad8951d2.rlib" "/home/me/hello/target/debug/deps/libitoa-e3e7cf5f838198a9.rlib" "/home/me/hello/target/debug/deps/libfnv-eabbba41d4112d22.rlib" "/home/me/hello/target/debug/deps/libasync_stream-fccd434efb03532d.rlib" "/home/me/hello/target/debug/deps/libprost-db55990cc3bf4f86.rlib" "/home/me/hello/target/debug/deps/libthiserror-88c0e7ef58ab6d3e.rlib" "/home/me/hello/target/debug/deps/libtokio_util-504960a762b4fc41.rlib" "/home/me/hello/target/debug/deps/libfutures_sink-0d13491c09794352.rlib" "/home/me/hello/target/debug/deps/libtokio_stream-c54d504f1d7d9168.rlib" "/home/me/hello/target/debug/deps/libfutures_core-f8028b4ba7f259e3.rlib" "/home/me/hello/target/debug/deps/libuuid-627ba7483a806262.rlib" "/home/me/hello/target/debug/deps/libgetrandom-c98e777d67f9c500.rlib" "/home/me/hello/target/debug/deps/libtokio-dbe27d5c9e927fc2.rlib" "/home/me/hello/target/debug/deps/libsignal_hook_registry-05e86eaf819369c0.rlib" "/home/me/hello/target/debug/deps/libnum_cpus-6838e10a410edf5b.rlib" "/home/me/hello/target/debug/deps/libsocket2-930beca051fb5781.rlib" "/home/me/hello/target/debug/deps/libmio-51fcf99e532d8f2e.rlib" "/home/me/hello/target/debug/deps/libsqld_libsql_bindings-ada2fcbeac1dec22.rlib" "/home/me/hello/target/debug/deps/libanyhow-f96497119bad6f50.rlib" "/home/me/hello/target/debug/deps/librusqlite-80895ba24447f018.rlib" "/home/me/hello/target/debug/deps/libbitflags-8872d6fbf567c2cf.rlib" "/home/me/hello/target/debug/deps/libfallible_streaming_iterator-d2c6c167561bad64.rlib" "/home/me/hello/target/debug/deps/libfallible_iterator-f2e8ae777e7405bd.rlib" "/home/me/hello/target/debug/deps/libhashlink-1b8e5244862705eb.rlib" "/home/me/hello/target/debug/deps/libhashbrown-32002bb2b09cbaed.rlib" "/home/me/hello/target/debug/deps/libahash-b0c8f57fe34bdc04.rlib" "/home/me/hello/target/debug/deps/libzerocopy-1531d1d8fb6f67ca.rlib" "/home/me/hello/target/debug/deps/liballocator_api2-2a0d94b09e16dc7a.rlib" "/home/me/hello/target/debug/deps/liblibsql_sys-0a6a6dbfa251bda2.rlib" "/home/me/hello/target/debug/deps/libtracing-4fa89ba5511aed91.rlib" "/home/me/hello/target/debug/deps/liblog-6f1659940e5e3d45.rlib" "/home/me/hello/target/debug/deps/libpin_project_lite-1f6d7e12936aa11d.rlib" "/home/me/hello/target/debug/deps/libtracing_core-3a171c74b8836d82.rlib" "/home/me/hello/target/debug/deps/libonce_cell-5cae6bba90bb98f1.rlib" "/home/me/hello/target/debug/deps/libparking_lot-084bf4b23243530e.rlib" "/home/me/hello/target/debug/deps/libparking_lot_core-8c6e8ab1f7fcf22c.rlib" "/home/me/hello/target/debug/deps/liblibc-4004770991d07265.rlib" "/home/me/hello/target/debug/deps/libcfg_if-292db5e7ed008e20.rlib" "/home/me/hello/target/debug/deps/libsmallvec-f27fac403ad80cf0.rlib" "/home/me/hello/target/debug/deps/liblock_api-e690e9bcb53f5417.rlib" "/home/me/hello/target/debug/deps/libscopeguard-bec68a32e9cebeeb.rlib" "/home/me/hello/target/debug/deps/libbytes-eba8c34d73b409df.rlib" "/home/me/hello/target/debug/deps/libserde-3d2b3858272a1a4f.rlib" "/home/me/hello/target/debug/deps/libbytemuck-32705180277cfa3a.rlib" "/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-6498d8891e016dca.rlib" "/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-3debdee1a9058d84.rlib" "/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libobject-8339c5bd5cbc92bf.rlib" "/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libmemchr-160ebcebb54c11ba.rlib" "/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libaddr2line-95c75789f1b65e37.rlib" "/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgimli-7e8094f2d6258832.rlib" "/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-bac9783ef1b45db0.rlib" "/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd_detect-a1cd87df2f2d8e76.rlib" "/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-7fd06d468d7dba16.rlib" "/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-5ac19487656e05bf.rlib" "/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libminiz_oxide-c7c35d32cf825c11.rlib" "/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libadler-c523f1571362e70b.rlib" "/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-85f17c92b770a911.rlib" "/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-598d3ba148dadcea.rlib" "/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-a58ec2dab545caa4.rlib" "/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-f9dda8cca149f0fc.rlib" "/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-7ba4c315dd7a3503.rlib" "/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-5ac2993e19124966.rlib" "/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-df2fb7f50dec519a.rlib" "-Wl,-Bdynamic" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/home/me/hello/target/debug/deps/mem-f95bde5b3ecf9d59" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs" = note: /usr/bin/ld: /home/me/hello/target/debug/deps/liblibsql_sys-0a6a6dbfa251bda2.rlib(sqlite3.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIE collect2: error: ld returned 1 exit status

error: could not compile hello (bin "mem") due to previous error [me@rocky9t01a hello]$

LucioFranco commented 11 months ago

Hi! I want to say this is because you have clang installed instead of gcc. I am not sure why the flag is not passed to clang but I got it working with gcc locally.

tjyang commented 11 months ago

@LucioFranco , Thanks for the reply. for now I will try to learn/test on Ubuntu 22 OS.

me@u22t01:~/hello$ pwd
/home/me/hello
me@u22t01:~/hello$ cargo build
<snipped>
  Compiling hyper-rustls v0.24.2
   Compiling tonic v0.10.2
   Compiling tonic-web v0.10.2
   Compiling libsql_replication v0.0.5
   Compiling rusqlite v0.29.0 (https://github.com/tursodatabase/libsql#9323ec11)
   Compiling sqld-libsql-bindings v0.1.0 (https://github.com/tursodatabase/libsql#9323ec11)
   Compiling libsql-replication v0.1.0 (https://github.com/tursodatabase/libsql#9323ec11)
   Compiling libsql v0.1.11 (https://github.com/tursodatabase/libsql#9323ec11)
   Compiling hello v0.1.0 (/home/me/hello)
    Finished dev [unoptimized + debuginfo] target(s) in 4m 54s
me@u22t01:~/hello$
LucioFranco commented 11 months ago

@tiyang interesting, if you could maybe clone this repo and cd into libsql-sqlite3 and run ./configure and send me that output. Then you can try make as well to see if it compiles. The output of configure should tell us what compiler its picking up.

tjyang commented 11 months ago

@LucioFranco , libsql-sqlite3 compiled ok after "make".

[me@rocky9t01a libsql-sqlite3]$ git log -1; pwd && date && ./configure && make commit 9323ec11fb26b1cd4edc4585c2537bf5cdb47992 (HEAD -> main, origin/main, origin/HEAD) Merge: 983871cfd 7891140b5 Author: Piotr Sarna Date: Thu Nov 2 09:11:21 2023 +0000 Merge pull request #550 from DaBigBlob/main make http api v0 docs consistent with code in libsql-server/src/http/user/mod.rs:339 (impl UserApi, configure) /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3 Fri Nov 3 04:49:19 AM CDT 2023 checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu 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 the compiler supports GNU C... yes checking whether gcc accepts -g... yes checking for gcc option to enable C11 features... none needed checking for a sed that does not truncate output... /usr/bin/sed checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E 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 for /usr/bin/ld option to reload object files... -r checking for objdump... objdump checking how to recognize dependent libraries... pass_all checking for ar... ar checking for strip... strip checking for ranlib... ranlib checking command to parse /usr/bin/nm -B output from gcc object... ok checking for stdio.h... yes checking for stdlib.h... yes checking for string.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for strings.h... yes checking for sys/stat.h... yes checking for sys/types.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... no checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes checking whether -lc should be explicitly linked in... no checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes checking for a BSD-compatible install... /usr/bin/install -c checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... no checking for int8_t... yes checking for int16_t... yes checking for int32_t... yes checking for int64_t... yes checking for intptr_t... yes checking for uint8_t... yes checking for uint16_t... yes checking for uint32_t... yes checking for uint64_t... yes checking for uintptr_t... yes checking for sys/types.h... (cached) yes checking for stdlib.h... (cached) yes checking for stdint.h... (cached) yes checking for inttypes.h... (cached) yes checking for malloc.h... yes checking for fdatasync... yes checking for gmtime_r... yes checking for isnan... yes checking for localtime_r... yes checking for localtime_s... no checking for malloc_usable_size... yes checking for strchrnul... yes checking for usleep... yes checking for utime... yes checking for pread... yes checking for pread64... yes checking for pwrite... yes checking for pwrite64... yes checking for tclsh8.7... no checking for tclsh8.6... tclsh8.6 configure: Version set to 3.43 configure: Release set to 3.43.0 checking for WASI SDK directory... no checking whether to support threadsafe operation... yes checking for library containing pthread_create... none required checking for library containing pthread_mutexattr_init... none required checking whether to support shared library linked as release mode or not... no checking whether to use an in-ram database for temporary tables... no checking if executables have the .exe suffix... unknown checking for Tcl configuration... configure: WARNING: Can't find Tcl configuration definitions configure: WARNING: *** Without Tcl the regression tests cannot be executed *** configure: WARNING: *** Consider using --with-tcl=... to define location of Tcl *** checking for library containing readline... no checking for library containing tgetent... -lncurses checking for readline in -lreadline... yes checking for readline.h... no checking for /usr/include/readline.h... no checking for /usr/include/readline/readline.h... yes checking for library containing fdatasync... none required checking build type... release checking for zlib.h... yes checking for library containing deflate... -lz checking for library containing dlopen... none required checking whether to support math functions... yes checking for library containing ceil... -lm checking whether to support JSON functions... yes checking whether to support WebAssembly integration... no checking whether to support MEMSYS5... no checking whether to support MEMSYS3... no checking whether to support FTS3... no checking whether to support FTS4... no checking whether to support FTS5... no checking whether to support LIMIT on UPDATE and DELETE statements... no checking whether to support GEOPOLY... no checking whether to support RTREE... no checking whether to support SESSION... no configure: creating ./config.status config.status: creating Makefile config.status: creating sqlite3.pc config.status: creating libsql.pc config.status: creating sqlite_cfg.h config.status: sqlite_cfg.h is unchanged config.status: executing libtool commands gcc -g -O2 -o mksourceid /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/tool/mksourceid.c tclsh8.6 /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/tool/mksqlite3h.tcl /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3 >sqlite3.h gcc -g -O2 -o mkkeywordhash -DSQLITE_ENABLE_MATH_FUNCTIONS /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/tool/mkkeywordhash.c ./mkkeywordhash >keywordhash.h gcc -g -O2 -o lemon /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/tool/lemon.c cp /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/tool/lempar.c . cp /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/parse.y . ./lemon -DSQLITE_ENABLE_MATH_FUNCTIONS -S parse.y cat parse.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/vdbe.c | tclsh8.6 /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/tool/mkopcodeh.tcl >opcodes.h tclsh8.6 /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/tool/mkopcodec.tcl opcodes.h >opcodes.c tclsh8.6 /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/tool/mkshellc.tcl >shell.c cp /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts5/fts5parse.y . rm -f fts5parse.h ./lemon -S fts5parse.y tclsh8.6 /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts5/tool/mkfts5c.tcl cp /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts5/fts5.h . rm -rf tsrc mkdir tsrc cp -f /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/alter.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/analyze.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/attach.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/auth.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/backup.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/bitvec.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/btmutex.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/btree.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/btree.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/btreeInt.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/build.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/callback.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/complete.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/ctime.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/date.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/dbpage.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/dbstat.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/delete.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/expr.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/fault.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/fkey.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/func.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/global.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/hash.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/hash.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/hwtime.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/insert.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/json.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/legacy.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/loadext.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/main.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/malloc.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/mem0.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/mem1.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/mem2.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/mem3.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/mem5.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/memdb.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/memjournal.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/msvc.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/mutex.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/mutex.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/mutex_noop.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/mutex_unix.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/mutex_w32.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/notify.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/os.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/os.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/os_common.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/os_setup.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/os_kv.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/os_unix.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/os_win.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/os_win.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/page_header.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/pager.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/pager.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/parse.y /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/pcache.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/pcache.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/pcache1.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/pragma.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/pragma.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/prepare.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/printf.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/random.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/resolve.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/rowset.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/select.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/status.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/shell.c.in /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/sqlite.h.in /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/sqlite3ext.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/sqliteInt.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/sqliteLimit.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/table.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/tclsqlite.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/threads.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/tokenize.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/treeview.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/trigger.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/utf.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/update.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/upsert.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/util.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/vacuum.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/vdbe.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/vdbe.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/vdbeapi.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/vdbeaux.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/vdbeblob.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/vdbemem.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/vdbesort.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/vdbetrace.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/vdbevtab.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/vdbeInt.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/vtab.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/vxworks.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/wal.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/wal.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/walker.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/where.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/wherecode.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/whereexpr.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/whereInt.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src/window.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3/fts3.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3/fts3.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3/fts3Int.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3/fts3_aux.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3/fts3_expr.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3/fts3_hash.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3/fts3_hash.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3/fts3_icu.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3/fts3_porter.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3/fts3_snippet.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3/fts3_tokenizer.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3/fts3_tokenizer.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3/fts3_tokenizer1.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3/fts3_tokenize_vtab.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3/fts3_unicode.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3/fts3_unicode2.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3/fts3_write.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/icu/sqliteicu.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/icu/icu.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/rtree/rtree.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/rtree/rtree.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/rtree/geopoly.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/session/sqlite3session.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/session/sqlite3session.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/userauth/userauth.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/userauth/sqlite3userauth.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/rbu/sqlite3rbu.h /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/rbu/sqlite3rbu.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/misc/stmt.c /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/udf/wasmedge_bindings.c keywordhash.h opcodes.c opcodes.h parse.c parse.h sqlite_cfg.h shell.c sqlite3.h tsrc rm tsrc/sqlite.h.in tsrc/parse.y tclsh8.6 /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/tool/vdbe-compress.tcl vdbe.new mv vdbe.new tsrc/vdbe.c cp fts5.c fts5.h tsrc touch .target_source gcc -g -O2 -o src-verify /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/tool/src-verify.c tclsh8.6 /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/tool/mksqlite3c.tcl --linemacros=0 cp tsrc/sqlite3ext.h . cp /home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/session/sqlite3session.h . ./libtool --mode=compile --tag=CC gcc -g -O2 -DSQLITE_OS_UNIX=1 -I. -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/rtree -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/icu -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3 -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/async -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/session -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/userauth -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite -DNDEBUG -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_HAVE_ZLIB=1 -DSQLITE_TEMP_STORE=1 -c sqlite3.c libtool: compile: gcc -g -O2 -DSQLITE_OS_UNIX=1 -I. -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/rtree -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/icu -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3 -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/async -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/session -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/userauth -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite -DNDEBUG -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_HAVE_ZLIB=1 -DSQLITE_TEMP_STORE=1 -c sqlite3.c -fPIC -DPIC -o .libs/sqlite3.o libtool: compile: gcc -g -O2 -DSQLITE_OS_UNIX=1 -I. -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/rtree -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/icu -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3 -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/async -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/session -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/userauth -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite -DNDEBUG -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_HAVE_ZLIB=1 -DSQLITE_TEMP_STORE=1 -c sqlite3.c -o sqlite3.o >/dev/null 2>&1 ./libtool --mode=link gcc -g -O2 -DSQLITE_OS_UNIX=1 -I. -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/rtree -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/icu -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3 -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/async -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/session -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/userauth -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite -DNDEBUG -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_HAVE_ZLIB=1 -no-undefined -o libsqlite3.la sqlite3.lo -lm -lz \ -rpath "/usr/local/lib" -version-info "8:6:8" libtool: link: gcc -shared .libs/sqlite3.o -lm -lz -Wl,-soname -Wl,libsqlite3.so.0 -o .libs/libsqlite3.so.0.8.6 libtool: link: (cd ".libs" && rm -f "libsqlite3.so.0" && ln -s "libsqlite3.so.0.8.6" "libsqlite3.so.0") libtool: link: (cd ".libs" && rm -f "libsqlite3.so" && ln -s "libsqlite3.so.0.8.6" "libsqlite3.so") libtool: link: ar cru .libs/libsqlite3.a sqlite3.o libtool: link: ranlib .libs/libsqlite3.a libtool: link: ( cd ".libs" && rm -f "libsqlite3.la" && ln -s "../libsqlite3.la" "libsqlite3.la" ) ./libtool --mode=link gcc -g -O2 -DSQLITE_OS_UNIX=1 -I. -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/rtree -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/icu -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3 -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/async -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/session -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/userauth -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite -DNDEBUG -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_HAVE_ZLIB=1 -no-undefined -o liblibsql.la sqlite3.lo -lm -lz \ -rpath "/usr/local/lib" -version-info "8:6:8" libtool: link: gcc -shared .libs/sqlite3.o -lm -lz -Wl,-soname -Wl,liblibsql.so.0 -o .libs/liblibsql.so.0.8.6 libtool: link: (cd ".libs" && rm -f "liblibsql.so.0" && ln -s "liblibsql.so.0.8.6" "liblibsql.so.0") libtool: link: (cd ".libs" && rm -f "liblibsql.so" && ln -s "liblibsql.so.0.8.6" "liblibsql.so") libtool: link: ar cru .libs/liblibsql.a sqlite3.o libtool: link: ranlib .libs/liblibsql.a libtool: link: ( cd ".libs" && rm -f "liblibsql.la" && ln -s "../liblibsql.la" "liblibsql.la" ) ./libtool --mode=link gcc -g -O2 -DSQLITE_OS_UNIX=1 -I. -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/rtree -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/icu -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3 -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/async -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/session -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/userauth -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite -DNDEBUG -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_HAVE_ZLIB=1 -DHAVE_READLINE=1 -I/usr/include/readline -DHAVE_EDITLINE=0 -DSQLITE_DQS=0 -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_BYTECODE_VTAB -DSQLITE_ENABLE_OFFSET_SQL_FUNC -o sqlite3 \ shell.c sqlite3.c \ -lreadline -lncurses -lm -lz -rpath "/usr/local/lib" libtool: link: gcc -g -O2 -DSQLITE_OS_UNIX=1 -I. -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/src -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/rtree -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/icu -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/fts3 -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/async -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/session -I/home/me/github/learn-tursodatabase/libsql/libsql-sqlite3/ext/userauth -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite -DNDEBUG -DSQLITE_THREADSAFE=1 -DSQLITE_ENABLE_MATH_FUNCTIONS -DSQLITE_HAVE_ZLIB=1 -DHAVE_READLINE=1 -I/usr/include/readline -DHAVE_EDITLINE=0 -DSQLITE_DQS=0 -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_BYTECODE_VTAB -DSQLITE_ENABLE_OFFSET_SQL_FUNC -o sqlite3 shell.c sqlite3.c -lreadline -lncurses -lm -lz -Wl,-rpath -Wl,/usr/local/lib cp sqlite3 libsql [me@rocky9t01a libsql-sqlite3]$
LucioFranco commented 11 months ago

Ok so it works with make but when you run cargo build it fails on the same machine?

tjyang commented 11 months ago

Ok so it works with make but when you run cargo build it fails on the same machine?

Yes. on same machine.

tjyang commented 10 months ago

@LucioFranco , mem.rs test program now works on RL9. Not sure exactly what change to fix the linker issue

[me@rocky9t01a hello]$ cargo install --path . -f
  Installing hello v0.1.0 (/home/me/hello)
    Updating crates.io index
    Updating git repository `https://github.com/tursodatabase/libsql`
   Compiling hello v0.1.0 (/home/me/hello)
    Finished release [optimized] target(s) in 3.75s
   Replacing /home/me/.cargo/bin/mem
    Replaced package `hello v0.1.0 (/home/me/hello)` with `hello v0.1.0 (/home/me/hello)` (executable `mem`)
[me@rocky9t01a hello]$ /home/me/.cargo/bin/mem
Ok(Text("alice@example.org"))
[me@rocky9t01a hello]$ cat src/bin/mem.rs
use libsql::Database;

#[tokio::main]
async fn main() {
    let db = Database::open_in_memory().unwrap();
    let conn = db.connect().unwrap();
    conn.execute("CREATE TABLE IF NOT EXISTS users (email TEXT)", ())
        .await
        .unwrap();
    conn.execute("INSERT INTO users (email) VALUES ('alice@example.org')", ())
        .await
        .unwrap();

    let mut rows_users_table = conn.query("SELECT * FROM users", ()).await.unwrap();
    while let Ok(Some(row)) = rows_users_table.next() {
        println!(
            "{:?}",row.get_value(0)
        );
    }

}
[me@rocky9t01a hello]$ cat Cargo.toml
[package]
name = "hello"
version = "0.1.0"
edition = "2021"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
anyhow = "1.0.75"
#libsql = { version = "0.1.11" }
libsql = { git = "https://github.com/tursodatabase/libsql" }
libsql_replication = "0.0.5"
tokio = { version = "1.33.0", features = ["rt","rt-multi-thread","macros"] }
[me@rocky9t01a hello]$ cargo -V;cat /etc/redhat-release
cargo 1.73.0 (9c4383fb5 2023-08-26)
Rocky Linux release 9.2 (Blue Onyx)
[me@rocky9t01a hello]$
LucioFranco commented 10 months ago

@tjyang sounds like software being software :) glad you got it working

tjyang commented 10 months ago

@LucioFranco , thanks, don't ask me how it was fixed though.