Сборка Android AOSP не удалась на MacOS 10.14 - PullRequest
3 голосов
/ 27 марта 2019

Не уверен, как это классифицировать. Я пытаюсь собрать AOSP с нуля под MacOS 10.14.

Я собрал чувствительную к регистру файловую систему и выполнил следующие команды:

repo init -u https://android.googlesource.com/platform/manifest
repo init -b android-9.0.0_r34
repo sync
source build/envsetup.sh
lunch aosp_arm-eng
make -j4

, а также отредактировал build / soong / cc / config / x86_darwin_host.go, добавив 10,14 в darwinSupportedSdkVersions.

Сборка не удалась с этими ошибками:

ld: warning: The i386 architecture is deprecated for macOS (remove from the Xcode build setting: ARCHS)
ld: warning: ignoring file /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib/libpthread.tbd, missing required architecture i386 in file /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib/libpthread.tbd
ld: warning: ignoring file /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib/libdl.tbd, missing required architecture i386 in file /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib/libdl.tbd
…

[  5% 4372/76415] //external/expat:libexpat link libexpat-host.dylib [darwin x86]
FAILED: out/soong/.intermediates/external/expat/libexpat/darwin_x86_shared/libexpat-host.dylib 
prebuilts/clang/host/darwin-x86/clang-4691093/bin/clang++  @out/soong/.intermediates/external/expat/libexpat/darwin_x86_shared/libexpat-host.dylib.rsp out/soong/.intermediates/external/compiler-rt/libcompiler_rt-extras/darwin_x86_static/libcompiler_rt-extras.a out/soong/.intermediates/external/libcxx/libc++/darwin_x86_shared/libc++.dylib  -o out/soong/.intermediates/external/expat/libexpat/darwin_x86_shared/libexpat-host.dylib -dynamiclib -single_module -install_name @rpath/libexpat-host.dylib -read_only_relocs suppress -target i686-apple-darwin -B/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -Wl,-syslibroot,/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -mmacosx-version-min=10.8 -m32 -ldl -lpthread -lm -Wl,-rpath,@loader_path/../lib -Wl,-rpath,@loader_path/lib  -nodefaultlibs -lc -lSystem
ld: warning: The i386 architecture is deprecated for macOS (remove from the Xcode build setting: ARCHS)
ld: warning: ignoring file /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib/libdl.tbd, missing required architecture i386 in file /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib/libdl.tbd
ld: warning: ignoring file /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib/libpthread.tbd, missing required architecture i386 in file /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib/libpthread.tbd
ld: warning: ignoring file /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib/libm.tbd, missing required architecture i386 in file /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib/libm.tbd
ld: warning: ignoring file /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib/libc.tbd, missing required architecture i386 in file /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib/libc.tbd
ld: warning: ignoring file /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib/libSystem.tbd, missing required architecture i386 in file /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/lib/libSystem.tbd
Undefined symbols for architecture i386:
  "___bzero", referenced from:
      _lookup in xmlparse.o
  "___stack_chk_fail", referenced from:
      _XML_ParserCreateNS in xmlparse.o
      _XML_ExternalEntityParserCreate in xmlparse.o
      _externalEntityInitProcessor in xmlparse.o
      _externalParEntInitProcessor in xmlparse.o
      _startParsing in xmlparse.o
      _XML_DefaultCurrent in xmlparse.o
      _prologInitProcessor in xmlparse.o
      ...

Сборка для Oreo также не удалась, но по-разному.

Есть идеи, что я здесь не так делаю?

Ответы [ 2 ]

4 голосов
/ 07 апреля 2019

Попробуйте установить Xcode 9.4 или более раннюю версию, а затем перестроить заново. Надеюсь, это поможет вам.

Ссылка: https://developer.apple.com/documentation/xcode_release_notes/xcode_10_release_notes

В macOS 10.14 SDK больше не поддерживается 32-битная компиляция Приложения. Если разработчики должны скомпилировать для i386, Xcode 9.4 или раньше требуется. (39858111)

3 голосов
/ 27 апреля 2019

Я скомпилировал Android Oreo на macOS 10.14 успешно.

Я не установил Xcode, только CommandLineTools (Command_Line_Tools_macOS_10.13_for_Xcode_9.3) был установлен. Command_Line_Tools_macOS_10.13_for_Xcode_9.3 - это минимальная версия CommandLineTools, которую можно установить на macOS 10.14.

Нажмите здесь для получения дополнительной информации: https://www.jianshu.com/p/1fba826c710e

...