当前位置: 首页 > news >正文

Mac使用CMake编译stasm

Mac使用CMake编译stasm

环境

macos 12.5.1
stasm 4.1.0
http://www.milbo.users.sonic.net/stasm/

步骤

一、 有个好心人编写了在Unix上用cmake构建的stasm的库。我们可以使用它辅助我们对stam进行编译。

  1. clone它: https://github.com/juan-cardelino/stasm
 git clone https://github.com/juan-cardelino/stasm.git

我将用STASM_DIR代表这个repo的根目录。

  1. 下载stam源码:http://www.milbo.users.sonic.net/stasm/
    将文件解压到STASM_DIR目录中进行文件覆盖。
  2. 在STASM_DIR目录下执行下面的命令。
cd STASM_DIR/apps
patch -p0 < appmisc.cpp.20140201.diff
cd STASM_DIR/apps/shapefile
patch -p0 < shapefile.cpp.20140201.diff
  1. 在STASM_DIR目录下创建一个build目录,进行编译。
  2. 正常情况下,你会编译不过。因为它依赖opencv库。实际安装了opencv3之后,我也发现一些函数调用已经不匹配了。可能stam源码依赖的是更早的某个版本的opencv。

二、安装opencv3

brew install opencv3

可能会遇到一些问题,不过一般可以通过搜索解决。

三、重新编译 stam

  1. 配置opencv

正常还是会编译不过。因为brew安装的opencv3. 默认cmake脚本中的find_package会寻找不到。
可以通过查看brew装的opencv3在哪个目录,我们手动指定下。
我的是装在了这个目录:/usr/local/opt/opencv@3。那么可以将CmakeList.txt中的find_package(OpenCV REQUIRED) 替换为 find_package(OpenCV REQUIRED CONFIG PATHS /usr/local/opt/opencv@3/share/OpenCV)
就可以寻找到了。

  1. 解决函数找不到的问题。

    有很多符号找不到的问题,大多数是因为没有导入头文件。我是直接根据IDE提示,进行了导入。
    还有一些问题是,可以通过在函数前面增减cv::,然后根据IDE提示,导入头文件。
    最终编译成功。

相关文章:

  • 怎么做网站后期推广/百度官方入口
  • windows 网站模板/在哪里可以发布自己的广告
  • 电子商务网站建设与管理读后感/百度资源搜索平台
  • 陇西哪里能学做网站/国外b站不收费免费2023
  • 工业设计创意网站/网络营销策划方案书范文
  • 跨境电商网站建设/新疆疫情最新情况
  • Docker容器中安装Jenkins
  • 第5章 管理端(Vue)布局面的重构与路由的全局存储
  • 斩获数亿元B轮融资,这家Tier 1抢跑「L2/L2+」主战场
  • 【C++】类和对象(C++门槛)
  • 2023北京福祉展,残疾人用品展,中国国际康复博览会
  • 怎么给视频加水印?
  • FineReport企业数据图表-JS实现参数控件赋值
  • 水质检测中心实验室如何规划
  • CANoe-面向服务通信(概念篇)
  • MySQL的数据类型和存储引擎介绍
  • 【LeetCode每日一题:2011. 执行操作后的变量值~~~模拟】
  • UMC产品UI升级说明