Skip to content

fix: remove HEUCLID_SOURCES hack + LBlocks BUILD_INTERFACE + macOS pip - #5

Merged
Mr-tooth merged 2 commits into
mainfrom
fix/heuclid-static
Mar 17, 2026
Merged

fix: remove HEUCLID_SOURCES hack + LBlocks BUILD_INTERFACE + macOS pip#5
Mr-tooth merged 2 commits into
mainfrom
fix/heuclid-static

Conversation

@Mr-tooth

Copy link
Copy Markdown
Member

变更

1. 移除 HEUCLID_SOURCES hack

  • Heuclid v2.1 已转为 STATIC 库(PR #4
  • 删除手动列出的 6 个 Heuclid .cpp 文件
  • 自动链接库 + 传播 include 路径

2. LBlocks include 路径修复

  • 修复 CMake export 时 INTERFACE_INCLUDE_DIRECTORIES 包含源码目录的报错

3. macOS pip 安装修复

  • 适配 macOS Python 3.12+ externally-managed-environment 策略

4. Heuclid FetchContent 版本锁定

验证结果

  • ✅ 本地 CMake configure 成功
  • ✅ 本地编译成功(libFootstepPlannerLJH.a + 2 个测试二进制)
  • ✅ 4/4 测试通过(footstep_test + block_test + TestConvexHull + TestBeizer)

Mr-tooth added 2 commits March 16, 2026 22:50
- Heuclid is header-only INTERFACE but has .cpp sources that need
  compiling; add HEUCLID_SOURCES to AStar library (Orientation2D,
  HeuclidCoreTool, ConvexPolygon2D, Line2D, HeuclidGeometryTools,
  HeuclidPolygonTools)
- Fix HeuclidCoreTool v2.0 namespace (was class, now namespace)
- Fix ParameterBasedStepExpansion empty initializer list
- Fix StepConstraintCheck orphaned #endif from matplotlib guards
- Add matplotlib guards in test/test.cpp for PlotChecker calls
- Guard plotEllipsoidPath() in simple2DBodyPathHolder header
- Guard conio.h include in testBlock.cpp (Windows-only)
- Make LBlocks include PUBLIC so tests inherit

All 4 tests passing: footstep_test, block_test, TestConvexHull2D,
TestBeizer
- Remove HEUCLID_SOURCES: Heuclid v2.1 is now a STATIC library, no need
  to manually compile its .cpp files. Just link heuclid target.
- LBlocks include: wrap with $<BUILD_INTERFACE:...> to fix CMake export error
- macOS pip: add --break-system-packages for Python 3.12+ compatibility
- Heuclid FetchContent: lock to v2.1 tag instead of main
@Mr-tooth
Mr-tooth merged commit 13b9e52 into main Mar 17, 2026
4 checks passed
Mr-tooth added a commit that referenced this pull request Mar 20, 2026
fix: remove HEUCLID_SOURCES hack + LBlocks BUILD_INTERFACE + macOS pip
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant