# 🚀 Hướng dẫn chạy thử C API Navigation ## Cách nhanh nhất (1 lệnh) ```bash cd /home/robotics/AGV/Diff_Wheel_Prj/pnkx_nav_core/examples chmod +x run_example.sh ./run_example.sh ``` ## Chi tiết các bước ### Bước 1: Build C API Library ```bash cd /home/robotics/AGV/Diff_Wheel_Prj/pnkx_nav_core/build cmake .. make nav_c_api ``` Library sẽ được tạo tại: `build/src/APIs/c_api/libnav_c_api.so` ### Bước 2: Chạy C# Example Script `run_example.sh` sẽ tự động: - ✅ Kiểm tra và build library nếu cần - ✅ Tạo C# project - ✅ Copy library và source code - ✅ Set LD_LIBRARY_PATH cho tất cả dependencies - ✅ Build và chạy example ```bash cd /home/robotics/AGV/Diff_Wheel_Prj/pnkx_nav_core/examples ./run_example.sh ``` ## Kết quả mong đợi Nếu chạy thành công, bạn sẽ thấy: ``` ========================================== Building and Running C# Navigation Example ========================================== Library already exists: .../build/src/APIs/c_api/libnav_c_api.so C# project already exists Copying library... Building C# project... Running example... ========================================== Robot pose: x=0, y=0, theta=0 State: PENDING, Feedback: ========================================== Done! ``` ## Yêu cầu 1. **.NET SDK 6.0+** (script sẽ kiểm tra và hướng dẫn nếu thiếu) 2. **Library đã được build** (script sẽ tự động build nếu thiếu) 3. **Linux environment** ## Troubleshooting ### Lỗi: "dotnet: command not found" → Script sẽ hiển thị hướng dẫn cài đặt .NET SDK ### Lỗi: "Failed to create navigation instance" → Đảm bảo `move_base` đã được build: ```bash cd build && make move_base ``` ### Lỗi: "Cannot load library" → Kiểm tra LD_LIBRARY_PATH đã được set đúng (script tự động set) ## Xem thêm - `README.md` - Hướng dẫn chi tiết - `QUICK_START.md` - Quick start guide - `run_example.sh` - Script tự động