This commit is contained in:
2025-12-05 11:12:17 +07:00
parent f60cbc2ed3
commit 45d965671e
196 changed files with 41817 additions and 0 deletions

58
CATKIN_BUILD_README.md Normal file
View File

@@ -0,0 +1,58 @@
# Catkin Build Instructions
## Vấn đề
Thư mục này có `CMakeLists.txt` ở root để hỗ trợ **standalone CMake build**.
Tuy nhiên, **catkin workspace không được phép có CMakeLists.txt ở root**.
Khi chạy `catkin_make` trong thư mục này, bạn sẽ gặp lỗi:
```
The specified base path contains a CMakeLists.txt but "catkin_make" must be invoked in the root of workspace
```
## Giải pháp
### Option 1: Sử dụng script tự động (Khuyến nghị)
```bash
# Chạy script setup
./setup_catkin_workspace.sh
# Build trong workspace mới
cd ../pnkx_nav_catkin_ws
catkin_make
source devel/setup.bash
```
### Option 2: Tạo workspace thủ công
```bash
# Tạo workspace
mkdir -p ~/pnkx_nav_catkin_ws/src
cd ~/pnkx_nav_catkin_ws/src
# Link các packages có package.xml
ln -s /path/to/pnkx_nav_core/src/Navigations/Packages/move_base move_base
# ... link các packages khác nếu cần
# Build
cd ~/pnkx_nav_catkin_ws
catkin_make
```
## Build Systems
Project này hỗ trợ **2 build systems**:
1. **Standalone CMake** (mặc định)
- Build trực tiếp trong thư mục này: `mkdir build && cd build && cmake .. && make`
- Không cần catkin workspace
2. **Catkin** (cho ROS integration)
- Cần tạo workspace riêng (xem hướng dẫn trên)
- Packages tự động detect catkin mode khi build trong workspace
## Chi tiết
Xem `src/Navigations/Packages/move_base/BUILD_INSTRUCTIONS.md` để biết chi tiết về cách build package `move_base` với cả hai hệ thống.