Deprecation of gcc+newlib

178 views
Skip to first unread message

Bradley Nelson

unread,
May 6, 2015, 2:16:24 PM5/6/15
to Native Client Discuss
Hi All,

The Native Client SDK team would like to announce that the pepper_44 SDK (branching 5/15/2015) will be the LAST version that contains our gcc+newlib toolchains. They will be removed in the pepper_45 SDK, and you will instead need to use nacl-clang.

Please note that our glibc x86 toolchain is currently unaffected, but may be replaced in some future SDK release when nacl-clang+glibc support is available as a replacement.

We believe that the nacl-clang+newlib toolchain now included in the SDK should be a drop-in replacement for gcc+newlib in the vast majority of cases. We've sucessfully used it to build a range of libraries and applications, including naclports and our Integrated Runtime (IRT).

If you are currently building with either our gcc+newlib x86 or arm toolchains, we would like to take this oportunity to encourage you to try out nacl-clang (which supports x86-32/64 and arm).

If you encounter issues when switching, we're eager to hear about it and assist you in transitioning.

-BradN

KnoooW

unread,
May 7, 2015, 2:01:16 AM5/7/15
to native-cli...@googlegroups.com
Sounds good !
Any link can I download the nacl_clang source code ?
I will do some development on nacl_clang level in the near future.


在 2015年5月7日星期四 UTC+8上午2:16:24,Bradley Nelson写道:

JF Bastien

unread,
May 7, 2015, 9:49:37 AM5/7/15
to native-cli...@googlegroups.com
nacl-clang is built with the rest of PNaCl, using the following instructions to get source and build:


--
You received this message because you are subscribed to the Google Groups "Native-Client-Discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to native-client-di...@googlegroups.com.
To post to this group, send email to native-cli...@googlegroups.com.
Visit this group at http://groups.google.com/group/native-client-discuss.
For more options, visit https://groups.google.com/d/optout.

Rob Nielsen

unread,
Jul 16, 2015, 2:26:59 PM7/16/15
to native-cli...@googlegroups.com
I had to make the following changes to get my code to work with pepper_43 and pepper_44 using clang-nacl:

The SDK doesn't include the path for the x86_32 naclports libraries. This can be fixed by adding the following to your Makefile:

X86_32_LDFLAGS=-L$(NACL_SDK_ROOT)/toolchain/linux_pnacl/i686-nacl/usr/lib

The library jsoncpp isn't included in the SDK. This can be fixed by doing the following from a shell:

cd $NACL_SDK_ROOT/src/jsoncpp
make TOOLCHAIN=clang-newlib VALID_TOOLCHAINS=clang-newlib CONFIG=Debug
make TOOLCHAIN=clang-newlib VALID_TOOLCHAINS=clang-newlib CONFIG=Release

Rob

Sam Clegg

unread,
Jul 18, 2015, 9:43:36 AM7/18/15
to native-cli...@googlegroups.com
Thanks Rob, for the useful pointers.

Both of these issues should be fixed in pepper_46.

cheers,
sam

张华

unread,
Sep 30, 2015, 2:15:54 AM9/30/15
to Native-Client-Discuss
Thanks a lot, Rob. It solves my pains. You know, newlib doesn't support C++11. clang-newlib is really a rescue.

Sam Clegg

unread,
Oct 6, 2015, 3:38:22 PM10/6/15
to native-cli...@googlegroups.com
The removal of newlib from the SDK finally landed:
https://codereview.chromium.org/1388503003/

This change went in after the pepper_47 branch point so pepper_47 will
be the last SDK revision to include the gcc+newlib toolchains.

I'm currently in the process of removing newlib support for the master
branch of naclports: https://codereview.chromium.org/1390623002/

cheers,
sam
Reply all
Reply to author
Forward
0 new messages