Skip to content

Missing symbols in libcomponentize_py_runtime.so #2

@hishamhm

Description

@hishamhm

I followed all build steps in the README and they worked succesfully, apart from cargo test --release failing during build on the first try. The error message suggested me to run rustup component add rust-src --toolchain nightly-x86_64-unknown-linux-gnu. When running this then trying cargo test --release again, then the build succeeded, but tests then failed with unresolved symbols in libcomponentize_py_runtime.so, as shown in the log below:

cargo test --release
   Compiling componentize-py v0.11.0 (https://github.com/bytecodealliance/componentize-py?rev=071a9ba1#071a9ba1)
   Compiling sockets-server v2.0.0 (/home/hisham/work/kong/wasi-sockets-tests/server)
    Finished `release` profile [optimized] target(s) in 1m 12s
     Running unittests src/lib.rs (target/release/deps/sockets_server-774ede4b91e21fd5)

running 16 tests
test tests::python_redis_name ... FAILED
test tests::python_redis ... FAILED
test tests::python_name ... FAILED
test tests::python_ipv4 ... FAILED
test tests::python_ipv6 ... FAILED
test tests::tokio_postgres_name ... FAILED
test tests::tokio_ipv6 ... FAILED
test tests::direct_name ... FAILED
test tests::std_ipv6 ... FAILED
test tests::tokio_postgres ... FAILED
test tests::tokio_ipv4 ... FAILED
test tests::direct_ipv4 ... FAILED
test tests::direct_ipv6 ... FAILED
test tests::std_name ... FAILED
test tests::std_ipv4 ... FAILED
test tests::tokio_name ... FAILED

failures:

---- tests::python_redis_name stdout ----
Error: unresolved symbol(s):
	libcomponentize_py_runtime.so needs _PyUnicode_Ready (function [I32] -> [I32])
	libcomponentize_py_runtime.so needs _CLOCK_PROCESS_CPUTIME_ID (global I32)
	libcomponentize_py_runtime.so needs _CLOCK_THREAD_CPUTIME_ID (global I32)

---- tests::python_redis stdout ----
Error: unresolved symbol(s):
	libcomponentize_py_runtime.so needs _PyUnicode_Ready (function [I32] -> [I32])
	libcomponentize_py_runtime.so needs _CLOCK_PROCESS_CPUTIME_ID (global I32)
	libcomponentize_py_runtime.so needs _CLOCK_THREAD_CPUTIME_ID (global I32)

---- tests::python_name stdout ----
Error: unresolved symbol(s):
	libcomponentize_py_runtime.so needs _PyUnicode_Ready (function [I32] -> [I32])
	libcomponentize_py_runtime.so needs _CLOCK_PROCESS_CPUTIME_ID (global I32)
	libcomponentize_py_runtime.so needs _CLOCK_THREAD_CPUTIME_ID (global I32)

---- tests::python_ipv4 stdout ----
Error: unresolved symbol(s):
	libcomponentize_py_runtime.so needs _PyUnicode_Ready (function [I32] -> [I32])
	libcomponentize_py_runtime.so needs _CLOCK_PROCESS_CPUTIME_ID (global I32)
	libcomponentize_py_runtime.so needs _CLOCK_THREAD_CPUTIME_ID (global I32)

---- tests::python_ipv6 stdout ----
Error: unresolved symbol(s):
	libcomponentize_py_runtime.so needs _PyUnicode_Ready (function [I32] -> [I32])
	libcomponentize_py_runtime.so needs _CLOCK_PROCESS_CPUTIME_ID (global I32)
	libcomponentize_py_runtime.so needs _CLOCK_THREAD_CPUTIME_ID (global I32)

---- tests::tokio_postgres_name stdout ----
Error: No such file or directory (os error 2)

---- tests::tokio_ipv6 stdout ----
Error: No such file or directory (os error 2)

---- tests::direct_name stdout ----
Error: No such file or directory (os error 2)

---- tests::std_ipv6 stdout ----
Error: No such file or directory (os error 2)

---- tests::tokio_postgres stdout ----
Error: No such file or directory (os error 2)

---- tests::tokio_ipv4 stdout ----
Error: No such file or directory (os error 2)

---- tests::direct_ipv4 stdout ----
Error: No such file or directory (os error 2)

---- tests::direct_ipv6 stdout ----
Error: No such file or directory (os error 2)

---- tests::std_name stdout ----
Error: No such file or directory (os error 2)

---- tests::std_ipv4 stdout ----
Error: No such file or directory (os error 2)

---- tests::tokio_name stdout ----
Error: No such file or directory (os error 2)


failures:
    tests::direct_ipv4
    tests::direct_ipv6
    tests::direct_name
    tests::python_ipv4
    tests::python_ipv6
    tests::python_name
    tests::python_redis
    tests::python_redis_name
    tests::std_ipv4
    tests::std_ipv6
    tests::std_name
    tests::tokio_ipv4
    tests::tokio_ipv6
    tests::tokio_name
    tests::tokio_postgres
    tests::tokio_postgres_name

test result: FAILED. 0 passed; 16 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.94s

error: test failed, to rerun pass `--lib`

Hope that helps diagnosing! Happy to provide any more info.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions