2016-07-04 100 views
0

我嘗試了以下步驟爲Android構建V8。無法在Mac上爲Android構建V8

1.安裝depot_tools

git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git 
export PATH=`pwd`/depot_tools:"$PATH" 
  • 運行「取V8」下載代碼和所有依賴性。
  • cd到v8並運行「make ia32.release」來構建。
  • 使android_arm.release -j16 android_ndk_root = [完整路徑NDK]
  • 步驟3的構建成功並得到了庫。 雖然4失敗,因爲找不到一些標準標題。

    /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/stdio.h:108:15: fatal error: 'stdio.h' file not found 
    #include_next <stdio.h> 
          ^
    In file included from ../src/api.cc:5: 
    In file included from .././src/api.h:8: 
    In file included from .././include/v8-testing.h:8: 
    In file included from ../include/v8.h:20: 
    /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/stdio.h:108:15: fatal error: 'stdio.h' file not found 
    #include_next <stdio.h> 
          ^
    In file included from ../src/asmjs/asm-wasm-builder.cc:5: 
    In file included from .././src/v8.h:8: 
    In file included from .././include/v8.h:20: 
    /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/stdio.h:108:15: fatal error: 'stdio.h' file not found 
    #include_next <stdio.h> 
          ^
    In file included from ../src/asmjs/typing-asm.cc:5: 
    In file included from .././src/asmjs/typing-asm.h:8: 
    In file included from .././src/allocation.h:8: 
    In file included from .././src/globals.h:11: 
    In file included from /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/ostream:138: 
    In file included from /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/ios:215: 
    In file included from /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/iosfwd:90: 
    /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/wchar.h:119:15: fatal error: 'wchar.h' file not found 
    #include_next <wchar.h> 
          ^
    In file included from ../src/accessors.cc:5: 
    In file included from .././src/accessors.h:8: 
    In file included from .././include/v8.h:20: 
    /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/stdio.h:108:15: fatal error: 'stdio.h' file not found 
    #include_next <stdio.h>In file included from 
    ../src/assembler.cc:    ^35 
    : 
    In file included from .././src/assembler.h:38: 
    In file included from .././src/allocation.h:8: 
    In file included from .././src/globals.h:11: 
    In file included from /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/ostream:138: 
    In file included from /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/ios:215: 
    In file included from /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/iosfwd:90: 
    /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/wchar.h:119:15: fatal error: 'wchar.h' file not found 
    #include_next <wchar.h> 
           ^In file included from 
    ../src/arguments.cc:5: 
    In file included from .././src/arguments.h:8: 
    In file included from .././src/allocation.h:8: 
    In file included from .././src/globals.h:11: 
    In file included from /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/ostream:138: 
    In file included from /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/ios:215: 
    In file included from /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/iosfwd:90: 
    /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/wchar.h:119:15: fatal error: 'wchar.h' file not found 
    #include_next <wchar.h> 
          ^
    In file included from ../src/api-experimental.cc:9: 
    In file included from .././src/api-experimental.h:8: 
    In file included from .././src/handles.h:8: 
    In file included from .././include/v8.h:20: 
    /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/stdio.h:108:15: fatal error: 'stdio.h' file not found 
    #include_next <stdio.h> 
          ^
    In file included from ../src/address-map.cc:5: 
    In file included from .././src/address-map.h:8: 
    In file included from .././src/assert-scope.h:9: 
    In file included from .././src/base/macros.h:8: 
    In file included from .././src/base/compiler-specific.h:8: 
    .././include/v8config.h:14:11: fatal error: 'TargetConditionals.h' file not found 
    # include <TargetConditionals.h> 
         ^
    In file included from ../src/allocation.cc:5: 
    In file included from .././src/allocation.h:8: 
    In file included from .././src/globals.hIn file included from :../src/asmjs/asm-types.cc11:: 
    5In file included from : 
    /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/ostreamIn file included from :.././src/v8.h138:: 
    8In file included from : 
    /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/iosIn file included from :.././include/v8.h215:: 
    20In file included from : 
    /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/iosfwd:/Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/stdio.h90:: 
    108:15/Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/wchar.h:: 119:15:fatal error : fatal error'stdio.h': file 'wchar.h'not filefound not 
    found 
    #include_next <stdio.h> 
          ^
    #include_next <wchar.h> 
          ^
    In file included from ../src/assert-scope.ccIn file included from ../src/ast/ast-expression-rewriter.cc:5: 
    In file included from .././src/ast/ast.h:8: 
    In file included from .././src/ast/ast-value-factory.h:31: 
    In file included from .././src/api.h:8: 
    In file included from .././include/v8-testing.h:8: 
    In file included from ../include/v8.h:20: 
    /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/stdio.h:108:15: fatal error: 'stdio.h' file not found 
    #include_next <stdio.h> 
          ^
    :5: 
    In file included from .././src/assert-scope.h:9: 
    In file included from .././src/base/macros.h:8: 
    In file included from .././src/base/compiler-specific.h:8: 
    .././include/v8config.h:14:11: fatal error: 'TargetConditionals.h' file not foundIn file included from 
    ../src/api-arguments.cc:5: 
    In file included from .././src/api-arguments.h:8: 
    In file included from .././src/api.h:8: 
    In file included from .././include/v8-testing.h:8: 
    In file included from ../include/v8.h:20: 
    /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/stdio.h:108:15: fatal error: 'stdio.h' # include <TargetConditionals.h>file 
    not   ^found 
    
    #include_next <stdio.h> 
           ^In file included from 
    ../src/asmjs/asm-js.cc:5: 
    In file included from .././src/asmjs/asm-js.h:9: 
    In file included from .././src/allocation.h:8: 
    In file included from .././src/globals.h:11: 
    In file included from /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/ostream:138: 
    In file included from /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/ios:215: 
    In file included from /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/iosfwd:90: 
    /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/wchar.h:119:15: fatal error: 'wchar.h' file not found 
    #include_next <wchar.h> 
          ^
    In file included from ../src/allocation-site-scopes.cc:5: 
    In file included from .././src/allocation-site-scopes.h:8: 
    In file included from .././src/ast/ast.h:8: 
    In file included from .././src/ast/ast-value-factory.h:31: 
    In file included from .././src/api.h:8: 
    In file included from .././include/v8-testing.h:8: 
    In file included from ../include/v8.h:20: 
    /Users/philip/v8/third_party/llvm-build/Release+Asserts/bin/../include/c++/v1/stdio.h:108:15: fatal error: 'stdio.h' file not found 
    #include_next <stdio.h> 
          ^
    1 error generated. 
    make[2]: *** [/Users/philip/v8/out/android_arm.release/obj.host/v8_base/src/allocation.o] Error 1 
    make[2]: *** Waiting for unfinished jobs.... 
    1 error generated. 
    make[2]: *** [/Users/philip/v8/out/android_arm.release/obj.host/v8_base/src/asmjs/asm-types.o] Error 1 
    1 error generated. 
    make[2]: *** [/Users/philip/v8/out/android_arm.release/obj.host/v8_base/src/address-map.o] Error 1 
    1 error generated. 
    1 error generated. 
    make[2]: *** [/Users/philip/v8/out/android_arm.release/obj.host/v8_base/src/arguments.o] Error 1 
    make[2]: *** [/Users/philip/v8/out/android_arm.release/obj.host/v8_base/src/api-natives.o] Error 1 
    1 error generated. 
    make[2]: *** [/Users/philip/v8/out/android_arm.release/obj.host/v8_base/src/api-arguments.o] Error 1 
    1 error generated. 
    make[2]: *** [/Users/philip/v8/out/android_arm.release/obj.host/v8_base/src/api-experimental.o] Error 1 
    1 error generated. 
    make[2]: *** [/Users/philip/v8/out/android_arm.release/obj.host/v8_base/src/allocation-site-scopes.o] Error 1 
    1 error generated. 
    make[2]: *** [/Users/philip/v8/out/android_arm.release/obj.host/v8_base/src/ast/ast-expression-rewriter.o] Error 1 
    1 error generated. 
    make[2]: *** [/Users/philip/v8/out/android_arm.release/obj.host/v8_base/src/assert-scope.o] Error 1 
    1 error generated. 
    make[2]: *** [/Users/philip/v8/out/android_arm.release/obj.host/v8_base/src/accessors.o] Error 1 
    1 error generated. 
    make[2]: *** [/Users/philip/v8/out/android_arm.release/obj.host/v8_base/src/asmjs/asm-js.o] Error 1 
    1 error generated. 
    1 error generated. 
    make[2]: *** [/Users/philip/v8/out/android_arm.release/obj.host/v8_base/src/asmjs/asm-wasm-builder.o] Error 1 
    make[2]: *** [/Users/philip/v8/out/android_arm.release/obj.host/v8_base/src/asmjs/typing-asm.o] Error 1 
    1 error generated. 
    make[2]: *** [/Users/philip/v8/out/android_arm.release/obj.host/v8_base/src/assembler.o] Error 1 
    1 error generated. 
    make[2]: *** [/Users/philip/v8/out/android_arm.release/obj.host/v8_base/src/api.o] Error 1 
    make[1]: *** [android_arm.release] Error 2 
    make: *** [android_arm.release] Error 2 
    
    +0

    我還試圖來設置環境與所建議的命令: 回聲 「TARGET_OS = [ '機器人']」 >>。 ./.gclient && gclient sync --nohooks 。當用「sudo make android_arm.release -j16」編譯時,仍然會得到類似的錯誤。 – philip

    回答

    0

    不要使用-j參數。

    Source: v8 Wiki

    可選參數:

    -j specifies the number of parallel build processes. Set it (roughly) to the number of CPU cores your machine has. The GYP/make based V8 build also supports distcc, so you can compile with -j100 or so, provided you have enough machines around.

    但是現在的編譯器說,他無法找到TargetConditionals.h

    .././include/v8config.h:14:11: fatal error: 'TargetConditionals.h' file not found 
    
    0

    你應該安裝的Xcode命令行工具。

    1.install xcode。

    2.運行命令「xcode-select --install」。

    3.make android_arm.release -j16 android_ndk_root = [完整路徑NDK]

    +0

    「xcode-select --install」表示xcode-select:error:命令行工具已經安裝,因此,我運行第3步,不會引發歸檔符號表(運行ranlib)錯誤。我的問題在這裏http://stackoverflow.com/questions/43366927/v8-build-for-android-on-mac/43368154#43368154 – 2017-04-12 13:24:24