Open3D
Open3D copied to clipboard
Minor fixup for fmtlib 8.1.1
Open3D bundles fmtlib 6.0.0 (Aug 2019) but does compile with the current release 8.1.1 with this small fix applied.
Thanks for submitting this pull request! The maintainers of this repository would appreciate if you could update the CHANGELOG.md based on your changes.
@nigels-com LGTM.
Can you please fix the code style? http://www.open3d.org/docs/release/contribute/styleguide.html#style-checker
If you are using Ubuntu
:
Install clang-format
sudo apt update
sudo apt install clang-format-10
Then go to your Open3d/build
and
make apply-style
Thanks for your contribution.
Ah. Sure thing.
I pushed a commit to actually upgrade fmtlib
to 8.1.1.
It does not work for me on ubuntu 20.04. Let's see how the CI goes.
We have not switched over to fmtlib 8.1.1 except to confirm that things build properly. So this patch is a precursor, not meaning to imply that it's all tested and good to go.
We have not switched over to fmtlib 8.1.1 except to confirm that things build properly.
Did you have one configuration where Open3D works with fmtlib 8.1.1? What is the OS and compiler version?
I've only been testing very specific paths concerning TriangleMesh, but not really familiar with testing Open3D more broadly. Are the 22 failing tests here cause for a more detailed look?
Our platforms are Ubuntu 18.04, Ubuntu 20.04 and Windows.
Oh, I didn't hit this in the master branch. Leave it with me.
/root/Open3D/cpp/open3d/utility/Logging.h:166:61: in constexpr expansion of 'fmt::v8::make_format_args<>((* & args#0), (* & args#1))'
/root/Open3D/build/fmt/include/fmt/core.h:1727:3: error: static assertion failed: Cannot format an argument. To make type T formattable provide a formatter<T> specialization: https://fmt.dev/latest/api.html#udt
static_assert(
^~~~~~~~~~~~~
make[2]: *** [cpp/open3d/t/io/CMakeFiles/tio.dir/sensor/realsense/RealSenseSensorConfig.cpp.o] Error 1
make[1]: *** [cpp/open3d/t/io/CMakeFiles/tio.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
Some build failures fixed, but other problems remain. Will return to this after Easter.
Oh, right. This is still a thing.
Is there any fix available to build with fmt 8.1.1?
The subset of Open3D that we're using does compile and run just fine. But it turns out to be broader job than here on this pull request. It's just turning out to be more time consuming to upstream this change, than I bargained for!
Related PR #5303
Hi @nigels-com closing in favor of PR #5303. Thanks for your help!
All good! Great!