нет Android NDK найден в $ ANDROID_HOME / ndk-bundle или в $ ANDROID_NDK_HOME в Ubuntu 18.04 - PullRequest
0 голосов
/ 06 апреля 2020

Я пытаюсь скомпилировать нативный GO код для android с помощью gomobile. Похоже, gomobile не находит ndk-build.

gomobile build -target android hello. go gomobile: нет Android NDK найден в $ ANDROID_HOME / ndk-bundle или в $ ANDROID_NDK_HOME

Я установил Android NDK в каталог ANDROID_HOME, изменил разрешение для папки на 777 и добавил запись экспорта в ~ / .profile, как показано ниже.

echo $ PATH / usr / local / SBIN: / USR / местные / бен: / USR / SBIN: / USR / бен: / SBIN: / бен: / USR / местные / Go / бен: / корень / работа / бен: / корень / ANDROID_HOME / android - ndk-r21 / ndk-build

Я установил gomobile из "https://godoc.org/golang.org/x/mobile/cmd/gomobile" как: go get golang .org / x / mobile / cmd / gomobile

"gomobile init" выполняется без проблем; однако "gomobile bind" выдает то же сообщение об ошибке, что и ошибка сборки gomobile.

Я даже пытался установить переменную env в "/work/src/golang.org/x/mobile/ cmd / gomobile / env. go ", как показано ниже, но вызов os.GetEnv возвращает пустое значение.

os.Setenv("ANDROID_HOME", "/home/usr/ANDROID_HOME/ndk-bundle/android-ndk-r21/ndk-build")
androidHome := os.Getenv("ANDROID_HOME")
if androidHome != "" {
    ndkRoot := filepath.Join(androidHome, "ndk-bundle")
    _, err := os.Stat(ndkRoot)
    if err == nil {
        return ndkRoot, nil
    }
}

Сборка завершается неудачно, независимо от того, запускаю ли я ее в Ubuntu 18.04 vm или в контейнере docker. Ценю ввод и обратную связь.

Спасибо за чтение.

...