Successful PCL Build from Source on Mac OS X including Kinfu

classic Classic list List threaded Threaded
29 messages Options
12
Reply | Threaded
Open this post in threaded view
|

Successful PCL Build from Source on Mac OS X including Kinfu

Ken Spratlin
This post was updated on .
Attached is a document listing the steps I took to build PCL trunk and its dependencies from source. All PCL subsystems - except those dependent on QT and QVTK, and those disabled by default - were successfully built.

My primary goal was to configure a development environment on Mac OS X that would support evaluation of the KinFu and KinFu Large Scale applications in PCL. Therefore, to date, little attention has been paid to other portions of PCL that are not required by KinFu and KinFu Large Scale.

An additional goal was to understand the state of PCL with respect to building entirely from source code on Mac OS X using Apple's development tools.

Hopefully you will find this useful.

PCL_Development_Build_-_Mac_OS_X.pdf
Ken Spratlin
Reply | Threaded
Open this post in threaded view
|

Re: Successful PCL Build from Source on Mac OS X

mankoff
Ken,

This is great. Do you know of a similar how-to guide for building on
Windows? I have built PCL on Mac (using Brew) and Linux, but my
computer with GPU is Windows-only, and would like to run KinFu on
that. I have no Windows development experience at all, and a guide
like yours would be helpful.

Thanks,

   -k.

On Wed, 5 Sep 2012, Ken Spratlin wrote:

> Attached is a document listing the steps I took to build PCL trunk and its
> dependencies from source. All PCL subsystems - except those dependent on QT
> and QVTK, and those disabled by default - were successfully built.
>
> My primary goal was to configure a development environment on Mac OS X that
> would support evaluation of the KinFu and KinFu Large Scale applications in
> PCL. Therefore, to date, little attention has been paid to other portions of
> PCL that are not required by KinFu and KinFu Large Scale.
>
> An additional goal was to understand the state of PCL with respect to
> building entirely from source code on Mac OS X using Apple's development
> tools.
>
> Hopefully you will find this useful.
>
> http://www.pcl-users.org/file/n4022018/PCL_Development_Build_-_Mac_OS_X.pdf
> PCL_Development_Build_-_Mac_OS_X.pdf
>
>
>
> -----
> Ken Spratlin
> Director of Innovation
> Trimble
> --
> View this message in context: http://www.pcl-users.org/Successful-PCL-Build-from-Source-on-Mac-OS-X-tp4022018.html
> Sent from the Point Cloud Library (PCL) Users mailing list archive at Nabble.com.
> _______________________________________________
> [hidden email] / http://pointclouds.org
> http://pointclouds.org/mailman/listinfo/pcl-users
>

_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: Successful PCL Build from Source on Mac OS X including Kinfu

qianyizh
This post was updated on .
In reply to this post by Ken Spratlin
Ken,

This is excellent.
Thanks to your document, I finally built r7104 on my Retina Macbook Pro, and got both kinfu_app and pcl_kinfu_largeScale running.

Just one small problem:
I built kinfu_app and pcl_kinfu_largeScale as app (as you suggested in your document), but when I launch them, I still have no outputs when I hit my keyboard (only beeps).
I use vtk5.10 + qt4.

Update:
They sometimes work (after I use "sudo open kinfu_app.app", then switch back and forth between windows).
I can capture a point cloud by pressing 'T'. But once I press '1', kinfu_app crashes.

Any idea on that?
Thanks,
Qianyi
Reply | Threaded
Open this post in threaded view
|

Re: Successful PCL Build from Source on Mac OS X including Kinfu

Ken Spratlin
Hi Quianyi,

I just noticed your post. I apologize for my delay in replying.

I also am having some crash problems with kinfu, although I am primarily running kinfu large scale instead of kinfu. So my comments here are all related to kinfu large scale. Perhaps some of this also applies to kinfu on 2012 Retina MacBook Pro.  The crashes seem to be of four flavors:

1) Kinfu crashes at startup saying it is out of memory
2) Kinfu crashes after running (but no atttempt to save point cloud) for some time, again saying it is out of memory
3) Kinfu crashes after running for some time, exactly when a cube shift occurs, again saying it is out of memory {I don't think I've had this problem recently, so perhaps it is fixed.}
3) Kinfu crashes when try to save the point cloud (when pressing 1, or other related keystrokes), just as you describe

A typical crash for me issues this error message:

Error: out of memory ...../gpu/containers/src/device_memory.cpp:149.

For category #1 above, I found that if I toggle from the discrete (NVIDIA) graphics to integrated (Intel) and back to discrete, this problem was fixed for the next attempt to run.

I traded emails directly with fheredia regarding these crashes and got the following response (I hope no problem in publishing his response here):

"Usually this message corresponds to errors in memory allocation or memory access. There are two factors involved here: First, the shifting procedure as unfortunately not bullet-proof yet. We have been discovering (with the help of the users) some errors in accesses to memory. We are fixing these errors as they appear. But maybe there are still some bugs in there :(   Second, with the amount of memory that you have I would suggest to run KinFu at 256^3 voxels but no color. If you need color (" -ic ") then maybe 128 is the best option. However the voxel count is also affecting the stability of the camera tracking. As more reference points (voxels)  can be used to perform the tracking. It is a tradeoff in the end :)"

However, I continue to get these crashes even when running with 256 and 128 voxels. I think there must still be some memory access issues.

Ken
Ken Spratlin
Reply | Threaded
Open this post in threaded view
|

Re: Successful PCL Build from Source on Mac OS X including Kinfu

qianyizh
This post was updated on .
Hi Ken,

Thanks for sharing your experience.
Let me post my experience with kinfu and kinfu_large_scale.

First, I added a couple of lines in trunk\gpu\containers\src\device_memory.cpp, to track the memory usage.
In void pcl::gpu::DeviceMemory::create(size_t sizeBytes_arg), before cudaSafeCall, add:
        printf( "[CUDA] Allocating memory %d bytes.\n", sizeBytes_ );
In void pcl::gpu::DeviceMemory2D::create(int rows_arg, int colsBytes_arg), before cudaSafeCall, add:
        printf( "[CUDA] Allocating memory %d x %d = %d bytes.\n", colsBytes_, rows_, colsBytes_ * rows_ );
Now you can track the gpu memory usage.

Second, I changed the resolution in trunk\gpu\kinfu\src\internal.h (or trunk\gpu\kinfu_large_scale\src\internal.h), from:
enum { VOLUME_X = 512, VOLUME_Y = 512, VOLUME_Z = 512 };
to:
enum { VOLUME_X = 392, VOLUME_Y = 392, VOLUME_Z = 392 };
You will see the voxel allocation now takes ~240MB for either geometry or color (comparing with ~530MB for each). So the voxel can now be handled by GT650M wth 1GB memory.
(This solves your point 1)

Next, change pcl::gpu::TsdfVolume::fetchCloud/fetchNormals/ColorVolume::fetchColors functions. Change the size of the buffer to be created. It is a bit tricky here - since a small buffer will not allow you to download a scene with many geometry details, while a large buffer will crash your program. But if you reduce the resolution as I did, you can half the size - should be safe.
(This is the reason of your point 4)

I don't have a good solution for your point 2 and 3. Actually, kinfu_large_scale downloads the entire world tsdf volume and keeps increasing that. So after sufficient long time, it always crashes.
The best solution is to run kinfu instead of kinfu_large_scale..

By the way, one more point in gpu memory usage:
Make sure you turn the OSX desktop resolution to low (at least ~"best for retina"), and shut down all gpu consuming programs such as safari/chrome. And yes, switching graphics cards helps releasing memory.

After these changes, I can stably run resolution 384x384x384 with both color and normals enabled, on GT650M with 1GB memory.

Qianyi
Reply | Threaded
Open this post in threaded view
|

Re: Successful PCL Build from Source on Mac OS X including Kinfu

qianyizh
In reply to this post by Ken Spratlin
Ken,

The resolution problem you mentioned, I guess it is because you are modifying the wrong parameter.

They should be in internal.h, not in tsdf_volume.h as in your original document.

Qianyi
Reply | Threaded
Open this post in threaded view
|

Re: Successful PCL Build from Source on Mac OS X including Kinfu

Ken Spratlin
This post was updated on .
In reply to this post by Ken Spratlin
I have updated this document to reflect that PCL Trunk now compiles with the Apple c++ (clang) Compiler.

Also incorporated several corrections.

Thank you to qianyizh for corrections to the kinfu parameters.

PCL_Development_Build_-_Mac_OS_X_(15_Nov_2012).pdf
Ken Spratlin
Reply | Threaded
Open this post in threaded view
|

Re: Successful PCL Build from Source on Mac OS X including Kinfu

Radu B. Rusu
Administrator
Until these changes actually make it into the next PCL release, I have taken the liberty to add Ken's notes up at
http://www.pointclouds.org/downloads/macosx.html. Please distribute this to colleagues that are still having problems
with trunk on Mac OS, and have difficulties trying to search for this information on the mailing list archive.

Cheers,
Radu.
--
http://openperception.org

On 11/15/2012 02:03 PM, Ken Spratlin wrote:

> I have updated this document to reflect that PCL Trunk now compiles with the
> Apple c++ (clang) Compiler.
>
> Also incorporated several corrections.
>
> PCL_Development_Build_-_Mac_OS_X_(15_Nov_2012).pdf
> <http://www.pcl-users.org/file/n4023824/PCL_Development_Build_-_Mac_OS_X_%2815_Nov_2012%29.pdf>
>
>
>
> -----
> Ken Spratlin
> Director of Innovation
> Trimble
> --
> View this message in context: http://www.pcl-users.org/Successful-PCL-Build-from-Source-on-Mac-OS-X-including-Kinfu-tp4022018p4023824.html
> Sent from the Point Cloud Library (PCL) Users mailing list mailing list archive at Nabble.com.
> _______________________________________________
> [hidden email] / http://pointclouds.org
> http://pointclouds.org/mailman/listinfo/pcl-users
>
_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: Successful PCL Build from Source on Mac OS X including Kinfu

Ken Spratlin
This post was updated on .
I just noticed there is mistake (on page 12) in one of the required changes I listed to get KinFu Large Scale to run on the 1024 MB of GPU RAM on the 2012 MacBook Pro. Here is the correct version below (changing 392 in my incorrect version to 384):

Index: gpu/kinfu_large_scale/src/internal.h
===================================================================
--- gpu/kinfu_large_scale/src/internal.h (revision 8190)
+++ gpu/kinfu_large_scale/src/internal.h (working copy)
@@ -71,7 +71,7 @@
       const float  WIDTH = 640.0f;
 
       //Should be multiple of 32
-      enum { VOLUME_X = 512, VOLUME_Y = 512, VOLUME_Z = 512 };
+      enum { VOLUME_X = 384, VOLUME_Y = 384, VOLUME_Z = 384 };

I'm presuming the same change should be made in gpu/kinfu/src/internal.h
Ken Spratlin
Reply | Threaded
Open this post in threaded view
|

CMake 2.8-10 & CUDA 5.0.36/nvcc problem

Ken Spratlin
In reply to this post by Ken Spratlin
I was just configuring a new Mac using these build instructions and took the opportunity to upgrade some of the tools and dependencies to newer versions:

CMake 2.8-10
Mercurial hg 2.4.1
Eigen 3.0.6
Flann 1.8.2
VTK 5.10.1

While then building PCL Trunk with the clang++ compiler, I encountered this error:

[ 55%] Building NVCC (Device) object cuda/features/CMakeFiles/pcl_cuda_features.dir/src/./pcl_cuda_features_generated_normal_3d.cu.o
clang: error: unsupported option '-dumpspecs'
clang: error: no input files
CMake Error at pcl_cuda_features_generated_normal_3d.cu.o.cmake:206 (message):
Error generating
/Users/ken/dev/pcl-trunk/build/cuda/features/CMakeFiles/pcl_cuda_features.dir/src/./pcl_cuda_features_generated_normal_3d.cu.o

make[2]: *** [cuda/features/CMakeFiles/pcl_cuda_features.dir/src/./pcl_cuda_features_generated_normal_3d.cu.o] Error 1
make[1]: *** [cuda/features/CMakeFiles/pcl_cuda_features.dir/all] Error 2
make: *** [all] Error 2

It appears that the llvm-g++/llvm-gcc compiler is being invoked for this file instead of clang++/clang.

I have confirmed that if I switch back to CMake 2.8-8, this problem goes away.
Ken Spratlin
Reply | Threaded
Open this post in threaded view
|

Re: CMake 2.8-10 & CUDA 5.0.36/nvcc problem

Radu B. Rusu
Administrator
Hi Ken,

Thanks for the analysis. I passed this to some of our colleagues at Kitware. We'll hopefully hear from them in the next
week (delays due to the winter holidays) or so.

Doing an online search it seems that this issue has popped up in multiple open source projects, so at least we know it's
not PCL related.

Cheers,
Radu.
--
http://openperception.org

On 12/28/2012 01:28 PM, Ken Spratlin wrote:

> I was just configuring a new Mac using these build instructions and took the
> opportunity to upgrade some of the tools and dependencies to newer versions:
>
> CMake 2.8-10
> Mercurial hg 2.4.1
> Eigen 3.0.6
> Flann 1.8.2
> VTK 5.10.1
>
> While then building PCL Trunk with the clang++ compiler, I encountered this
> error:
>
> [ 55%] Building NVCC (Device) object
> cuda/features/CMakeFiles/pcl_cuda_features.dir/src/./pcl_cuda_features_generated_normal_3d.cu.o
> clang: error: unsupported option '-dumpspecs'
> clang: error: no input files
> CMake Error at pcl_cuda_features_generated_normal_3d.cu.o.cmake:206
> (message):
> Error generating
> /Users/ken/dev/pcl-trunk/build/cuda/features/CMakeFiles/pcl_cuda_features.dir/src/./pcl_cuda_features_generated_normal_3d.cu.o
>
> make[2]: ***
> [cuda/features/CMakeFiles/pcl_cuda_features.dir/src/./pcl_cuda_features_generated_normal_3d.cu.o]
> Error 1
> make[1]: *** [cuda/features/CMakeFiles/pcl_cuda_features.dir/all] Error 2
> make: *** [all] Error 2
>
> It appears that the llvm-g++/llvm-gcc compiler is being invoked for this
> file instead of clang++/clang.
>
> I have confirmed that if I switch back to CMake 2.8-8, this problem goes
> away.
>
>
>
>
> -----
> Ken Spratlin
> Director of Innovation
> Trimble
> --
> View this message in context: http://www.pcl-users.org/Successful-PCL-Build-from-Source-on-Mac-OS-X-including-Kinfu-tp4022018p4025040.html
> Sent from the Point Cloud Library (PCL) Users mailing list mailing list archive at Nabble.com.
> _______________________________________________
> [hidden email] / http://pointclouds.org
> http://pointclouds.org/mailman/listinfo/pcl-users
>
_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: CMake 2.8-10 & CUDA 5.0.36/nvcc problem

Pat Marion
Hi Ken,

Is it possible that nvcc does not work with clang?  According to FindCUDA.cmake, CUDA_HOST_COMPILER will default to CMAKE_C_COMPILER.  In CMake 2.8.9, this would have defaulted to gcc, but in CMake 2.8.10 it will befault to /usr/bin/cc (clang).

Try setting CUDA_HOST_COMPILER to /use/bin/gcc and see if that will work.


On OSX, with CMake 2.8.9, these were defaults:

CMAKE_CXX_COMPILER /usr/bin/c++
CMAKE_C_COMPILER /usr/bin/gcc

Now, with CMake 2.8.10 this has been changed:

CMAKE_CXX_COMPILER /usr/bin/c++
CMAKE_C_COMPILER /usr/bin/cc


So if it turns out that this is the cause, and nvcc does not work with clang, then I think PCL should set CUDA_HOST_COMPILER (assuming that works) or disable CUDA when CMAKE_C_COMPILER is clang, which can be checked with this cmake code:

if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
 ...
endif()


By the way, Ken, I think you can do "make VERBOSE=1" to see the actual command line that is used to invoke nvcc.

Pat






On Sat, Dec 29, 2012 at 9:53 AM, Radu B. Rusu <[hidden email]> wrote:
Hi Ken,

Thanks for the analysis. I passed this to some of our colleagues at Kitware. We'll hopefully hear from them in the next week (delays due to the winter holidays) or so.

Doing an online search it seems that this issue has popped up in multiple open source projects, so at least we know it's not PCL related.

Cheers,
Radu.
--
http://openperception.org


On 12/28/2012 01:28 PM, Ken Spratlin wrote:
I was just configuring a new Mac using these build instructions and took the
opportunity to upgrade some of the tools and dependencies to newer versions:

CMake 2.8-10
Mercurial hg 2.4.1
Eigen 3.0.6
Flann 1.8.2
VTK 5.10.1

While then building PCL Trunk with the clang++ compiler, I encountered this
error:

[ 55%] Building NVCC (Device) object
cuda/features/CMakeFiles/pcl_cuda_features.dir/src/./pcl_cuda_features_generated_normal_3d.cu.o
clang: error: unsupported option '-dumpspecs'
clang: error: no input files
CMake Error at pcl_cuda_features_generated_normal_3d.cu.o.cmake:206
(message):
Error generating
/Users/ken/dev/pcl-trunk/build/cuda/features/CMakeFiles/pcl_cuda_features.dir/src/./pcl_cuda_features_generated_normal_3d.cu.o

make[2]: ***
[cuda/features/CMakeFiles/pcl_cuda_features.dir/src/./pcl_cuda_features_generated_normal_3d.cu.o]
Error 1
make[1]: *** [cuda/features/CMakeFiles/pcl_cuda_features.dir/all] Error 2
make: *** [all] Error 2

It appears that the llvm-g++/llvm-gcc compiler is being invoked for this
file instead of clang++/clang.

I have confirmed that if I switch back to CMake 2.8-8, this problem goes
away.




-----
Ken Spratlin
Director of Innovation
Trimble
--
View this message in context: http://www.pcl-users.org/Successful-PCL-Build-from-Source-on-Mac-OS-X-including-Kinfu-tp4022018p4025040.html
Sent from the Point Cloud Library (PCL) Users mailing list mailing list archive at Nabble.com.
_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users



_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: CMake 2.8-10 & CUDA 5.0.36/nvcc problem

Ken Spratlin
This post was updated on .
Pat,

I think you have probably tracked the problem to root cause.

NVIDIA's on-line documentation is a little out of date, but here is what it says:

     Compiling the Examples
     The version of the CUDA Toolkit can be checked by running nvcc -V in a terminal window.
     The nvcc command runs the compiler driver that compiles CUDA programs. It calls the gcc
     compiler for C code and the NVIDIA PTX compiler for the CUDA code.

Surprising nvcc would not also support clang as nvcc and clang are both LLVM-based.

I'm about to depart on trip, but will try this (setting CUDA_HOST_COMPILER to llvm-gcc) out in next couple of days (including verifying it with the VERBOSE option - thanks!).

With CMake 2.8-8, everything worked fine with clang including nvcc, but perhaps that setup was calling llvm-gcc for nvcc and I just never noticed that. I thought I was overriding both compilers to use clang++/clang.

Thank you
Ken

Pat Marion wrote
Is it possible that nvcc does not work with clang?  According to
FindCUDA.cmake, CUDA_HOST_COMPILER will default to CMAKE_C_COMPILER.  In
CMake 2.8.9, this would have defaulted to gcc, but in CMake 2.8.10 it will
befault to /usr/bin/cc (clang).

Try setting CUDA_HOST_COMPILER to /use/bin/gcc and see if that will work.


On OSX, with CMake 2.8.9, these were defaults:

CMAKE_CXX_COMPILER /usr/bin/c++
CMAKE_C_COMPILER /usr/bin/gcc

Now, with CMake 2.8.10 this has been changed:

CMAKE_CXX_COMPILER /usr/bin/c++
CMAKE_C_COMPILER /usr/bin/cc


So if it turns out that this is the cause, and nvcc does not work with
clang, then I think PCL should set CUDA_HOST_COMPILER (assuming that works)
or disable CUDA when CMAKE_C_COMPILER is clang, which can be checked with
this cmake code:

if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
 ...
endif()


By the way, Ken, I think you can do "make VERBOSE=1" to see the actual
command line that is used to invoke nvcc.

Pat
Ken Spratlin
Reply | Threaded
Open this post in threaded view
|

Re: CMake 2.8-10 & CUDA 5.0.36/nvcc problem

Ken Spratlin
Pat,

You are right.

Below is the nvcc command when using CMake 2.8.8 (from make VERBOSE=1), which builds ok.

[ 55%] Building NVCC (Device) object cuda/features/CMakeFiles/pcl_cuda_features.dir/src/./pcl_cuda_features_generated_normal_3d.cu.o
{...deleted a bunch of lines...}
/Developer/NVIDIA/CUDA-5.0/bin/nvcc -M -D__CUDACC__ /Users/ken/dev/pcl-trunk/cuda/features/src/normal_3d.cu -o /Users/ken/dev/pcl-trunk/build/cuda/features/CMakeFiles/pcl_cuda_features.dir/src/pcl_cuda_features_generated_normal_3d.cu.o.NVCC-depend -m64 -DEIGEN_USE_NEW_STDVECTOR -DEIGEN_YES_I_KNOW_SPARSE_MODULE_IS_NOT_STABLE_YET -Dqh_QHpointer -Dpcl_cuda_features_EXPORTS -Xcompiler ,\"-Qunused-arguments\",\"-Wno-invalid-offsetof\",\"-fPIC\",\"-O2\",\"-g\",\"-msse4.2\",\"-mfpmath=sse\" -gencode arch=compute_20,code=sm_20 -gencode arch=compute_20,code=sm_21 -gencode arch=compute_30,code=sm_30 -DPCLAPI_EXPORTS -DNVCC -I/Developer/NVIDIA/CUDA-5.0/include -I/usr/local/include -I/usr/local/include/eigen3 -I/usr/local/include -I/usr/local/include -I/usr/local/include -I/usr/include/ni -I/Users/ken/dev/pcl-trunk/build/include -I/Users/ken/dev/pcl-trunk/cuda/common/include -I/Users/ken/dev/pcl-trunk/io/include -I/Users/ken/dev/pcl-trunk/common/include -I/Users/ken/dev/pcl-trunk/cuda/features/include -I/Developer/NVIDIA/CUDA-5.0/include

And below is the offending nvcc command when using CMake 2.8.10.2 (from make VERBOSE=1). NOTE THE "-ccbin /usr/bin/cc" RIGHT BEFORE THE "-m64".

[ 55%] Building NVCC (Device) object cuda/features/CMakeFiles/pcl_cuda_features.dir/src/./pcl_cuda_features_generated_normal_3d.cu.o
{...deleted a bunch of lines...}
/Developer/NVIDIA/CUDA-5.0/bin/nvcc -M -D__CUDACC__ /Users/ken/dev/pcl-trunk/cuda/features/src/normal_3d.cu -o /Users/ken/dev/pcl-trunk/build/cuda/features/CMakeFiles/pcl_cuda_features.dir/src/pcl_cuda_features_generated_normal_3d.cu.o.NVCC-depend -ccbin /usr/bin/cc -m64 -DEIGEN_USE_NEW_STDVECTOR -DEIGEN_YES_I_KNOW_SPARSE_MODULE_IS_NOT_STABLE_YET -Dqh_QHpointer -Dpcl_cuda_features_EXPORTS -Xcompiler ,\"-Qunused-arguments\",\"-Wno-invalid-offsetof\",\"-fPIC\",\"-O2\",\"-g\",\"-DNDEBUG\",\"-msse4.2\",\"-mfpmath=sse\" -gencode arch=compute_20,code=sm_20 -gencode arch=compute_20,code=sm_21 -gencode arch=compute_30,code=sm_30 -DPCLAPI_EXPORTS -DNVCC -I/Developer/NVIDIA/CUDA-5.0/include -I/usr/local/include -I/usr/local/include/eigen3 -I/usr/local/include -I/usr/local/include -I/usr/local/include -I/usr/include/ni -I/Users/ken/dev/pcl-trunk/build/include -I/Users/ken/dev/pcl-trunk/cuda/common/include -I/Users/ken/dev/pcl-trunk/io/include -I/Users/ken/dev/pcl-trunk/common/include -I/Users/ken/dev/pcl-trunk/cuda/features/include -I/Developer/NVIDIA/CUDA-5.0/include
clang: error: unsupported option '-dumpspecs'
clang: error: no input files
CMake Error at pcl_cuda_features_generated_normal_3d.cu.o.cmake:206 (message):
  Error generating
  /Users/ken/dev/pcl-trunk/build/cuda/features/CMakeFiles/pcl_cuda_features.dir/src/./pcl_cuda_features_generated_normal_3d.cu.o


Looking in CMakeCache.txt for the build with CMake 2.8.10.2, I find:

     //Host side compiler used by NVCC
     CUDA_HOST_COMPILER:FILEPATH=/usr/bin/cc

If I change CUDA_HOST_COMPILER from /usr/bin/cc (which is cc@ -> clang) to /usr/bin/gcc (which is gcc@ -> llvm-gcc-4.2), and run make again, everything builds ok with CMake 2.8.10.2.

Below is the nvcc command for this case. Note the "-ccbin /usr/bin/gcc" right before the "-m64". Now everything builds ok with CMake 2.8.10.2.

[ 55%] Building NVCC (Device) object cuda/features/CMakeFiles/pcl_cuda_features.dir/src/./pcl_cuda_features_generated_normal_3d.cu.o
{...deleted a bunch of lines...}
/Developer/NVIDIA/CUDA-5.0/bin/nvcc -M -D__CUDACC__ /Users/ken/dev/pcl-trunk/cuda/features/src/normal_3d.cu -o /Users/ken/dev/pcl-trunk/build/cuda/features/CMakeFiles/pcl_cuda_features.dir/src/pcl_cuda_features_generated_normal_3d.cu.o.NVCC-depend -ccbin /usr/bin/gcc -m64 -DEIGEN_USE_NEW_STDVECTOR -DEIGEN_YES_I_KNOW_SPARSE_MODULE_IS_NOT_STABLE_YET -Dqh_QHpointer -Dpcl_cuda_features_EXPORTS -Xcompiler ,\"-Qunused-arguments\",\"-Wno-invalid-offsetof\",\"-fPIC\",\"-O2\",\"-g\",\"-DNDEBUG\",\"-msse4.2\",\"-mfpmath=sse\" -gencode arch=compute_20,code=sm_20 -gencode arch=compute_20,code=sm_21 -gencode arch=compute_30,code=sm_30 -DPCLAPI_EXPORTS -DNVCC -I/Developer/NVIDIA/CUDA-5.0/include -I/usr/local/include -I/usr/local/include/eigen3 -I/usr/local/include -I/usr/local/include -I/usr/local/include -I/usr/include/ni -I/Users/ken/dev/pcl-trunk/build/include -I/Users/ken/dev/pcl-trunk/cuda/common/include -I/Users/ken/dev/pcl-trunk/io/include -I/Users/ken/dev/pcl-trunk/common/include -I/Users/ken/dev/pcl-trunk/cuda/features/include -I/Developer/NVIDIA/CUDA-5.0/include

Ken
Ken Spratlin
Reply | Threaded
Open this post in threaded view
|

Re: CMake 2.8-10 & CUDA 5.0.36/nvcc problem

Pat Marion
Hi Ken,

Glad you got it resolved.  I spoke with Radu, and we're coming up with a plan for putting a fix into PCL that will allow the OSX build to work out of the box with cmake 2.8.10.  I will also contact the CMake developers because I think this new behavior means that cmake overrides the compiler defined in your nvcc.profile file, which ought to be respected.

Pat

On Tue, Jan 1, 2013 at 2:56 PM, Ken Spratlin <[hidden email]> wrote:
Pat,

You are right.

Below is the nvcc command when using CMake 2.8.8 (from make VERBOSE=1),
which builds ok.

[ 55%] Building NVCC (Device) object
cuda/features/CMakeFiles/pcl_cuda_features.dir/src/./pcl_cuda_features_generated_normal_3d.cu.o
{...deleted a bunch of lines...}
/Developer/NVIDIA/CUDA-5.0/bin/nvcc -M -D__CUDACC__
/Users/ken/dev/pcl-trunk/cuda/features/src/normal_3d.cu -o
/Users/ken/dev/pcl-trunk/build/cuda/features/CMakeFiles/pcl_cuda_features.dir/src/pcl_cuda_features_generated_normal_3d.cu.o.NVCC-depend
-m64 -DEIGEN_USE_NEW_STDVECTOR
-DEIGEN_YES_I_KNOW_SPARSE_MODULE_IS_NOT_STABLE_YET -Dqh_QHpointer
-Dpcl_cuda_features_EXPORTS -Xcompiler
,\"-Qunused-arguments\",\"-Wno-invalid-offsetof\",\"-fPIC\",\"-O2\",\"-g\",\"-msse4.2\",\"-mfpmath=sse\"
-gencode arch=compute_20,code=sm_20 -gencode arch=compute_20,code=sm_21
-gencode arch=compute_30,code=sm_30 -DPCLAPI_EXPORTS -DNVCC
-I/Developer/NVIDIA/CUDA-5.0/include -I/usr/local/include
-I/usr/local/include/eigen3 -I/usr/local/include -I/usr/local/include
-I/usr/local/include -I/usr/include/ni
-I/Users/ken/dev/pcl-trunk/build/include
-I/Users/ken/dev/pcl-trunk/cuda/common/include
-I/Users/ken/dev/pcl-trunk/io/include
-I/Users/ken/dev/pcl-trunk/common/include
-I/Users/ken/dev/pcl-trunk/cuda/features/include
-I/Developer/NVIDIA/CUDA-5.0/include

And below is the offending nvcc command when using CMake 2.8.10.2 (from make
VERBOSE=1). NOTE THE "-ccbin /usr/bin/cc" RIGHT BEFORE THE "-m64".

[ 55%] Building NVCC (Device) object
cuda/features/CMakeFiles/pcl_cuda_features.dir/src/./pcl_cuda_features_generated_normal_3d.cu.o
{...deleted a bunch of lines...}
/Developer/NVIDIA/CUDA-5.0/bin/nvcc -M -D__CUDACC__
/Users/ken/dev/pcl-trunk/cuda/features/src/normal_3d.cu -o
/Users/ken/dev/pcl-trunk/build/cuda/features/CMakeFiles/pcl_cuda_features.dir/src/pcl_cuda_features_generated_normal_3d.cu.o.NVCC-depend
-ccbin /usr/bin/cc -m64 -DEIGEN_USE_NEW_STDVECTOR
-DEIGEN_YES_I_KNOW_SPARSE_MODULE_IS_NOT_STABLE_YET -Dqh_QHpointer
-Dpcl_cuda_features_EXPORTS -Xcompiler
,\"-Qunused-arguments\",\"-Wno-invalid-offsetof\",\"-fPIC\",\"-O2\",\"-g\",\"-DNDEBUG\",\"-msse4.2\",\"-mfpmath=sse\"
-gencode arch=compute_20,code=sm_20 -gencode arch=compute_20,code=sm_21
-gencode arch=compute_30,code=sm_30 -DPCLAPI_EXPORTS -DNVCC
-I/Developer/NVIDIA/CUDA-5.0/include -I/usr/local/include
-I/usr/local/include/eigen3 -I/usr/local/include -I/usr/local/include
-I/usr/local/include -I/usr/include/ni
-I/Users/ken/dev/pcl-trunk/build/include
-I/Users/ken/dev/pcl-trunk/cuda/common/include
-I/Users/ken/dev/pcl-trunk/io/include
-I/Users/ken/dev/pcl-trunk/common/include
-I/Users/ken/dev/pcl-trunk/cuda/features/include
-I/Developer/NVIDIA/CUDA-5.0/include
clang: error: unsupported option '-dumpspecs'
clang: error: no input files
CMake Error at pcl_cuda_features_generated_normal_3d.cu.o.cmake:206
(message):
  Error generating

/Users/ken/dev/pcl-trunk/build/cuda/features/CMakeFiles/pcl_cuda_features.dir/src/./pcl_cuda_features_generated_normal_3d.cu.o


Looking in CMakeCache.txt for the build with CMake 2.8.10.2, I find:

     //Host side compiler used by NVCC
     CUDA_HOST_COMPILER:FILEPATH=/usr/bin/cc

If I change CUDA_HOST_COMPILER from /usr/bin/cc (which is cc@ -> clang) to
/usr/bin/gcc (which is gcc@ -> llvm-gcc-4.2), and run make again, everything
builds ok with CMake 2.8.10.2.

Below is the nvcc command for this case. Note the "-ccbin /usr/bin/gcc"
right before the "-m64". Now everything builds ok with CMake 2.8.10.2.

[ 55%] Building NVCC (Device) object
cuda/features/CMakeFiles/pcl_cuda_features.dir/src/./pcl_cuda_features_generated_normal_3d.cu.o
{...deleted a bunch of lines...}
/Developer/NVIDIA/CUDA-5.0/bin/nvcc -M -D__CUDACC__
/Users/ken/dev/pcl-trunk/cuda/features/src/normal_3d.cu -o
/Users/ken/dev/pcl-trunk/build/cuda/features/CMakeFiles/pcl_cuda_features.dir/src/pcl_cuda_features_generated_normal_3d.cu.o.NVCC-depend
-ccbin /usr/bin/gcc -m64 -DEIGEN_USE_NEW_STDVECTOR
-DEIGEN_YES_I_KNOW_SPARSE_MODULE_IS_NOT_STABLE_YET -Dqh_QHpointer
-Dpcl_cuda_features_EXPORTS -Xcompiler
,\"-Qunused-arguments\",\"-Wno-invalid-offsetof\",\"-fPIC\",\"-O2\",\"-g\",\"-DNDEBUG\",\"-msse4.2\",\"-mfpmath=sse\"
-gencode arch=compute_20,code=sm_20 -gencode arch=compute_20,code=sm_21
-gencode arch=compute_30,code=sm_30 -DPCLAPI_EXPORTS -DNVCC
-I/Developer/NVIDIA/CUDA-5.0/include -I/usr/local/include
-I/usr/local/include/eigen3 -I/usr/local/include -I/usr/local/include
-I/usr/local/include -I/usr/include/ni
-I/Users/ken/dev/pcl-trunk/build/include
-I/Users/ken/dev/pcl-trunk/cuda/common/include
-I/Users/ken/dev/pcl-trunk/io/include
-I/Users/ken/dev/pcl-trunk/common/include
-I/Users/ken/dev/pcl-trunk/cuda/features/include
-I/Developer/NVIDIA/CUDA-5.0/include

Ken




-----
Ken Spratlin
Director of Innovation
Trimble
--
View this message in context: http://www.pcl-users.org/Successful-PCL-Build-from-Source-on-Mac-OS-X-including-Kinfu-tp4022018p4025078.html
Sent from the Point Cloud Library (PCL) Users mailing list mailing list archive at Nabble.com.
_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users


_______________________________________________
[hidden email] / http://pointclouds.org
http://pointclouds.org/mailman/listinfo/pcl-users
Reply | Threaded
Open this post in threaded view
|

Re: Successful PCL Build from Source on Mac OS X including Kinfu

rahulbudhiraja
This post has NOT been accepted by the mailing list yet.
In reply to this post by Ken Spratlin
Hi Ken,

Thanks for the guide ! Quick qn,does the pcl_kinfu_largeScale_texture_output app work with the merged mesh on OSX? .Running the app loads the mesh but gives a malloc: error while loading the textures,I have put the textures in the correct directory according to the tutorial on the website but it doesnt seem to work.

Any ideas?

Thanks!
Reply | Threaded
Open this post in threaded view
|

Re: pcl_kinfu_largeScale_texture_output malloc error

Ken Spratlin
Hi

I just checked out pcl_kinfu_largeScale_texture_output using latest trunk build - revision 8411. I followed these tutorial instructions:

http://www.pointclouds.org/documentation/tutorials/using_kinfu_large_scale.php#using-kinfu-large-scale

Everything ran ok including the pcl_kinfu_largeScale_texture_output Step 3. My data collection generated 3 mesh_#.ply files and 4 #.png and #.txt files, so a relatively small dataset.

Sorry, no ideas.

Regards
Ken

rahulbudhiraja wrote
Hi Ken,

Thanks for the guide ! Quick qn,does the pcl_kinfu_largeScale_texture_output app work with the merged mesh on OSX? .Running the app loads the mesh but gives a malloc: error while loading the textures,I have put the textures in the correct directory according to the tutorial on the website but it doesnt seem to work.

Any ideas?

Thanks!
Ken Spratlin
Reply | Threaded
Open this post in threaded view
|

Re: Successful PCL Build from Source on Mac OS X including Kinfu

Ken Spratlin
This post was updated on .
In reply to this post by Ken Spratlin
I have updated the document again to:

1) reflect having installed and built both on the original MacBook Pro (Mid 2012) and now iMac (Late 2012), so Kinfu and Kinfu Large Scale frame rates for NVIDIA GeForce GTX 680MX with 2048 MB now included also

2) list more recent versions of dependencies used
 
3) list fix for "clang error: unsupported option '-dumpspecs'" caused by CMake 2.8.10.2

4) various other cleanup and typos fixed

PCL_Development_Build_-_Mac_OS_X_(19_Feb_2013).pdf
Ken Spratlin
Reply | Threaded
Open this post in threaded view
|

Re: Successful PCL Build from Source on Mac OS X including Kinfu

Ken Spratlin
In reply to this post by Ken Spratlin
I updated the document again (Revision 3, 20 Feb 2013):

1) added general comment about how long the entire process takes (page 1) - it is relatively quick

2) added 2 more configurations that were built (page 6)

     - Config #1 with g++/gcc instead of clang
     - Config #4 with newest versions of the build tools & dependences

3) added missing commands for VTK ccmake step (page 10)

4) added section describing how to uninstall some of the tools & dependencies (page 25-26); section incomplete

5) fixed more typos

Am hopefully done with this for a few months.

PCL_Development_Build_-_Mac_OS_X_(20_Feb_2013).pdf
Ken Spratlin
Reply | Threaded
Open this post in threaded view
|

Re: Successful PCL Build from Source on Mac OS X including Kinfu

granteous
This post has NOT been accepted by the mailing list yet.
Ken, good work on the tutorial. I find doing this tutorial a little easier than the superbuild, for now.

I can't, for the life of me, get Boost to build successfully.

At the end:
...failed updating 10 targets...
...skipped 26 targets...
...updated 10568 targets...

here is the last bit of the output, do you recognize these errors. I'm on your third revision pdf with the exact same Macbook Pro Retina Display build:

/usr/include/c++/4.2.1/cxxabi.h:61: error: typedef ‘__cxxabiv1::__cxa_cdtor_return_type’ is initialized (use __typeof__ instead)
/usr/include/c++/4.2.1/cxxabi.h:61: error: ‘__cxa_cdtor_type’ was not declared in this scope
/usr/include/c++/4.2.1/cxxabi.h:66: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:67: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:71: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:72: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:77: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:78: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:82: error: ‘__cxa_vec_ctor_return_type’ does not name a type
/usr/include/c++/4.2.1/cxxabi.h:87: error: ‘__cxa_vec_ctor_return_type’ does not name a type
/usr/include/c++/4.2.1/cxxabi.h:96: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:100: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:105: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:109: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:114: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:118: error: ‘__guard’ was not declared in this scope
/usr/include/c++/4.2.1/cxxabi.h:118: error: expected primary-expression before ‘)’ token
/usr/include/c++/4.2.1/cxxabi.h:121: error: variable or field ‘__cxa_guard_release’ declared void
/usr/include/c++/4.2.1/cxxabi.h:121: error: ‘__guard’ was not declared in this scope
/usr/include/c++/4.2.1/cxxabi.h:121: error: expected primary-expression before ‘)’ token
/usr/include/c++/4.2.1/cxxabi.h:124: error: variable or field ‘__cxa_guard_abort’ declared void
/usr/include/c++/4.2.1/cxxabi.h:124: error: ‘__guard’ was not declared in this scope
/usr/include/c++/4.2.1/cxxabi.h:124: error: expected primary-expression before ‘)’ token

    "g++"  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -gdwarf-2 -fexceptions  -DBOOST_ALL_NO_LIB=1 -DBOOST_PYTHON_SOURCE -DBOOST_PYTHON_STATIC_LIB -DNDEBUG  -I"." -I"/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7" -c -o "bin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi/converter/type_id.o" "libs/python/src/converter/type_id.cpp"

...failed darwin.compile.c++ bin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi/converter/type_id.o...
common.mkdir bin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi/object
darwin.compile.c++ bin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi/object/enum.o
darwin.compile.c++ bin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi/object/class.o
darwin.compile.c++ bin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi/object/function.o
darwin.compile.c++ bin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi/object/inheritance.o
darwin.compile.c++ bin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi/object/life_support.o
darwin.compile.c++ bin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi/object/pickle_support.o
darwin.compile.c++ bin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi/errors.o
darwin.compile.c++ bin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi/module.o
darwin.compile.c++ bin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi/converter/builtin_converters.o
darwin.compile.c++ bin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi/converter/arg_to_python_base.o
darwin.compile.c++ bin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi/object/iterator.o
darwin.compile.c++ bin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi/object/stl_iterator.o
darwin.compile.c++ bin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi/object_protocol.o
darwin.compile.c++ bin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi/object_operators.o
darwin.compile.c++ bin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi/wrapper.o
darwin.compile.c++ bin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi/import.o
darwin.compile.c++ bin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi/exec.o
darwin.compile.c++ bin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi/object/function_doc_signature.o
...skipped <pbin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi>libboost_python.a(clean) for lack of <pbin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi>converter/type_id.o...
...skipped <pbin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi>libboost_python.a for lack of <pbin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi>converter/type_id.o...
...skipped <p/usr/local/lib>libboost_python.a for lack of <pbin.v2/libs/python/build/darwin-4.2.1/release/link-static/threading-multi>libboost_python.a...
common.mkdir bin.v2/libs/random/build/darwin-4.2.1/release/link-static
common.mkdir bin.v2/libs/random/build/darwin-4.2.1/release/link-static/threading-multi
darwin.compile.c++ bin.v2/libs/random/build/darwin-4.2.1/release/link-static/threading-multi/random_device.o
darwin.archive bin.v2/libs/random/build/darwin-4.2.1/release/link-static/threading-multi/libboost_random.a
common.copy /usr/local/lib/libboost_random.a
common.mkdir bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static
common.mkdir bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/basic_archive.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/basic_iarchive.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/basic_iserializer.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/basic_oarchive.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/basic_oserializer.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/basic_pointer_iserializer.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/basic_pointer_oserializer.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/basic_serializer_map.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/basic_text_iprimitive.o
...on 10500th target...
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/basic_text_oprimitive.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/basic_xml_archive.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/binary_iarchive.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/binary_oarchive.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/extended_type_info.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/extended_type_info_typeid.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/extended_type_info_no_rtti.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/polymorphic_iarchive.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/polymorphic_oarchive.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/stl_port.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/text_iarchive.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/text_oarchive.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/void_cast.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/archive_exception.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/xml_grammar.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/xml_iarchive.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/xml_oarchive.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/xml_archive_exception.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/shared_ptr_helper.o
darwin.archive bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/libboost_serialization.a
/usr/bin/libtool: file: bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/stl_port.o has no symbols
common.copy /usr/local/lib/libboost_serialization.a
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/basic_text_wiprimitive.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/basic_text_woprimitive.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/text_wiarchive.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/text_woarchive.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/utf8_codecvt_facet.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/xml_wgrammar.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/xml_wiarchive.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/xml_woarchive.o
darwin.compile.c++ bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/codecvt_null.o
darwin.archive bin.v2/libs/serialization/build/darwin-4.2.1/release/link-static/threading-multi/libboost_wserialization.a
common.copy /usr/local/lib/libboost_wserialization.a
common.mkdir bin.v2/libs/signals/build/darwin-4.2.1/release/link-static
common.mkdir bin.v2/libs/signals/build/darwin-4.2.1/release/link-static/threading-multi
darwin.compile.c++ bin.v2/libs/signals/build/darwin-4.2.1/release/link-static/threading-multi/trackable.o
darwin.compile.c++ bin.v2/libs/signals/build/darwin-4.2.1/release/link-static/threading-multi/connection.o
darwin.compile.c++ bin.v2/libs/signals/build/darwin-4.2.1/release/link-static/threading-multi/named_slot_map.o
darwin.compile.c++ bin.v2/libs/signals/build/darwin-4.2.1/release/link-static/threading-multi/signal_base.o
darwin.compile.c++ bin.v2/libs/signals/build/darwin-4.2.1/release/link-static/threading-multi/slot.o
darwin.archive bin.v2/libs/signals/build/darwin-4.2.1/release/link-static/threading-multi/libboost_signals.a
common.copy /usr/local/lib/libboost_signals.a
darwin.compile.c++ bin.v2/libs/test/build/darwin-4.2.1/release/link-static/threading-multi/cpp_main.o
...skipped <pbin.v2/libs/test/build/darwin-4.2.1/release/link-static/threading-multi>libboost_prg_exec_monitor.a(clean) for lack of <pbin.v2/libs/test/build/darwin-4.2.1/release/link-static/threading-multi>execution_monitor.o...
...skipped <pbin.v2/libs/test/build/darwin-4.2.1/release/link-static/threading-multi>libboost_prg_exec_monitor.a for lack of <pbin.v2/libs/test/build/darwin-4.2.1/release/link-static/threading-multi>execution_monitor.o...
...skipped <p/usr/local/lib>libboost_prg_exec_monitor.a for lack of <pbin.v2/libs/test/build/darwin-4.2.1/release/link-static/threading-multi>libboost_prg_exec_monitor.a...
darwin.compile.c++ bin.v2/libs/test/build/darwin-4.2.1/release/link-static/threading-multi/exception_safety.o
darwin.compile.c++ bin.v2/libs/test/build/darwin-4.2.1/release/link-static/threading-multi/interaction_based.o
darwin.compile.c++ bin.v2/libs/test/build/darwin-4.2.1/release/link-static/threading-multi/logged_expectations.o
...skipped <pbin.v2/libs/test/build/darwin-4.2.1/release/link-static/threading-multi>libboost_unit_test_framework.a(clean) for lack of <pbin.v2/libs/test/build/darwin-4.2.1/release/link-static/threading-multi>execution_monitor.o...
...skipped <pbin.v2/libs/test/build/darwin-4.2.1/release/link-static/threading-multi>libboost_unit_test_framework.a for lack of <pbin.v2/libs/test/build/darwin-4.2.1/release/link-static/threading-multi>execution_monitor.o...
...skipped <p/usr/local/lib>libboost_unit_test_framework.a for lack of <pbin.v2/libs/test/build/darwin-4.2.1/release/link-static/threading-multi>libboost_unit_test_framework.a...
common.mkdir bin.v2/libs/thread/build/darwin-4.2.1/release/link-static
common.mkdir bin.v2/libs/thread/build/darwin-4.2.1/release/link-static/threading-multi
common.mkdir bin.v2/libs/thread/build/darwin-4.2.1/release/link-static/threading-multi/pthread
darwin.compile.c++ bin.v2/libs/thread/build/darwin-4.2.1/release/link-static/threading-multi/pthread/thread.o
darwin.compile.c++ bin.v2/libs/thread/build/darwin-4.2.1/release/link-static/threading-multi/pthread/once.o
darwin.compile.c++ bin.v2/libs/thread/build/darwin-4.2.1/release/link-static/threading-multi/future.o
In file included from ./boost/units/detail/utility.hpp:20,
                 from ./boost/exception/detail/type_info.hpp:19,
                 from ./boost/exception/detail/object_hex_dump.hpp:15,
                 from ./boost/exception/to_string_stub.hpp:16,
                 from ./boost/exception/info.hpp:16,
                 from ./boost/exception/detail/exception_ptr.hpp:20,
                 from ./boost/exception_ptr.hpp:9,
                 from ./boost/thread/future.hpp:18,
                 from libs/thread/src/future.cpp:6:
/usr/include/c++/4.2.1/cxxabi.h:52:32: error: bits/cxxabi_tweaks.h: No such file or directory
In file included from ./boost/units/detail/utility.hpp:20,
                 from ./boost/exception/detail/type_info.hpp:19,
                 from ./boost/exception/detail/object_hex_dump.hpp:15,
                 from ./boost/exception/to_string_stub.hpp:16,
                 from ./boost/exception/info.hpp:16,
                 from ./boost/exception/detail/exception_ptr.hpp:20,
                 from ./boost/exception_ptr.hpp:9,
                 from ./boost/thread/future.hpp:18,
                 from libs/thread/src/future.cpp:6:
/usr/include/c++/4.2.1/cxxabi.h:61: error: typedef ‘__cxxabiv1::__cxa_cdtor_return_type’ is initialized (use __typeof__ instead)
/usr/include/c++/4.2.1/cxxabi.h:61: error: ‘__cxa_cdtor_type’ was not declared in this scope
/usr/include/c++/4.2.1/cxxabi.h:66: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:67: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:71: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:72: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:77: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:78: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:82: error: ‘__cxa_vec_ctor_return_type’ does not name a type
/usr/include/c++/4.2.1/cxxabi.h:87: error: ‘__cxa_vec_ctor_return_type’ does not name a type
/usr/include/c++/4.2.1/cxxabi.h:96: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:100: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:105: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:109: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:114: error: ‘__cxa_cdtor_type’ has not been declared
/usr/include/c++/4.2.1/cxxabi.h:118: error: ‘__guard’ was not declared in this scope
/usr/include/c++/4.2.1/cxxabi.h:118: error: expected primary-expression before ‘)’ token
/usr/include/c++/4.2.1/cxxabi.h:121: error: variable or field ‘__cxa_guard_release’ declared void
/usr/include/c++/4.2.1/cxxabi.h:121: error: ‘__guard’ was not declared in this scope
/usr/include/c++/4.2.1/cxxabi.h:121: error: expected primary-expression before ‘)’ token
/usr/include/c++/4.2.1/cxxabi.h:124: error: variable or field ‘__cxa_guard_abort’ declared void
/usr/include/c++/4.2.1/cxxabi.h:124: error: ‘__guard’ was not declared in this scope
/usr/include/c++/4.2.1/cxxabi.h:124: error: expected primary-expression before ‘)’ token

    "g++"  -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pedantic -gdwarf-2 -fexceptions -Wextra -Wno-long-long -ansi -fpermissive -pedantic -DBOOST_ALL_NO_LIB=1 -DBOOST_CHRONO_STATIC_LINK=1 -DBOOST_SYSTEM_NO_DEPRECATED -DBOOST_SYSTEM_STATIC_LINK=1 -DBOOST_THREAD_BUILD_LIB=1 -DBOOST_THREAD_POSIX -DNDEBUG  -I"." -c -o "bin.v2/libs/thread/build/darwin-4.2.1/release/link-static/threading-multi/future.o" "libs/thread/src/future.cpp"

...failed darwin.compile.c++ bin.v2/libs/thread/build/darwin-4.2.1/release/link-static/threading-multi/future.o...
...skipped <pbin.v2/libs/thread/build/darwin-4.2.1/release/link-static/threading-multi>libboost_thread.a(clean) for lack of <pbin.v2/libs/thread/build/darwin-4.2.1/release/link-static/threading-multi>future.o...
...skipped <pbin.v2/libs/thread/build/darwin-4.2.1/release/link-static/threading-multi>libboost_thread.a for lack of <pbin.v2/libs/thread/build/darwin-4.2.1/release/link-static/threading-multi>future.o...
...skipped <p/usr/local/lib>libboost_thread.a for lack of <pbin.v2/libs/thread/build/darwin-4.2.1/release/link-static/threading-multi>libboost_thread.a...
common.mkdir bin.v2/libs/timer/build/darwin-4.2.1/release/link-static
common.mkdir bin.v2/libs/timer/build/darwin-4.2.1/release/link-static/threading-multi
darwin.compile.c++ bin.v2/libs/timer/build/darwin-4.2.1/release/link-static/threading-multi/auto_timers_construction.o
darwin.compile.c++ bin.v2/libs/timer/build/darwin-4.2.1/release/link-static/threading-multi/cpu_timer.o
libs/timer/src/cpu_timer.cpp: In function ‘void<unnamed>::get_cpu_times(boost::timer::cpu_times&)’:
libs/timer/src/cpu_timer.cpp:139: warning: comparison between signed and unsigned integer expressions
darwin.archive bin.v2/libs/timer/build/darwin-4.2.1/release/link-static/threading-multi/libboost_timer.a
common.copy /usr/local/lib/libboost_timer.a
common.mkdir bin.v2/libs/wave/build/darwin-4.2.1/release/link-static
common.mkdir bin.v2/libs/wave/build/darwin-4.2.1/release/link-static/threading-multi
darwin.compile.c++ bin.v2/libs/wave/build/darwin-4.2.1/release/link-static/threading-multi/instantiate_cpp_exprgrammar.o
darwin.compile.c++ bin.v2/libs/wave/build/darwin-4.2.1/release/link-static/threading-multi/instantiate_cpp_grammar.o
darwin.compile.c++ bin.v2/libs/wave/build/darwin-4.2.1/release/link-static/threading-multi/instantiate_cpp_literalgrs.o
darwin.compile.c++ bin.v2/libs/wave/build/darwin-4.2.1/release/link-static/threading-multi/instantiate_defined_grammar.o
darwin.compile.c++ bin.v2/libs/wave/build/darwin-4.2.1/release/link-static/threading-multi/instantiate_predef_macros.o
darwin.compile.c++ bin.v2/libs/wave/build/darwin-4.2.1/release/link-static/threading-multi/instantiate_re2c_lexer.o
darwin.compile.c++ bin.v2/libs/wave/build/darwin-4.2.1/release/link-static/threading-multi/instantiate_re2c_lexer_str.o
darwin.compile.c++ bin.v2/libs/wave/build/darwin-4.2.1/release/link-static/threading-multi/token_ids.o
darwin.compile.c++ bin.v2/libs/wave/build/darwin-4.2.1/release/link-static/threading-multi/wave_config_constant.o
common.mkdir bin.v2/libs/wave/build/darwin-4.2.1/release/link-static/threading-multi/cpplexer
common.mkdir bin.v2/libs/wave/build/darwin-4.2.1/release/link-static/threading-multi/cpplexer/re2clex
darwin.compile.c++ bin.v2/libs/wave/build/darwin-4.2.1/release/link-static/threading-multi/cpplexer/re2clex/aq.o
darwin.compile.c++ bin.v2/libs/wave/build/darwin-4.2.1/release/link-static/threading-multi/cpplexer/re2clex/cpp_re.o
darwin.archive bin.v2/libs/wave/build/darwin-4.2.1/release/link-static/threading-multi/libboost_wave.a
common.copy /usr/local/lib/libboost_wave.a
...failed updating 10 targets...
...skipped 26 targets...
...updated 10568 targets...



I've tried numerous Boost libraries, etc, etc. Can't get this thing to build at all.

Regards,
Grant Paque
12