2017-01-12 13 views
0

NetBSDでclang++libc++のプログラムをコンパイルしようとしています。 Clangのバージョンは3.9.0、NetBSDのバージョンは7.0.2です。コンパイルが失敗していると:Clangと-std = NetBSDのlibC++?

$ make 
clang++ -D_NETBSD_SOURCE -m64 -pthread -stdlib=libc++ -fPIC -fvisibility=hidden \ 
    -std=c++11 -D_REENTRANT -O3 -Wall -Ibuild/include -c ./src/lib/asn1/alg_id.cpp \ 
    -o build/obj/lib/asn1_alg_id.o 
In file included from ./src/lib/asn1/alg_id.cpp:8: 
In file included from build/include/botan/alg_id.h:11: 
In file included from build/include/botan/asn1_obj.h:11: 
In file included from build/include/botan/secmem.h:11: 
In file included from build/include/botan/mem_ops.h:11: 
build/include/botan/types.h:14:10: fatal error: 'cstddef' file not found 
#include <cstddef> 
     ^
1 error generated. 
*** Error code 1 

<cstddef>が存在するが、GCCのように表示されます。

$ find /usr -name cstddef 
/usr/include/g++/cstddef 

私が正しくIndex of pub/NetBSD/NetBSD-release-7/src/external/bsd/libc++を解析していた場合は、ライブラリが提供されています。私はlibc++またはlibcxxをインストールしようとすると:

bash-4.4$ sudo PKG_PATH="http://ftp.NetBSD.org/pub/pkgsrc/packages/NetBSD/`uname -m`/`uname -r`/All/" pkg_add libcxx 
pkg_add: no pkg found for 'libcxx', sorry. 
pkg_add: 1 package addition failed 
bash-4.4$ sudo PKG_PATH="http://ftp.NetBSD.org/pub/pkgsrc/packages/NetBSD/`uname -m`/`uname -r`/All/" pkg_add libc++ 
pkg_add: no pkg found for 'libc++', sorry. 
pkg_add: 1 package addition failed 

にlibcとクラン++ NetBSDについてのサポートされる構成ですか? NetBSDでClangとlibC++をどうやって使うのですか?

答えて

1

LibC++はNetBSDでサポートされています(定期的にテストされていませんが)。残念ながら、私はどのパッケージがそれを提供しているかはわかりません(もしあれば)。

build and install libc++ from sourceの1つの代替方法があります。 Clangは最初にlibC++ヘッダーの最初の接頭辞と/usr/local/include/c++/v1秒を検索します。したがって、libC++をこれらの2つの場所のいずれかにインストールすることをお勧めします(例:-DCMAKE_INSTALL_PREFIX=/usr/local)。

関連する問題