`
linkerlin
  • 浏览: 35206 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

SWIG的一个编译错误的解决方案

 
阅读更多

SWIG包装一个上古的代码库的时候,遇到一个问题:

Error: Nothing known about namespace '__gnu_cxx'

原因:代码中用来一些 __gnu_cxx名空间里面的函数来实现原子操作。而SWIG不认识这个名空间。所以悲剧了。

解决方案:

在所有用到 __gnu_cxx 里面东西的函数第一行加上:

using namespace __gnu_cxx;

在其他地方,可直接指定 全名:

__gnu_cxx::XXXXX

Done. 

0
6
分享到:
评论

相关推荐

    swig学习资料.doc

    ### SWIG 学习资料知识点概述 ...通过以上介绍,我们可以看到 SWIG 提供了一个强大且灵活的工具集,使得 C/C++ 代码与各种脚本语言之间的交互变得简单易行。无论是初学者还是经验丰富的开发者,都能从中受益。

    swig实例java调用c

    `Swig`(Simplified Wrapper and Interface Generator)是一个强大的工具,它允许我们创建接口,使得Java等高级语言能够调用C或C++编写的库。本实例主要讲解如何使用Swig来实现Java调用C代码,并通过DLL动态链接库...

    pjsip包括pjsua2的linux编译 python&java.pdf

    文档还提醒说,如果在编译过程中遇到找不到Java的问题,可以通过新开一个SSH会话,输入`java`命令检查Java是否正确配置。如果提示信息正常,那么可以在新SSH会话中执行`make clean`后再重新`make`,以确保编译过程...

    Python2.7 GDAL(win7 64位平台)之安装

    例如,可能会出现 swig.exe 未安装的错误,解决方案是下载安装 swig2.10.0,然后将 swig.exe 所在目录添加到环境变量 Path 目录下。 四、第二种方案 第二种方案是直接下载 msi 文件,然后安装。这也是最简单的安装...

    raknet DLL for C

    RakNet是一款强大的网络通信库,专为游戏开发者设计,以提供高效、可靠的网络编程解决方案。在C++原生版本的基础上,通过SWIG(Simplified Wrapper and Interface Generator)工具,可以将其转换为C语言可用的DLL...

    解决opencv-contrib编译时出现找不到boostdesc-bgm.i的问题

    它是一个预处理文件,由SWIG(Simplified Wrapper and Interface Generator)工具生成,用于在不同的编程语言间创建接口。当你编译OpenCV的opencv-contrib模块时,SWIG会尝试找到并处理这些.i文件来生成相应的接口...

    release-1900-dev.zip

    此压缩包的发布旨在解决用户在自行编译GDAL时可能遇到的问题,提供一个即插即用的解决方案。 压缩包内包含的文件如下: 1. **readme.txt**:通常这是一个包含了安装指南、使用说明或注意事项的文本文件。在GDAL的...

    RDKit安装途中可能无法下载的插件,可以自己手动编译安装

    - **编译错误**:仔细阅读编译过程中的错误信息,定位错误位置,根据错误信息查找解决方案,可能需要修改配置文件或源代码。 - **权限问题**:在执行`make install`时,可能需要管理员权限,使用`sudo`命令或以...

    python中嵌入C语言脚本.doc

    - TinyCC 编译的可执行文件执行时间为 6.719 秒,虽然略高于 CVC6,但仍然是一个可行的解决方案。 - 其他编程语言,如 FreeBASIC 和 Forth,其执行效率介于 Python 和 C 之间,但 FreeBASIC 的表现较为失望。 对于...

    opencv_contrib补丁.rar

    标题中的 "opencv_contrib补丁.rar" 提供了一个解决方案,针对在树莓派上安装过程中可能遇到的问题。这个压缩包包含了一些修复错误或优化性能的补丁文件。`boostdesc...` 文件名暗示这些文件与 Boost 库中的描述符...

    CSipSimple安装过程中遇到的问题

    在文中提到,作者最初安装了`swig` 3.0.2版本,但在后续的CSipSimple编译过程中遇到了许多错误。因此,最终选择了`swig` 2.0.5版本,并且编译成功。这表明,在某些特定情况下,选择正确的软件版本至关重要。 - 在从...

    pybind11在Windows下的使用教程

    #### 四、常见问题及解决方案 1. **位数不匹配** 如果在尝试导入扩展模块时遇到类似“ImportError: DLL load failed: %1 is not a valid Win32 application”的错误,可能是因为编译出的扩展模块与Python解释器的...

    sap rfcsdk mingw更新。

    在本话题中,我们将讨论在MinGW环境下更新SAP RFC SDK遇到的问题及其解决方案。 标题" sap rfcsdk mingw更新。" 提及了在使用MinGW(Minimalist GNU for Windows)这个开源C/C++编译环境时,针对SAP RFC SDK的.a...

    xfeatures2d.tar.gz

    当出现"fatal error: boostdesc_bgm.i: 没有那个文件或目录"这样的错误时,通常有以下几种可能的解决方案: 1. 确保已经正确安装了Boost库。在Ubuntu上,可以使用`sudo apt-get install libboost-all-dev`命令来...

    alarmaPro:proyecto测试警报器yc

    总的来说,alarmaPro是一个利用SWIG技术的测试警报系统项目,旨在提供灵活且高效的报警解决方案。通过对源代码的解析、编译和测试,开发者可以深入了解如何利用SWIG将C/C++代码与脚本语言相结合,实现跨语言的软件...

    基于Python的嵌入式脚本研究.pdf

    标题和描述提到的“基于Python的嵌入式脚本研究”,重点强调的是嵌入脚本语言到应用程序中去的优势,以及Python语言作为嵌入式脚本语言的实现和应用。...这对于开发者和最终用户来说都是一个双赢的解决方案。

    OpenCV1.0.0移植到ARM_(utu2440).

    OpenCV (Open Source Computer Vision Library) 是一个开源的计算机视觉和图像处理库,广泛应用于各种图像处理场景。本篇文章将详细介绍如何将 OpenCV 1.0.0 版本移植到 ARM 平台 (具体为 utu2440) 上的过程。这主要...

    libxl压缩包可用于大度些没干嘛更麻烦

    libxl通常指的是一个C++编写的库,用于读写Excel文件,它在处理大量数据时可能比其他解决方案更为高效,因此可能被提及为“大度些”,意味着能处理大量工作。 **描述解析:** "libxl压缩包" 这个描述非常简洁,直接...

    精典源码之代码调用C++代码和C++代码调用代码.rar

    在编程世界中,C++和Python是两种广泛应用的编程语言,它们各有特色,适用于不同的应用场景。...通过深入研究这些代码,你可以掌握构建混合语言项目的关键技能,从而在实际项目中实现更高效、灵活的解决方案。

Global site tag (gtag.js) - Google Analytics