Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[bug] [JOSS] MacOS Installation Issues #143

Open
HaoZeke opened this issue Jul 31, 2021 · 1 comment · Fixed by #144
Open

[bug] [JOSS] MacOS Installation Issues #143

HaoZeke opened this issue Jul 31, 2021 · 1 comment · Fixed by #144
Labels
bug Something isn't working help wanted Extra attention is needed

Comments

@HaoZeke
Copy link

HaoZeke commented Jul 31, 2021

Description
Part of openjournals/joss-reviews#3298.
The readme instructions fail:

cargo run --release examples/boron_nitride.toml

Causes:

Linking Error
error: linking with `cc` failed: exit code: 1
  |
  = note: "cc" "-m64" "-arch" "x86_64" "-L" "/Users/rohitgoswami/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib" "/Users/rohitgoswami/Git/Github/JOSS/RustBCA/target/release/deps/libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o" "-o" "/Users/rohitgoswami/Git/Github/JOSS/RustBCA/target/release/deps/liblibRustBCA.dylib" "-Wl,-exported_symbols_list,/var/folders/jg/hl79b7sj291_ztvd_26cm4g40000gn/T/rustchFZYoG/list" "-Wl,-dead_strip" "-dynamiclib" "-Wl,-dylib" "-nodefaultlibs" "-L" "/Users/rohitgoswami/Git/Github/JOSS/RustBCA/target/release/deps" "-L" "/Users/rohitgoswami/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib" "/Users/rohitgoswami/.rustup/toolchains/stable-x86_64-apple-darwin/lib/rustlib/x86_64-apple-darwin/lib/libcompiler_builtins-10db70d883838cbc.rlib" "-liconv" "-lSystem" "-lresolv" "-lc" "-lm"
  = note: Undefined symbols for architecture x86_64:
            "_PyErr_GivenExceptionMatches", referenced from:
                pyo3::types::module::PyModule::index::h64bd52c37ba1c695 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyExc_AttributeError", referenced from:
                pyo3::types::module::PyModule::index::h64bd52c37ba1c695 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyModule_GetName", referenced from:
                pyo3::types::function::PyCFunction::internal_new::h39b820cb301451f6 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_Py_InitializeEx", referenced from:
                parking_lot::once::Once::call_once_slow::hbb2eb33ab469899c in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyUnicodeDecodeError_Create", referenced from:
                pyo3::types::function::PyCFunction::internal_new::h39b820cb301451f6 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyGILState_Ensure", referenced from:
                pyo3::gil::GILGuard::acquire::h313e01bd2fd7501d in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyCFunction_NewEx", referenced from:
                pyo3::types::function::PyCFunction::internal_new::h39b820cb301451f6 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyUnicode_AsEncodedString", referenced from:
                pyo3::types::string::PyString::to_string_lossy::hc1a1e053e364b1e8 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyErr_Restore", referenced from:
                _PyInit_pybca in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                libRustBCA::__pyo3_raw_simple_bca_py::h19552f07e31f48ee in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                libRustBCA::__pyo3_raw_simple_bca_list_py::hcb93c0b96c415cae in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::err::PyErr::fetch::h782cc935f4026642 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyBytes_AsString", referenced from:
                pyo3::types::string::PyString::to_string_lossy::hc1a1e053e364b1e8 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyErr_PrintEx", referenced from:
                pyo3::err::PyErr::fetch::h782cc935f4026642 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyFloat_FromDouble", referenced from:
                pyo3::callback::convert::h3f1998a4c0d3c6fd in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyObject_Repr", referenced from:
                _$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$::fmt::h5d19767f6f043980 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                _$LT$pyo3..types..typeobject..PyType$u20$as$u20$core..fmt..Debug$GT$::fmt::hc903da73f1836966 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyTuple_Size", referenced from:
                pyo3::derive_utils::parse_fn_args::h6856090c433c0ad9 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyObject_GetAttr", referenced from:
                _$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$::fmt::hc5f4df03e08fa065 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::types::module::PyModule::index::h64bd52c37ba1c695 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::types::module::PyModule::add_function::h1182a2f03290afec in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyExc_TypeError", referenced from:
                pyo3::panic::PanicException::new_err::h62c4791729ca2601 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::panic::PanicException::new_err::hef04c564e16a55d0 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::exceptions::PyTypeError::new_err::haafc783d740ff60d in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::err::PyErr::normalized::ha378f8f722ac6f8a in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::derive_utils::argument_extraction_error::hff03ef05b65c5bdf in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::types::function::PyCFunction::internal_new::h39b820cb301451f6 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyErr_NewException", referenced from:
                pyo3::err::PyErr::new_type::h0722a1986002f844 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PySequence_Size", referenced from:
                pyo3::types::any::PyAny::extract::h31195731a9c712b2 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyDict_Copy", referenced from:
                pyo3::derive_utils::parse_fn_args::h6856090c433c0ad9 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyDict_DelItem", referenced from:
                pyo3::derive_utils::parse_fn_args::h6856090c433c0ad9 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyGILState_Release", referenced from:
                core::ptr::drop_in_place$LT$pyo3..gil..EnsureGIL$GT$::h3e3ffab326cdbefa in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::panic::PanicException::new_err::h62c4791729ca2601 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::panic::PanicException::new_err::hef04c564e16a55d0 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::exceptions::PyTypeError::new_err::haafc783d740ff60d in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::err::PyErr::normalized::ha378f8f722ac6f8a in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                _$LT$pyo3..err..PyErr$u20$as$u20$core..fmt..Debug$GT$::fmt::h55ceb1ada545775f in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyDict_Size", referenced from:
                pyo3::derive_utils::parse_fn_args::h6856090c433c0ad9 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyObject_Str", referenced from:
                _$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$::fmt::h615704b63f9d5624 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::derive_utils::argument_extraction_error::hff03ef05b65c5bdf in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_Py_IsInitialized", referenced from:
                parking_lot::once::Once::call_once_slow::hbb2eb33ab469899c in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyExc_SystemError", referenced from:
                pyo3::err::PyErr::normalized::ha378f8f722ac6f8a in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyEval_SaveThread", referenced from:
                parking_lot::once::Once::call_once_slow::hbb2eb33ab469899c in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyDict_Next", referenced from:
                pyo3::derive_utils::parse_fn_args::h6856090c433c0ad9 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyObject_GetIter", referenced from:
                pyo3::types::any::PyAny::extract::h31195731a9c712b2 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyErr_Occurred", referenced from:
                pyo3::types::any::PyAny::extract::h31195731a9c712b2 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                libRustBCA::__pyo3_raw_simple_bca_py::h19552f07e31f48ee in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                libRustBCA::__pyo3_raw_simple_bca_list_py::hcb93c0b96c415cae in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyEval_ThreadsInitialized", referenced from:
                parking_lot::once::Once::call_once_slow::hbb2eb33ab469899c in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyModule_Create2", referenced from:
                _PyInit_pybca in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyDict_GetItem", referenced from:
                pyo3::derive_utils::parse_fn_args::h6856090c433c0ad9 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyList_Append", referenced from:
                _PyInit_pybca in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::types::module::PyModule::add_function::h1182a2f03290afec in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyErr_Fetch", referenced from:
                pyo3::err::PyErr::fetch::h782cc935f4026642 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyUnicode_AsUTF8AndSize", referenced from:
                pyo3::err::PyErr::fetch::h782cc935f4026642 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::types::string::PyString::to_string_lossy::hc1a1e053e364b1e8 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                _$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$::fmt::hc5f4df03e08fa065 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::types::module::PyModule::add_function::h1182a2f03290afec in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyObject_SetAttr", referenced from:
                _PyInit_pybca in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::types::module::PyModule::index::h64bd52c37ba1c695 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::types::module::PyModule::add_function::h1182a2f03290afec in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyBytes_Size", referenced from:
                pyo3::types::string::PyString::to_string_lossy::hc1a1e053e364b1e8 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyIter_Next", referenced from:
                pyo3::types::any::PyAny::extract::h31195731a9c712b2 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "__Py_Dealloc", referenced from:
                _PyInit_pybca in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                _$LT$pyo3..gil..GILPool$u20$as$u20$core..ops..drop..Drop$GT$::drop::hbee67efe74ede018 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::gil::ReferencePool::update_counts::heace5938242c0f82 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::gil::register_decref::hf721d52db974320d in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::derive_utils::parse_fn_args::h6856090c433c0ad9 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                _$LT$$RF$T$u20$as$u20$core..fmt..Display$GT$::fmt::hc5f4df03e08fa065 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::types::module::PyModule::index::h64bd52c37ba1c695 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                ...
            "_PyErr_Print", referenced from:
                pyo3::err::panic_after_error::h9e14dc1fc2e89b1d in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyErr_NormalizeException", referenced from:
                pyo3::err::PyErr::normalized::ha378f8f722ac6f8a in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyTuple_New", referenced from:
                core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h88eba948f3580a0c in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::hab4dd6dd0eba8fd8 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyFloat_AsDouble", referenced from:
                pyo3::types::any::PyAny::extract::h31195731a9c712b2 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                libRustBCA::__pyo3_raw_simple_bca_py::h19552f07e31f48ee in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                libRustBCA::__pyo3_raw_simple_bca_list_py::hcb93c0b96c415cae in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyList_SetItem", referenced from:
                pyo3::callback::convert::h3f1998a4c0d3c6fd in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PySequence_Check", referenced from:
                pyo3::types::any::PyAny::extract::h31195731a9c712b2 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyTuple_GetItem", referenced from:
                pyo3::derive_utils::parse_fn_args::h6856090c433c0ad9 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyUnicode_FromStringAndSize", referenced from:
                core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h88eba948f3580a0c in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::hab4dd6dd0eba8fd8 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::hd0bf21ce6eccd88e in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                _PyInit_pybca in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h99e4ff115a1ab4f3 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::derive_utils::parse_fn_args::h6856090c433c0ad9 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h0059d36abecdead4 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                ...
            "_PyTuple_SetItem", referenced from:
                core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h88eba948f3580a0c in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::hab4dd6dd0eba8fd8 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyExc_BaseException", referenced from:
                pyo3::panic::PanicException::new_err::h62c4791729ca2601 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::panic::PanicException::new_err::hef04c564e16a55d0 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::err::PyErr::fetch::h782cc935f4026642 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
            "_PyList_New", referenced from:
                pyo3::callback::convert::h3f1998a4c0d3c6fd in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
                pyo3::types::module::PyModule::index::h64bd52c37ba1c695 in libRustBCA.libRustBCA.azzde3yo-cgu.0.rcgu.o
          ld: symbol(s) not found for architecture x86_64
          clang: error: linker command failed with exit code 1 (use -v to see invocation)


error: aborting due to previous error

error: could not compile `RustBCA`

To learn more, run the command again with --verbose.
warning: build failed, waiting for other jobs to finish...
error: build failed

To Reproduce
Please attach the relevant TOML input file and list the command line arguments used.

Expected behavior
A clear and concise description of what you expected to happen.

Error messages, output files, or figures
Please include error messages, output files or figures that demonstrate the error if applicable.

System (please complete the following information):
OS: MacOS

image

Additional context
Add any other context about the problem here.

Works well enough on Linux systems, so perhaps the readme should be updated to reflect that.

@HaoZeke HaoZeke added the bug Something isn't working label Jul 31, 2021
@drobnyjt
Copy link
Collaborator

drobnyjt commented Aug 3, 2021

I don't have easy access to a Mac, but will start looking into this. It appears to be a problem with PyO3, the crate used to generate the Python module from lib.rs. Since the Python bindings should not be necessary to simply run the examples, I'll see what's necessary to get cargo run to build the binary only.

@drobnyjt drobnyjt mentioned this issue Aug 3, 2021
4 tasks
@drobnyjt drobnyjt reopened this Aug 3, 2021
@drobnyjt drobnyjt added the help wanted Extra attention is needed label Oct 14, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working help wanted Extra attention is needed
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants