symforce icon indicating copy to clipboard operation
symforce copied to clipboard

Building with CMake links to wrong version of fmt on Macos

Open arbor-arthur opened this issue 2 years ago • 1 comments

Describe the bug On Macos when building with cmake, if fmt version 8 and 9 (or 10) are both available, it detects version 8 and then tries to link to version 9/10, and fails because of missing symbols.

To Reproduce Install symforce through pip, which on my computer installed fmt 8 into /Library/Frameworks/Python.framework/Versions/3.9/. brew install fmt (for the newer version of fmt) Download symforce v0.9.0 and follow cmake build instructions.

Expected behavior If cmake detects version 8, it should link to the same version it finds. Alternatively, there could be an option to force downloading and linking against a local copy (what it does when it doesn't find a compatible version).

Environment (please complete the following information):

  • OS and version: Macos 13.4
  • Python version: 3.9.13
  • SymForce Version: 0.9

arbor-arthur avatar Jun 13 '23 14:06 arbor-arthur

I'm not sure why it would find 8 and try to link to 9 or 10, since we already restrict fmt version to only 8. If you print out some fmt cmake variables for fmt, what do they look like?

chao-qu-skydio avatar Jun 16 '23 17:06 chao-qu-skydio