안드로이드
안드로이드 32bit 기기에서 2GB 이상 파일 다루기
쨉
2019. 12. 12. 17:40
32bit 기기에서 2GB 이상의 파일을 다뤄야 할 일이 있었다.
막 찾아보던 중 -D_LARGEFILE_SOURCE 와 -D_FILE_OFFSET_BITS=64 이렇게 두가지 옵션을 주면 기존의 32bit용 자료형들이 64bit 형식으로 바뀐다고 하더라.
예) off_t -> off64_t
그래서 적용해봤더니 어림도 없지. 전혀 안된다. 좀 더 찾아봤더니 AndroidMinSdk가 24 이상으로 설정되있어야 한단다.
바로 build.gradle로 가서 설정해봤더니 이번에도 안됬다.
도대체 어떻게 설정하는건지 찾아보니까 APP_PLATFORM := android-24 으로 옵션을 추가설정 해주면 됐다.
결론 : Application.mk 에 아래 두 줄을 넣어주면 된다.
APP_CFLAGS := -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
APP_PLATFORM := android-24