2015-11-09 43 views
0

我想在Mac OSX上的优胜美地(v10.10.4)利用ROS编译LSD-SLAM。 ROS Jade被设置并且源代码已被检出。cmake的ROS失败:Mac OSX上部署目标不匹配

然而rosmake似乎失败。

这里是输出:

[ rosmake ] rosmake starting...             
[ rosmake ] Packages requested are: ['lsd_slam']         
[ rosmake ] Logging to directory /Users/apple/.ros/rosmake/rosmake_output-20151109-185908 
[ rosmake ] Expanded args ['lsd_slam'] to: 
['lsd_slam_core', 'lsd_slam_viewer'] 
[rosmake-0] Starting >>> catkin [ make ]           
[rosmake-0] Finished <<< catkin ROS_NOBUILD in package catkin 
No Makefile in package catkin 
[rosmake-0] Starting >>> genmsg [ make ]           
[rosmake-0] Finished <<< genmsg ROS_NOBUILD in package genmsg 
No Makefile in package genmsg 
[rosmake-0] Starting >>> genlisp [ make ] 

。 。 。 大量积聚的消息 的。 。 。

[rosmake-0] Starting >>> lsd_slam_viewer [ make ]        
[ rosmake ] All 18 lines 
{------------------------------------------------------------------------------- 
    mkdir -p bin 
    cd build && cmake -Wdev -DCMAKE_TOOLCHAIN_FILE=/Users/apple/ros_catkin_ws/install_isolated/share/ros/core/rosbuild/rostoolchain.cmake .. 
    CMake Error at /usr/local/Cellar/cmake/3.3.2/share/cmake/Modules/Platform/Darwin.cmake:76 (message): 
    CMAKE_OSX_DEPLOYMENT_TARGET is '10.6' but CMAKE_OSX_SYSROOT: 

    "" 

    is not set to a MacOSX SDK with a recognized version. Either set 
    CMAKE_OSX_SYSROOT to a valid SDK or set CMAKE_OSX_DEPLOYMENT_TARGET to 
    empty. 
    Call Stack (most recent call first): 
    /usr/local/Cellar/cmake/3.3.2/share/cmake/Modules/CMakeSystemSpecificInformation.cmake:36 (include) 
    CMakeLists.txt:2 (project) 


    -- Configuring incomplete, errors occurred! 
    See also "/Users/apple/ros_catkin_ws/package_dir/lsd_slam/lsd_slam_viewer/build/CMakeFiles/CMakeOutput.log". 
-------------------------------------------------------------------------------} 
[ rosmake ] Output from build of package lsd_slam_viewer written to: 
[ rosmake ] /Users/apple/.ros/rosmake/rosmake_output-20151109-185908/lsd_slam_viewer/build_output.log 
[rosmake-0] Finished <<< lsd_slam_viewer [FAIL] [ 0.09 seconds ]     
[ rosmake ] Halting due to failure in package lsd_slam_viewer. 
[ rosmake ] Waiting for other threads to complete. 
[ rosmake ] Results:                
[ rosmake ] Built 42 packages with 1 failures.         
[ rosmake ] Summary output to directory           
[ rosmake ] /Users/apple/.ros/rosmake/rosmake_output-20151109-185908  

什么谎言在这个问题的心脏是这个小线在这里:

https://cmake.org/pipermail/cmake/2012-November/052649.html

这:

CMAKE_OSX_DEPLOYMENT_TARGET is '10.6' but CMAKE_OSX_SYSROOT: "" 

我通过这个邮件列表中去

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=15f5764e

,但不能从这种解决我的问题。

我试图更新使用SDK根:

export SDKROOT=/Developer/SDKs/MacOSX10.6.sdk 

我也试着从public.cmake注释掉系统根目录的目标,本所建议的: http://answers.ros.org/question/50561/cmake_osx_deployment_target-and-cmake_osx_sysroot/

,但没有喜悦。

请帮忙。提前致谢。

+0

我假设它是在ROS中的错误。写一份错误报告或看看他们当前的主人。也许修补程序已经存在,并且可以封装到您的版本。 – usr1234567

+0

啊......这些人不提供任何支持Mac。他们已经在Ubuntu上进行了测试,并没有对Mac说任何事情。现在我试图破解我为Mac构建这个版本,这里的特定错误似乎源自一些cmake配置问题。这是我最好的猜测。 – metsburg

+0

你要追查,其中变量被设置并查明线,它得到在Ubuntu的值,但您的系统上是空的。 – usr1234567

回答

0

我有同样的问题。 请尝试。
注释在〜/ ros_catkin_ws/install_isolated /共享/ ROS /型芯/ rosbuild/public.cmake一条线,如下所示:

if(APPLE) #SET(CMAKE_OSX_DEPLOYMENT_TARGET "10.6" CACHE STRING "Deployment target for OSX" FORCE) endif(APPLE)

+0

将相关信息放入帖子中。 –

+0

我已经在这个问题中提到了这一点,我试着评论那条线......没有工作。 – metsburg