graphhopper-ios 编译过程详解

这篇具有很好参考价值的文章主要介绍了graphhopper-ios 编译过程详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、写在前面

GraphHopper 是一个快速且高效的路径规划引擎,它默认使用OpenStreetMapGTFS数据, 也可以导入其他数据源。它可以用作java库或独立的web服务器,去计算两个或多个点之间的线路的距离,时间,转弯指令和许多道路属性。除了“A-to-B”的路径规划能力之外,它还支持“snap to road”、等时线计算、移动导航等。

graphhopper-ios 是 graphhopper 的oc版本,它使用j2objc.java源代码转换为Objective-C代码, 以供iOS平台的开发者来使用。该库在成功编译后会生成一个libgraphhopper.a的静态库文件。

接下来介绍该库在终端命令行模式下的编译过程

二、Mac 环境下的编译步骤

2.1 编译前的准备工作

  • JDK 8
    首先查看你的Mac 系统是否已经安装了JDK,打开终端窗口并输入java -version,如果没有安装过jdk会提示需要安装。
    JDK下载地址: https://www.oracle.com/java/technologies/downloads/
    先选择MacOS平台 , 再选择架构 x64 or arm64的.dmg文件。 如果不知道本机的Mac支持哪种架构, 可以通过如下命令来查看
uname -a

graphhopper-ios 编译过程详解

  • Maven

    下载地址:https://maven.apache.org/download.cgi

graphhopper-ios 编译过程详解
下载后解压,重名名为Maven,并放入到资源库/Library/Maven下. 接下来配置Maven的环境变量
(1)打开终端, 输入命令 vim ~/.bash_profile . 打开.bash_profile文件,在文件中添加设置环境变量的语句

export M2_HOME=/Library/Maven
export PATH=$PATH:$M2_HOME/bin

添加完之后执行:wq保存退出

(2) 输入 source ~/.bash_profile 使环境变量生效

(3) 输入mvn -v查看是否安装成功

graphhopper-ios 编译过程详解
表示安装成功

  • j2objc
    首先,到 github 上下载文件。下载地址:https://github.com/google/j2objc/releases

graphhopper-ios 编译过程详解
下载上图中标记的.zip文件, zip文件是被编译后的,可以直接拿来用。 资源比较大 1.79GB , 下载完成后,备用。

2.2 开始编译

查看更多文章来源地址https://www.toymoban.com/news/detail-417215.html

三、遇到的问题

查看更多

四、静态库下载

查看更多

到了这里,关于graphhopper-ios 编译过程详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C语言中程序的编译(预处理操作)+链接详解(详细介绍程序预编译过程)

    今天我们来学习C语言中程序的编译和链接是如何进行的。 在ANSI C的任何一种实现中,存在两个不同的环境。 第1种是翻译环境,在这个环境中源代码被转换为可执行的机器指令。 第2种是执行环境,它用于实际执行代码。 本文主要是介绍预编译阶段的相关知识。 1.组成一个程

    2023年04月09日
    浏览(35)
  • 详解C++开源网络传输库libcurl的编译过程

    目录 1、引言 2、直接编译libcurl工程,提示找不到ssh.h 3、下载并编译libssh2开源代码,部署到libcurl目录中

    2024年02月12日
    浏览(37)
  • windows平台使用CMake工具对darknet的编译以及安装过程+yolov3+图像检测+摄像头检测+视频检测+手机作为摄像头进行检测(详解)

    目录 1.编译和安装教程 (1)安装visual studio 2022 (2)CMake下载及安装 (3)下载darknet.zip文件 (4)安装OpenCV  (5)修改Makefile文件 (6)修改CMakeLists.txt文件 (7)使用CMake工具 2.yolov3进行测试 (1)单张图像进行检测  (2)开启摄像头进行检测 (3) 视频检测 (4)使用手机摄

    2024年02月05日
    浏览(66)
  • 【网络】想学TCP,这一篇就够了 —— TCP理论知识详解(基于前面手搓TCP服务端博客的补充)

    本篇侧重理论,关于TCP的实践我前面博客中有,如果你想写一个简易的TCP服务端,可以看看这一篇:【网络】网络编程——带你手搓简易TCP服务端(echo服务器)+客户端(四种版本)。本篇也是基于这一篇进行理论方面的扩展,如果想要了解的同学可以看看。 本篇篇幅较长,

    2024年02月08日
    浏览(45)
  • GCC编译过程:预处理->编译->汇编->链接

    目录 引言  概括介绍 一、预处理 二、编译 三、汇编 四、链接 总结 当使用集成开发环境(IDE)进行C语言编程时,点击\\\" 编译 \\\"按钮后,整个C程序从源代码到可执行文件的生成过程会自动完成。IDE会在后台为我们执行C语言的编译过程,将源代码转换为最终的可执行文件。虽

    2024年02月13日
    浏览(43)
  • MDK编译过程及ARM编译工具链

    欢迎加入【Linux C/C++/Python社区】一起探讨和分享Linux C/C++/Python/Shell编程、机器人技术、机器学习、机器视觉、嵌入式AI相关领域的知识和技术。 相关文章连接 C/C++程序的编译过程 一个源文件到可执行文件是如何生成的:GCC编译工具链及编译参数详解 MDK-ARM也叫做KEIL MDK-ARM、

    2024年01月16日
    浏览(107)
  • 【iOS KVO(上)实现过程】

    KVO 也适用于传值,在之前的学习只是学习了KVO的传值,今天详细学习 监听和实现 源码放在下一节学习 KVO(Key-Value Observing )是Objective-C语言中一种观察者模式的实现,可以用来监听对象属性值的变化。KVO机制允许一个对象注册为另一个对象的属性变化的观察者,并在被观察

    2024年02月02日
    浏览(30)
  • 【iOS】编译与链接

    计算机语言分为机器语言、汇编语言和高级语言。 可以将高级语言分为两种:编译语言和解释型语言(直译式语言)。 解释语言编写的程序在每次运行时都需要通过解释器对程序进行动态解释和执行, 即解释一条代码,执行一条代码 。 优点:可移植好,因为只需要各种系

    2024年02月17日
    浏览(39)
  • iOS--编译

    iOS 开发中使用的是编译语言,所谓编译语言是在执行的时候,必须先通过编译器生成机器码,机器码可以直接在CPU上执行,所以执行效率较高。他是使用 Clang / LLVM 来编译的。LLVM是一个模块化和可重用的编译器和工具链技术的集合,Clang 是 LLVM 的子项目,是 C,C++ 和 Objecti

    2024年02月13日
    浏览(43)
  • 【iOS】—— 编译链接

    编译流程分为四步 预处理(Prepressing) 编译(Compilation) 汇编(Assembly) 链接(Linking) 作为编译的第一步,首先将 main.m 文件编译成了 main.i 文件,指令如下: 预处理的过程虽然是将main.m文件编译成了mian.i文件,但是实际上的过程并不是这么简单的,那么具体的预编译情况

    2024年02月16日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包