opencv - OSX 10.9上的Macports-使用libstdc++编译opencv

我的情况与this thread中讨论的情况非常相似。我要这样做的原因是我将OpenCV与CUDA 6.0一起使用,但是CUDA当前与libstdc++链接。我遵循了建议放置标志-stdlib=libstdc++的答案,以及我们设置CXXCXXFLAGS的另一种方法,但是正如被评论的那样:Macports似乎不承认这些标志,并且仍然使用libc++而非预期的libstdc++构建。

我想在该话题中发表评论,要求采取后续行动,但很遗憾,我的声誉还不够。

有谁知道如何让Macports使用libstdc++安装OpenCV?

编辑1:我没有回过头来检查下面提供的答案之一是否有效。使用libstdc++编译OpenCV会导致其他一些主要使用libc++的非CUDA项目出现问题,因此我不太可能尝试。但是,如果有人可以在下面尝试一个答案并可以给我评论,我会接受一个答案。

编辑2:此问题不再适用于我的情况,因为CUDA 7.0 RC默认情况下具有libc++支持。我仍然会按照“修改版1”接受答案。

最佳答案

在boost的情况下,我能够强制MacPorts像这样链接到libstdc++:

sudo port -s install boost configure.cxx_stdlib="libstdc++" configure.compiler="macports-gcc-4.7"

就是这样!显然,您无需自己传递“-stdlib = libstdc++”。 otool -L显示了我希望看到的内容:
$ otool -L /opt/local/lib/libboost_date_time-mt.dylib
/opt/local/lib/libboost_date_time-mt.dylib:
        /opt/local/lib/libboost_date_time-mt.dylib (compatibility version 0.0.0, current version 0.0.0)
        /opt/local/lib/libgcc/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.18.0)
        /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1197.1.1)
        /opt/local/lib/libgcc/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0)

https://stackoverflow.com/questions/24600350/

相关文章:

python-2.7 - 我的opencv python程序显示看似期望的短语,但既不终止也不允许进

opencv - channel 数-Matlab vs Opencv

python - 如何在 Python 中为 OpenCV minMaxLoc 函数创建掩码矩阵变量

android - 在Android应用程序开发中将OpenCV与NDK结合使用

opencv - OpenCV:在Windows 7上构建库期间,cmake失败

python - 功能无法正常使用(OpenCV Python)

docker - 如何将VM镜像转换为dockerfile?

android - 如何使用MediaCodec编码器获取RGB颜色格式的帧

opencv - opencv c++ HSV图像 channel 分离异常

python - Django、Docker、Python - 无法在 python-alpine