SSL-Roots / consai2r2

https://github.com/SSL-Roots/consai_ros2 へ開発を移行しています。
MIT License
8 stars 7 forks source link

consai2r2_teleop/include/visibility_control.hは公式のものに置き換えるべき #38

Closed HansRobo closed 4 years ago

HansRobo commented 4 years ago

https://github.com/ros/class_loader/blob/ros2/include/class_loader/visibility_control.hpp

公式のものが提供されているのでconsai2r2で保持するのではなくそちらを使うべき.

/opt/ros/dishing/include/class_loader/visibility_control.hppの存在は確認済み

zohar0729 commented 4 years ago

今から作業します

zohar0729 commented 4 years ago

作業完了しました

ShotaAk commented 4 years ago

visibility_control.hはパッケージごとに用意するようです。 そのため、visibility_control.hはconsai2_teleop内のものを使いたいです。

https://github.com/ros2/ros2/issues/37

(1つにまとめる仕組みが欲しい!っていう意見もあるみたいですが、 大元のgccもprefixを変えて使えって書いてますからね。。。) https://github.com/ament/ament_cmake/issues/164

ShotaAk commented 4 years ago

@HansRobo @zohar0729 上記理由より、本件と#39 をクローズしても良いですか?

HansRobo commented 4 years ago

問題ないです

MiraiHattori commented 4 years ago

https://discourse.ros.org/t/add-visibility-control-h-to-the-api-as-standard-usage/11681/4

MiraiHattori commented 4 years ago

メモです. windowsでは各プロジェクトごとにないと本当に困るようです.

The trouble comes when you want library A to depend on library B. In that case, you need to mark the symbols of library B as dllimport (so library A can call them), but you need to mark the public symbols of library A as dllexport. So you can’t just have one set of macros to accomplish this. This is why there are per-project macros.

zohar0729 commented 4 years ago

はい、閉じてもらって大丈夫です、すみません