# txmap_cjx **Repository Path**: cjxnor/txmap_cjx ## Basic Information - **Project Name**: txmap_cjx - **Description**: txmap - **Primary Language**: C++ - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-11-07 - **Last Updated**: 2024-11-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # nerd-api使用的C++示例 示例中包含多个样例 - async是一个在线获取数据的例子 - offline是一个通过本地文件离线获取数据的例子, 验证nerd-api的库是否正常读取LANE.NDS文件中内容 # Build 根目录下的CMakeLists.txt会编译所有的示例 在终端中进入到example目录后,使用如下命令进行编译 ``` mkdir build && cd build cmake .. make # 回到example目录 cd ../ ``` 这时会在生成生成可执行文件,例如 ``` ./build/async/nerd-api-example-async ./build/offline/nerd-api-example-offline ``` # Run ## 动态库依赖 在运行`./build/async/nerd-api-example-async`的过程中,会遇到提示找不到动态库, 这时需要添加`example/lib`为库文件搜索路径 ``` # Linux export LD_LIBRARY_PATH=./lib:${LD_LIBRARY_PATH} ``` 如果是macOS平台的dylib库文件找不到,写法如下 ``` # macOS DYLD_LIBRARY_PATH=./lib:${DYLD_LIBRARY_PATH} ``` ## 数据依赖 - 例子async是在线获取数据的,没有本地数据依赖 - 例子offline依赖本地的数据LANE.NDS和目录tile_ids, 假设当前的工作路径在example目录下,则需按照如下的目录结果放好 > 如果发现example目录中已经有文件data/lane/LANE.NDS和目录tile_ids,它们可能是软连接,请查看软连接指向的文件(文件夹)是否真实存在 ``` └── example ├── CMakeLists.txt ├── Makefile ├── README.md ├── async ├── offline ├── tile_ids <-将tile_ids目录拷贝到这里 │ ├── lane.txt │ └── route.txt └── data └── lane └── LANE.NDS <- 将LANE.NDS文件拷贝到这里 ``` ## tips ```shell # 指定生成目录和生成器 使用ninja构建项目(cmake扩展默认用ningja,可以打短点) cmake -Bbuild -GNinja . # 编译build目录下的项目 cmake --build build --config Debug -j 60 ```