-
Notifications
You must be signed in to change notification settings - Fork 233
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
Error: Failed to extract data from archive member #2285
Comments
That sounds a little like a mismatch between the bytes written by that item vs the bytes we think we should read. Can you share the definition of |
Using const UNIFFI_META_CONST_MATRIX_SDK_FFI_INTERFACE_ENCRYPTION: ::uniffi::MetadataBuffer = ::uniffi::MetadataBuffer::from_code(
::uniffi::metadata::codes::INTERFACE,
)
.concat_str("matrix_sdk_ffi")
.concat_str("Encryption")
.concat_long_str("");
#[no_mangle]
#[doc(hidden)]
pub static UNIFFI_META_MATRIX_SDK_FFI_INTERFACE_ENCRYPTION: [u8; UNIFFI_META_CONST_MATRIX_SDK_FFI_INTERFACE_ENCRYPTION
.size] = UNIFFI_META_CONST_MATRIX_SDK_FFI_INTERFACE_ENCRYPTION.into_array(); |
Yeah, the reading/writing of the metadata works just fine in debug, and with other architectures. I would guess (and I am guessing here), is that there is some subtlety in the @bendk pointed out a fix for a similar looking problem in MachO builds. |
Symbol table entries store a 16-bit index for their section header. If the index overflows 16-bits then it's stored in a separate section instead. References: - https://refspecs.linuxbase.org/elf/gabi4+/ch4.symtab.html - https://docs.oracle.com/cd/E19683-01/817-3677/chapter6-94076/index.html
Symbol table entries store a 16-bit index for their section header. If the index overflows 16-bits then it's stored in a separate section instead. References: - https://refspecs.linuxbase.org/elf/gabi4+/ch4.symtab.html - https://docs.oracle.com/cd/E19683-01/817-3677/chapter6-94076/index.html
Symbol table entries store a 16-bit index for their section header. If the index overflows 16-bits then it's stored in a separate section instead. References: - https://refspecs.linuxbase.org/elf/gabi4+/ch4.symtab.html - https://docs.oracle.com/cd/E19683-01/817-3677/chapter6-94076/index.html
Symbol table entries store a 16-bit index for their section header. If the index overflows 16-bits then it's stored in a separate section instead. References: - https://refspecs.linuxbase.org/elf/gabi4+/ch4.symtab.html - https://docs.oracle.com/cd/E19683-01/817-3677/chapter6-94076/index.html
Fix metadata extraction for large ELF files (#2285)
Symbol table entries store a 16-bit index for their section header. If the index overflows 16-bits then it's stored in a separate section instead. References: - https://refspecs.linuxbase.org/elf/gabi4+/ch4.symtab.html - https://docs.oracle.com/cd/E19683-01/817-3677/chapter6-94076/index.html
Symbol table entries store a 16-bit index for their section header. If the index overflows 16-bits then it's stored in a separate section instead. References: - https://refspecs.linuxbase.org/elf/gabi4+/ch4.symtab.html - https://docs.oracle.com/cd/E19683-01/817-3677/chapter6-94076/index.html
I'm trying to use
library_mode
togenerate_bindings
from a reasonably large crate, the matrix-sdk-ffi bindings.Also relevant: I've bumped
uniffi
to version0.28.2
.Using
cargo ndk
, I'm building the staticlib version foraarc64-linux-android
, in release mode only.Then using
print-repr
to look at the metadata.Output is:
A lightly instrumented uniffi which prints in
extract_item
that a symbol has been recognized, but is an unrecognized metadata code:Unfortunately, I don't understand ELF, ndk or the process of it being written to move the investigation further.
Investigation to get to here: jhugman/uniffi-bindgen-react-native#122
The text was updated successfully, but these errors were encountered: