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

[ion-c-sys] AArch64 build problems #102

Closed
almann opened this issue Sep 20, 2020 · 1 comment · Fixed by #103
Closed

[ion-c-sys] AArch64 build problems #102

almann opened this issue Sep 20, 2020 · 1 comment · Fixed by #103
Assignees

Comments

@almann
Copy link
Contributor

almann commented Sep 20, 2020

On a lark, I tried building ion-rs and ion-c-sys on Termux. However, I ran into the following build problems:

image

The problem is that certain Ion C APIs use c_char pointers, and we hard coded them to i8 pointers which works on x86-64, but is u8 pointers on AArch64. We should use the c_char type alias as it is defined appropriately on the platform being built.

@almann almann self-assigned this Sep 20, 2020
almann added a commit that referenced this issue Sep 20, 2020
Fixes #102

Type `c_char` is sometimes signed or unsigned depending on platform,
we had code doing explicit casts to the underlying `i8` on GCC/Clang x86-64,
but other platforms are known to be `u8` which causes build failures
(e.g. AArch64).
@almann
Copy link
Contributor Author

almann commented Sep 20, 2020

I have confirmed that this is fixed, by using the correct type alias (forgive the images--we don't have a CI pipeline target for AArch64)

image

image

almann added a commit that referenced this issue Sep 20, 2020
…103)

Fixes #102

Type `c_char` is sometimes signed or unsigned depending on platform,
we had code doing explicit casts to the underlying `i8` on GCC/Clang x86-64,
but other platforms are known to be `u8` which causes build failures
(e.g. AArch64).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant