2014-07-04 60 views
0

我試圖在Ubuntu 14.04上構建PNaCl(chroot到12.04導致相同的結果)。我跑 'pnacl/build.sh所有',並建立失效的 「LIBGCC_EH(GCC從4.6)」 的步驟PNaCl構建失敗(ERROR-missing-arm-trusted-toolchain:未找到)

[22:55] MISC-TOOLS   Building sel_ldr (arm) 


********************************************************************* 
| 
| ERROR 
| 
********************************************************************* 
COMMAND: ./scons MODE=opt-host platform=arm naclsdk_validate=0 sysinfo=0 -j8 sel_ldr 

LOGFILE: /home/dmitry/chromium-35.0.1916.114/src/native_client/pnacl/build/log/arm_sel_ldr 

PWD: /home/dmitry/chromium-35.0.1916.114/src/native_client 

LOGFILE containes如下:

====================================================================== 
B U I L D - O U T P U T: 
====================================================================== 
scons: done reading SConscript files. 
scons: Building targets ... 
________Compiling scons-out/opt-linux-arm/obj/src/trusted/service_runtime/li nux/nacl_bootstrap_munge_phdr.o 
________Compiling scons-out/opt-linux-arm/obj/src/trusted/service_runtime/li nux/nacl_bootstrap.o 
sh: 1: ERROR-missing-arm-trusted-toolchain: not found 
________Compiling scons-out/opt-linux-arm/obj/src/trusted/service_runtime/na cl_test_injection_main.o 
sh: 1: ERROR-missing-arm-trusted-toolchain: not found 
________Compiling scons-out/opt-linux-arm/obj/src/trusted/service_runtime/se l_main.o 
sh: 1: ERROR-missing-arm-trusted-toolchain: not found 
________Compiling scons-out/opt-linux-arm/obj/src/trusted/debug_stub/abi.o 
sh: 1: ERROR-missing-arm-trusted-toolchain: not found 
________Compiling scons-out/opt-linux-arm/obj/src/trusted/debug_stub/debug_s tub.o 
sh: 1: ERROR-missing-arm-trusted-toolchain: not found 
________Compiling scons-out/opt-linux-arm/obj/src/trusted/debug_stub/nacl_de bug.o 

你能解釋我如何修復失敗?

回答

1

這裏有幾個答案: 首先,你不應該再使用pnacl/build.sh構建PNaCl工具鏈:改爲使用toolchain_build/toolchain_build_pnacl.py。關於如何構建PNaCl工具鏈的文檔可以在here找到,並且已經更新以反映新腳本。其次,您描述的實際問題不是來自構建工具鏈,而是來自構建sel_ldr,這是命令行獨立的NaCl受信任運行時(即ELF加載器,驗證程序,服務運行時等)。 build.sh腳本爲ARM構建sel_ldr以用於測試工具鏈,該工具鏈使用ARM的仿真器。受信任的運行時使用Ubuntu附帶的ARM交叉編譯器軟件包構建。在12.04上爲你安裝這些軟件包的腳本可以在tools/trusted_cross_toolchains/trusted-toolchain-creator.armhf.precise.sh的NaCl repo中找到(它也將安裝我們的QEMU軟件包來運行ARM二進制文件)。 目前還沒有自動腳本爲Ubuntu 14.04安裝軟件包,但您可以查看現有腳本中的軟件包列表並手動安裝相應的類似軟件包;我已經在14.04系統上完成了這項工作,但沒有人開始編寫新的腳本。

請注意,如果您不關心ARM測試,只需切換到toolchain_build_pnacl.py就足夠了,因爲不像build.sh,它不會嘗試默認構建任何本機ARM工具。