game_pathfinding 0.1.1

一个寻路库,包含AStar和Recast,目前还在开发阶段
Documentation
# path_finding


[![Crates.io](https://img.shields.io/crates/v/game_pathfinding.svg)](https://crates.io/crates/game_pathfinding) [![docs.rs](https://docs.rs/game_pathfinding/badge.svg)](https://docs.rs/game_pathfinding) [![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](LICENSE)

`path_finding` 是一个我自己的练习项目,从A*开始写起,后续慢慢添加如`recastnavigation`,
最终做成一个lib或者可以单独运行的微服务。

0.0.x版本没什么看的,属于开发版本,不可用。

第一个能运行的版本将会是0.1.0

第一个可用于生产的版本,将会是1.0.0

业余时间发开,进度随缘。

使用 cross build --target x86_64-unknown-linux-gnu 编译linux版本
使用 cross build --target aarch64-linux-android 编译andriod版本
cbindgen --crate game_pathfinding --output pathfinding.h 生成头文件

同时生成C语言的静态库和动态库
[lib]
name = "pathfinding"
crate-type = ["staticlib", "cdylib"]

linux下链接静态库:(写代码是静态库,运行时不连接)
gcc -o b b.c -L. libpathfinding.a -lpthread -lm -ldl

linux下链接动态库:(写代码时dlopen动态库文件)
gcc -o a a.c -ldl -rdynamic

linux下链接动态库,但是不用dlopen模式:系统会在$LD_LIBRARY_PATH中寻找libpathfinding.so。(写代码像静态库,运行时找动态库)
gcc -o c c.c -L. -lpathfinding -lpthread -lm -ldl

a.c和b.c的例子在examples中