SWIG简介与安装 | 第一讲


  • 官网:http://www.swig.org/index.php

简介:
SWIG是一个软件开发工具,它将用C和c++编写的程序与各种高级编程语言连接起来。SWIG与不同类型的目标语言一起使用,包括常见的脚本语言,如Javascript、Perl、PHP、Python、Tcl和Ruby。

支持的语言列表还包括非脚本语言,如c#, D, Go语言,Java,包括Android, Lua, OCaml, Octave, Scilab和R.也支持几种解释和编译的方案实现(Guile, MzScheme/Racket)。

SWIG最常用来创建高级解释或编译的编程环境、用户界面,以及作为测试和构建C/ c++软件原型的工具。SWIG通常用于解析C/ c++接口,并生成上述目标语言调用到C/ c++代码所需的“粘合代码”。SWIG还可以以XML的形式导出它的解析树。SWIG是免费软件,它生成的代码与商业和非商业项目兼容。

SWIG的主要目的是简化将C / C ++与其他编程语言集成的任务


win10安装


下载:

http://www.swig.org/download.html

  • 解压到磁盘,然后配置环境变量路径(让系统能够找到 swig.exe

  • 验证


PCRE依赖安装 – 需要先安装依赖


如果没有安装这个PCRE依赖,直接安装SWIG可能会遇到的报错如下:

configure: error: in `/build/swigwin-4.0.2':
configure: error: Cannot find pcre-config script from PCRE (Perl Compatible Regular Expressions)library package. This dependency is needed for configure to complete,Either:- Install the PCRE developer package on your system (preferred approach).

PCRE源码下载安装方法如下

下载链接:https://sourceforge.net/projects/pcre/


  • 安装命令如下:
unzip pcre2-10.36.zip cd pcre2-10.36/./configure makemake install DESTDIR=/home/zhijian/usr/prce

Linux 命令安装


  • 默认需要 sudo 权限
sudo apt install swig或者yum install swig

Linux 源码安装


  • root 用户安装操作如下
# 把安装包(zip或者tar.gz)拷贝到服务区目录下,解压,进入解压目录#依次 构建、编译、安装即可./configure 输出如下(说明默认构建 java perl5 python examples ):
The SWIG test-suite and examples are configured for the following languages:
java perl5 python makemake install #默认安装位置
/usr/local/bin/swig
  • 普通 用户安装操作如下(需要指定安装位置)
./configure makemake install DESTDIR=/home/zhijian/usr/swig# 安装成功输出大致如下:
...
...
Installing ccache-swig
Installing /home/zhijian/usr/local/swig/usr/local/bin/ccache-swig
/usr/bin/install -c -d /home/zhijian/usr/local/swig/usr/local/bin
/usr/bin/install -c -m 755 ccache-swig /home/zhijian/usr/local/swig/usr/local/bin/ccache-swig
make[1]: Leaving directory '/home/zhijian/soft/openCVSoft/swigwin-4.0.2/CCache'
Installation complete

环境变量配置


cd ~
vim .bashrc # 添加如下路径
export  PATH="/home/zhijian/usr/swig/usr/local/bin:"$PATH# 使配置生效
source .bashrc # 测试是否成功
swig -version#如果发现报错如下
swig: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory

可参考解决方法

以上就是此次我的小白笔记了,蟹蟹您的查阅;



SWIG简介 | win10和Linux下的安装--亲测 | (一)相关推荐

  1. linux在python的虚拟环境下运行程序_在win10和linux上分别安装Python虚拟环境的方法步骤...

    很多初学者会使用windows作为开发机使用, 今天就来看下如何在win10和Linux下分别安装Python虚机环境.虚机环境有非常多的优点,今天我们用的虚拟环境是virtualenv. virtu ...

  2. python3安装教程win10_在win10和linux上分别安装Python虚拟环境|python3教程|python入门|python教程...

    https://www.xin3721.com/eschool/python.html 很多初学者会使用windows作为开发机使用, 今天就来看下如何在win10和Linux下分别安装Python虚 ...

  3. EPICS 在win10 和 linux上的安装与测试

    EPICS 在win10 和 linux上的安装与测试 EPICS简介 系统环境与安装包 Windows环境下安装 编译环境和路径设置 编译Epics base 测试与辅助工具安装 Linux子系统环 ...

  4. 7z(p7zip)压缩软件在Linux下的安装和使用

    为什么80%的码农都做不了架构师?>>>    Evernote Export 7z(p7zip)压缩软件在Linux下的安装和使用 1) 简介 7z,全称7-Zip, 是一款开源软 ...

  5. linux下的安装:openssl

     openssl简介 openssl是一个功能丰富且自包含的开源安全工具箱.它提供的主要功能有:SSL协议实现(包括SSLv2.SSLv3和TLSv1).大量软算法(对称/非对称/摘要).大数运算.非 ...

  6. 【转】Linux下软件安装的几种方式

    转自Linux下软件安装的几种方式 Linux 系统的/usr目录 Linux 软件安装到哪里合适,目录详解 Linux 的软件安装目录是也是有讲究的,理解这一点,在对系统管理是有益的 /usr:系统 ...

  7. Win10的Linux子系统Ubuntu安装图形界面

    Win10的Linux子系统Ubuntu安装图形界面 陈拓 2021/07/25-2021/07/26 1. 概述 Win10的linux子系统Windows Subsystem for Linux( ...

  8. 图解MySQL在Linux下的安装与配置

    MySQL简介 MySQL是最流行的RDBMS(Relational Database Management System:关系数据库管理系统)之一,被广泛地应用在互联网上的中小型网站中.关联数据库将 ...

  9. linux下离线安装k8s集群1.19.4附带nfs存储(kubeadm方式)

    linux下离线安装k8s集群1.19.4附带nfs存储 活动地址:毕业季·进击的技术er  一,环境简介 kubernetes-1.19.4集群部署计划 序号 服务器配置 IP地址 操作系统 备注 ...

  10. linux php7.2编译安装,Linux下编译安装php7.2

    准备工作 所有操作需要在root用户下 安装路径: /usr/local/php 安装PHP 首先要安装如下依赖包 $ yum install -y gcc gcc-c++  make zlib zl ...

最新文章

  1. Javascript:郁闷了好久终于找到原因了,原理还不明白
  2. 郑州大学采用计算机,郑州大学计算机系作业
  3. 2.4.5 MySQL InnoDB重做与回滚介绍
  4. 《剑指Offer》23:链表中环的入口节点
  5. 英语口语练习软件测试简历,软件测试员英语简历范文
  6. mysql5.6.39编译安装_源码编译安装MySQL-5.6/mysql-5.6.39------踩了无数坑,重装了十几次服务器才会的,不容易啊!...
  7. springboot 2.x 使用定时任务执行多次问题
  8. 【转载】一步步构建大型网站架构
  9. 列表解析(list comprehension) 与三目运算符
  10. C++ const修饰指针变量的位置不同代表的意义
  11. 微信小程序常用UI组件库
  12. win10 开机不显示bios选单的一种解决办法
  13. 网络通过mac定位机器_如何设置Mac以充当网络时间机器驱动器
  14. Netty第二章 2020 3-9 Netty源码之flush优化
  15. Python与Matlab算法学习一文通(快速排序算法)(更新中)
  16. 学习MVC之租房网站(二)-框架搭建及准备工作
  17. 粉末成型工艺(粉末冶金粉末注射成型)
  18. pytorch训练网络 程序未报错 但是训练不动
  19. 吉林警察学院计算机录取分,2017年吉林警察学院录取分数线
  20. 微信零钱明细删除后服务器有记录吗,微信零钱明细怎么删除记录?教你微信零钱明细记录如何删除...

热门文章

  1. web在线播放flv视频
  2. arcgis js for JavaScript 4.X 移动轨迹动画
  3. 控制中的各种函数MATLAB仿真
  4. win7不用破解工具,最简单的去黑屏办法
  5. js设置一个打点计时器
  6. 應用高解析度線掃描CCD於ITO導電玻璃表面瑕疵檢測之研究
  7. Oracle基本介绍与基本使用
  8. e路航LH900N导航仪凯立德最新版本地图更新方法
  9. 世界上第一台电子计算机的研制目的,最初研制电子计算机的目的
  10. java-net-php-python-jsp无锡尚客优酒店客房管理信息系统mp4计算机毕业设计程序