NDK 버전에 따른 디렉토리 차이

이번에 bgfx를 빌드해보면서, Windows 버전이나 Mac 버전은 문제없이 빌드가 잘 되었다. 여러 오픈소스들을 사용해 봤지만, 이렇게 깔끔하게 모든 환경에서 빌드가 가능하게끔 구축해 놓은 소스는 정말 오랜만이다. bgfx를 만든 개발자인 bkaradzic라는 분이 새삼 더 존경스럽게 느껴졌다.

하지만 Android 버전을 빌드하려고 NDK를 사용하고 있었는데, 최신 버전인 23버전을 사용하여 빌드하려고 보니 이런 저런 문제들이 생겼다. 필요한 path인 ANDROID_NDK_ROOT 등의 환경변수를 제대로 지정해주었는데도 말이다.

알고보니 bgfx는 NDK 18버전 기준으로 자동 빌드 스크립트를 만들어 놓았는데, 23버전과 18버전은 디렉토리 구성이 많이 달랐기 때문이다.

예를들면 18버전은 sysroot 디렉토리가 ANDROID_NDK_ROOT에 들어있는데, 23버전은 toolchain 안의 어떤 곳에 들어있고, sources 디렉토리도 위치가 달랐기 때문에 빌드가 되지 않는 것이었다.

일단 지금 bgfx를 Android 버전으로 빌드하기 위해서는 18버전을 쓰는 것이 가장 깔끔한 해결책인 것 같다.