首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在Cygwin中构建NaCl示例

无法在Cygwin中构建NaCl示例
EN

Stack Overflow用户
提问于 2014-02-09 07:58:09
回答 1查看 349关注 0票数 0

我仍然在努力构建这些示例。clang进程总是失败并返回127。

代码语言:javascript
复制
/home/ned/nacl_sdk/pepper_canary/toolchain/win_pnacl/host_x86_32/bin/clang.exe \
    -c testing.cc -Wall \
    -I/home/ned/nacl_sdk/pepper_canary/include \
    -I/home/ned/nacl_sdk/pepper_canary/include/pnacl

这不会产生诊断,也不会产生任何输出。

我在Cygwin跑步。

上面是一个简化的例子。如果将诊断信息添加到driver_tools.py,当我运行示例中的顶级Makefile时,我会看到下面显示的参数。如果我运行这个完整的命令,它仍然会静默地失败。

代码语言:javascript
复制
ARGS[0]:  /cygdrive/c/cygwin/home/ned/nacl_sdk/pepper_canary/toolchain/win_pnacl/host_x86_32/bin/clang.exe
ARGS[1:] -ccc-cxx \
-help \
-emit-llvm \
-c -O2 \
-fno-vectorize \
-fno-slp-vectorize \
-fno-common \
-pthread \
-nostdinc \
-target \
le32-unknown-nacl \
-g -MMD \
-DNDEBUG \
-Wall \
-Wno-sign-compare \
-I/home/ned/nacl_sdk/pepper_canary/include \
-I/home/ned/nacl_sdk/pepper_canary/include/pnacl \
-Wno-long-long \
-Werror \
-isystem \
/home/ned/nacl_sdk/pepper_canary/toolchain/win_pnacl/usr/local/include \
-isystem \
/home/ned/nacl_sdk/pepper_canary/toolchain/win_pnacl/host_x86_32/lib/clang/3.3/include \
-isystem \
/home/ned/nacl_sdk/pepper_canary/toolchain/win_pnacl/usr/include/c++/v1 \
-isystem \
/home/ned/nacl_sdk/pepper_canary/toolchain/win_pnacl/usr/include/c++/v1/arm-none-linux-gnueabi \
-isystem \
/home/ned/nacl_sdk/pepper_canary/toolchain/win_pnacl/usr/include/c++/v1/backward \
-isystem \
/home/ned/nacl_sdk/pepper_canary/toolchain/win_pnacl/usr/include \
-isystem \
/home/ned/nacl_sdk/pepper_canary/toolchain/win_pnacl/sdk/include \
-xc++ \
testing.cc \
-o pnacl/Release/testing.o
Return Code: 127
EN

回答 1

Stack Overflow用户

发布于 2014-02-09 07:58:09

PNaCl工具链已经包含了cygwin的零碎部分,并且不同版本的cygwin是不兼容的。

您可以从Cygwin中找到并删除cygwin1.dll,但通常不支持PNaCl。您应该使用普通的Windows工具或Mac/Linux。我追溯到了错误的cygstdc++-6.dll版本。

对我来说起作用的是:使用cygwin make和python,但在DOS cmd shell中构建。我在C:/cygwin/bin之前将%NACL_SDK_ROOT%/toolchain/win_ pnacl /bin添加到路径中,这样pnacl dll(如cygstdc++-6.dll)将与clang一起使用。这些dll的cygwin版本导致clang失败。

我黑了driver_tools.py,因为设置DRIVER_BIN的工具失败了。他们生成的路径是两个完整路径的连接。我没有尝试修复这些函数。我只是在我的环境中显式地设置了DRIVER_BIN/DRIVER_PATH,并且在driver_tools.py中引用了这些变量。

代码语言:javascript
复制
PATH=${PATH}:/cygdrive/c/cygwin/home/ned/nacl_sdk/pepper_31/toolchain/win_pnacl/bin:/cygdrive/c/cygwin/bin

NACL_SDK_ROOT=C:/cygwin/home/ned/nacl_sdk/pepper_31

DRIVER_BIN=C:/cygwin/home/ned/nacl_sdk/pepper_31/toolchain/win_pnacl/bin/

DRIVER_PATH=C:/cygwin/home/ned/nacl_sdk/pepper_31/toolchain/win_pnacl/bin/

NACL_ARCH=pnacl

TOOLCHAIN=pnacl
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21653339

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档