BerkeleyAutomation / python-fcl

Python binding of FCL library

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

macOS arm wheel ImportError symbol not found

jackbow opened this issue · comments

commented
ImportError: dlopen(.venv/lib/python3.9/site-packages/fcl/fcl.cpython-39-darwin.so, 0x0002): symbol not found in flat namespace '__ZNK3fcl17CollisionGeometryIdE34computeMomentofInertiaRelatedToCOMEv'

I'm getting the above error after installing python-fcl v0.7.0.4 and I think it's because the following env vars aren't being set. The following code produces a working wheel for me (which I've just committed to my own repo for convenience).

CPATH=$(brew --prefix)/include:$(brew --prefix)/include/eigen3 LD_LIBRARY_PATH=$(brew --prefix)/lib python setup.py bdist_wheel --universal

I'm not sure if that code will work with the github action runner since its running on intel building for arm, and I'm not sure if it's using brew, but it could be worth a shot by using env.CIBW_ENVIRONMENT_MACOS in the pypa/cibuildwheel step.
https://cibuildwheel.readthedocs.io/en/stable/options/#environment

I may get around to doing this but I'm writing this here in case I don't.

I have the same problem - any known workaround for using the wheel available from PyPi in a python virtualenv ?
I.e. I installed it by just running pip3 install python-fcl==0.7.0.4.

MacOS Ventura 13.3.1 Arm64, Python 3.10.6, python-fcl==0.7.0.4

Same problem here
MacOS Sonoma 14.0 Arm64 python 3.10.13 python-fcl==0.7.0.5

Same problem
MacOS Sonoma 14.1 Arm64 python 3.11.1 python-fcl==0.7.0.5

Hey, Github released mac M1 CI runners finally and it appears to have built and tested successfully in #74 with macosx_arm64 wheels on both Github and PyPi

You should be able to pip install --upgrade python-fcl and get them. I'm going to close this but feel free to open new issues if the wheels don't work.