[libcxxabi] Which unwind.h?

Hi,

When I tried to build libcxxabi by clang++, the compiler complained about the missing header:

[ 12%] Building CXX object src/CMakeFiles/cxxabi.dir/cxa_exception.cpp.o
In file included from /home/ryuta/devel/libcxxabi/src/libcxxabi/src/cxa_exception.cpp:21:
/home/ryuta/devel/libcxxabi/src/libcxxabi/src/cxa_exception.hpp:3:10: fatal error:
‘unwind.h’ file not found
#include “unwind.h”
^
1 error generated.
make[2]: *** [src/CMakeFiles/cxxabi.dir/cxa_exception.cpp.o] Error 1
make[1]: *** [src/CMakeFiles/cxxabi.dir/all] Error 2
make: *** [all] Error 2

Here’s clang++'s search list:

#include “…” search starts here:
#include <…> search starts here:
/usr/include/c++/4.6.1
/usr/include/c++/4.6.1/backward
/usr/include/c++/4.6.1/x86_64-unknown-linux-gnu/
/usr/local/include
/usr/bin/…/lib/clang/3.0/include
/usr/include
End of search list.

I see unwind.h in /usr/lib/gcc/x86_64-unknown-linux-gnu/4.6.1/include.
Are we supposed to use this header file?
Any comments will be greatly appreciated.

Thanks,

Ryuta

For libcxxrt, we use the one provided by libunwind. This header must provide the interface to the generic unwind library. The GCC ones are full of weird GNUisms and are horrible to try to use anywhere outside of the GCC tree (and since 4.2 they've made them more convoluted).

I presume the situation is the same for libcxxabi.

David

Thanks for the info, David.
I’ll give it a shot and see what happens.

Ryuta