How am I to install the 32-bit version of Google's NaCl SDK?

0

I'm looking at playing with Google's Native Client SDK, so I've downloaded the tool to install it, installed pepper_46, and attempted to build the "getting started" project, and I was given the following response.

rob@asmodeus:~/Downloads/nacl_sdk/pepper_46/getting_started$ make serve
make -C part1  all
make[1]: Entering directory '/home/rob/Downloads/nacl_sdk/pepper_46/getting_started/part1'
/home/rob/Downloads/nacl_sdk/pepper_46/toolchain/linux_pnacl/bin/pnacl-clang++ -o hello_tutorial.bc hello_tutorial.cc -O2 -I/home/rob/Downloads/nacl_sdk/pepper_46/include -L/home/rob/Downloads/nacl_sdk/pepper_46/lib/pnacl/Release -lppapi_cpp -lppapi
[Errno 8] Exec format error
Command was: /home/rob/Downloads/nacl_sdk/pepper_46/toolchain/linux_pnacl/bin/clang \
    --driver-mode=g++ \
    -emit-llvm \
    -c -O2 \
    -fno-vectorize \
    -fno-slp-vectorize \
    -fno-common \
    -nostdinc \
    -target \
    le32-unknown-nacl \
    -I/home/rob/Downloads/nacl_sdk/pepper_46/include \
    -isystem \
    /home/rob/Downloads/nacl_sdk/pepper_46/toolchain/linux_pnacl/le32-nacl/usr/include \
    -isystem \
    /home/rob/Downloads/nacl_sdk/pepper_46/toolchain/linux_pnacl/lib/clang/3.7.0/include \
    -isystem \
    /home/rob/Downloads/nacl_sdk/pepper_46/toolchain/linux_pnacl/le32-nacl/include/c++/v1 \
    -isystem \
    /home/rob/Downloads/nacl_sdk/pepper_46/toolchain/linux_pnacl/le32-nacl/include \
    -isystem \
    /home/rob/Downloads/nacl_sdk/pepper_46/toolchain/linux_pnacl/sdk/include \
    -xc++ \
    hello_tutorial.cc \
    -o /home/rob/Downloads/nacl_sdk/pepper_46/getting_started/part1/hello_tutorial.bc---hello_tutorial.cc---.po
Makefile:50: recipe for target 'hello_tutorial.bc' failed
make[1]: *** [hello_tutorial.bc] Error 1
make[1]: Leaving directory '/home/rob/Downloads/nacl_sdk/pepper_46/getting_started/part1'
Makefile:54: recipe for target 'part1_ALL_TARGET' failed
make: *** [part1_ALL_TARGET] Error 2
rob@asmodeus:~/Downloads/nacl_sdk/pepper_46/getting_started$

As far as I can tell, the relevant parts are [Errno 8] Exec format error and Command was: /home/rob/.../bin/clang. After a touch of investigation, I found this.

rob@asmodeus:~/Downloads/nacl_sdk/pepper_46/toolchain/linux_pnacl/bin$ file clang
clang: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.24, BuildID[sha1]=a828789c24cefbb485103da1bf609d35e447dda2, stripped
rob@asmodeus:~/Downloads/nacl_sdk/pepper_46/toolchain/linux_pnacl/bin$

The worrying part of this is "x86-64", as my system is a plain x86 system! Google's page covering installing the SDK states that it supports x86-32, but does not say how to do it, and I have not been able to find 32-bit binaries anywhere or a way to install them. How do I go about getting a 32-bit set of these files?

Robbie Mckennie

Posted 2015-11-18T04:42:56.523

Reputation: 278

It has only just occurred to me that this may belong on stackoverflow or somewhere like that, not sure. – Robbie Mckennie – 2015-11-18T04:43:31.917

Answers

1

After doing some more research, I have found that even though Google does state support for x86-32 for NaCl, they do not support it for the SDK.

Robbie Mckennie

Posted 2015-11-18T04:42:56.523

Reputation: 278