isl-org / Open3D-PointNet2-Semantic3D

Semantic3D segmentation with Open3D and PointNet++
Other
517 stars 113 forks source link

Error: macro "fmt" passed 2 arguments, but takes just 1 fmt(out, std::get<I>(tup)); #61

Closed ytyfeng closed 4 years ago

ytyfeng commented 4 years ago

I followed the steps given in README to build tf_ops, but when I tried to make tf_interpolate.so, it gave me this error. I'm wondering if Open3D's fmt library conflicts with absl's fmt.

$ make
[ 40%] Built target tf_sampling
[ 80%] Built target tf_grouping
[ 90%] Building CXX object CMakeFiles/tf_interpolate.dir/tf_interpolate.cpp.o
In file included from /home/usr/.conda/envs/myEnv/lib/python3.6/site-packages/tensorflow_core/include/absl/strings/str_join.h:59,
                 from /home/usr/.conda/envs/myEnv/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/lib/core/errors.h:21,
                 from /home/usr/.conda/envs/myEnv/lib/python3.6/site-packages/tensorflow_core/include/tensorflow/core/framework/op.h:26,
                 from /home/usr/o3d-sem3d/Open3D-PointNet2-Semantic3D/tf_ops/tf_interpolate.cpp:8:
/home/usr/.conda/envs/myEnv/lib/python3.6/site-packages/tensorflow_core/include/absl/strings/internal/str_join_internal.h:267:30: error: macro "fmt" passed 2 arguments, but takes just 1
     fmt(out, std::get<I>(tup));
                              ^
make[2]: *** [CMakeFiles/tf_interpolate.dir/tf_interpolate.cpp.o] Error 1
make[1]: *** [CMakeFiles/tf_interpolate.dir/all] Error 2
make: *** [all] Error 2
monroe-dev commented 4 years ago

@ytyfeng Did you have any problem on compile tf_ops?

ytyfeng commented 4 years ago

No, there’s no problems when I do cmake. However, I commented out the git tag in open3d_build.cmake on line 9, since it was an old version of open3d. There’s only a problem when I build tf_interpolate op.

ytyfeng commented 4 years ago

I tried v0.7 and it worked (change GIT_TAG to d7a46f6). It seems that my suspicion was correct. In version 0.7, there is no fmt in the 3rdparty include libraries.