symforce-org / symforce

Fast symbolic computation, code generation, and nonlinear optimization for robotics
https://symforce.org
Apache License 2.0
1.41k stars 145 forks source link

Add minimum spdlog version #184

Closed jmackay2 closed 2 years ago

jmackay2 commented 2 years ago

Set the minimum spdlog version to the minimum one that symforce currently successfully builds with.

This was tested by successfully building with all spdlog versions 1.9 and up. Everything below 1.9.0 failed.

I also updated the GIT_TAG to just use the tag name instead of the commit. I find it to be a little more readable, but maybe the commit hash is nice for other reasons.

Fixes #182.

jmackay2 commented 2 years ago

At the expense of continuing the conversation in a closed PR, the error with spdlog 1.8 was the following:

/symforce/build/_deps/spdlog-src/src/spdlog.cpp:9:
/symforce/build/_deps/spdlog-src/include/spdlog/common-inl.h: In constructor ‘spdlog::spdlog_ex::spdlog_ex(const string&, int)’:
/symforce/build/_deps/spdlog-src/include/spdlog/common-inl.h:57:50: error: cannot convert ‘const string’ {aka ‘const std::__cxx11::basic_string<char>’} to ‘const char*’
   57 |     fmt::format_system_error(outbuf, last_errno, msg);
aaron-skydio commented 2 years ago

Thanks! Not immediately obvious to me what we'd need to do to fix, possibly worth looking into more at some point