9P by ganadist 2022-08-05 | favorite | 댓글 2개

Android의 OS일부 컴포넌트는 Rust 가 사용되고 있습니다만, app을 개발하는데서는 rust를 이용하는데 현재 한계가 있습니다.

Android 팀에서 NDK를 담당하고 있는 Dan Albert가 Android 개발 ecosystem 및 NDK에 rust를 통합하기 위한 item들을 정리하고 있습니다.

원래 매년 2번 NDK를 릴리즈했었는데요.
Q1 : 컴파일러 버젼 업데이트
Q3 : 지원 OS 업데이트

컴파일러 버젼 업데이트와 관련해서 gcc에서 clang 으로 이전이 완료되어서 그런건지, 다음 봄에는 건너뛴다고 하는데요.

rust 지원에 공수가 들어 갈 것으로 보입니다.

Rust와 NDK 23 버전이 잘 안되어서 NDK 21버전을 쓸 수 밖에 없다는 글을 본 적 있는데 나아졌으면 좋겠습니다.

NDK 23부터 linker 가 gnu ld 에서 lld 로 변경되면서 발생하는 것 같습니다. (러스트 쪽이 gcc와 엮여있는 듯)
NDK 23 미만은 deprecate 된 것 같고, workaround를 이용해서 NDK 23 이상과 사용되는 것이 권장되는 것 같습니다.

https://crates.io/crates/ndk-sys#supported-ndk-versions