1
votes

I tried following the tutorial here for NaCl or PNaCl or native client or pinnacle whatever the name of the day is and got this:

F:/nacl_sdk/pepper_31/toolchain/win_x86_newlib/bin/i686-nacl-g++ -o hello_tutori al_x86_32.nexe hello_tutorial_32.o -m32 -O0 -g -IF:/nacl_sdk/pepper_31/include - lppapi_cpp -lppapi /x86_64-nacl-ld: cannot find -lppapi_cpp collect2: ld returned 1 exit status Makefile:64: recipe for target 'hello_tutorial_x86_32.nexe' failed make: * [hello_tutorial_x86_32.nexe] Error 1

Any ideas?

2

2 Answers

1
votes

It looks like you are running the old "hello_tutorial" example with the new pepper_31 SDK. Please use this new documentation instead:

https://developers.google.com/native-client/dev/devguide/tutorial/tutorial-part1

This source for this tutorial can be found in the pepper_31 SDK in the directory pepper_31\getting_started\part1.

0
votes

The new tutorial cited by binji is set up to build/run a pexe. To use nexe's as in the older example, update the tutorial's Makefile:

Add LDFLAGS for each target:

LDFLAGS_NEWLIB_ARM    := -L$(NACL_SDK_ROOT)/lib/newlib_arm/Release -lppapi_cpp -lppapi
LDFLAGS_NEWLIB_X86_32 := -L$(NACL_SDK_ROOT)/lib/newlib_x86_32/Release -lppapi_cpp -lppapi
LDFLAGS_NEWLIB_X86_64 := -L$(NACL_SDK_ROOT)/lib/newlib_x86_64/Release -lppapi_cpp -lppapi

and change the $(LDFLAGS) specified for linking the respective targets.