-
Notifications
You must be signed in to change notification settings - Fork 6.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ignition] Updates on various pkgs 🤖 #14324
Conversation
Well done ! Thanks for the help Silvio |
vcpkg_add_to_path(${CURRENT_INSTALLED_DIR}/bin) | ||
vcpkg_add_to_path(${CURRENT_INSTALLED_DIR}/debug/bin) | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
FYI, these are why the ignition things are almost always failing in our CI builds: if the llvm port is installed, then there's a clang.exe here, and cmake thinks you're targeting clang even though that clang.exe is not entirely functional :(
No change requested directly but something you might want to be thinking about. We are investigating fixing the llvm port to not put clang.exe here (although protobuf should not be putting any exes here either)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @BillyONeal, sorry for that, I was not aware of the problem at all, sorry for causing troubles. As the dll need to be found in the path only at the build phase, probably the simplest fix is to put the modification of the path after the configure and before the build, i.e. in
. This could activated with a dedicated option to theignition_modular_library
, or if we don't think there could be downside, we can just do that for all ignition ports, to follow KISS.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To clarify, note that the workaround of adding those directories to the path is not necessary because protobuf installs some .exe in the ${CURRENT_INSTALLED_DIR}/bin
or ${CURRENT_INSTALLED_DIR}/debug/bin
. The problem is that ignition-msgs is creating its own protobuf-based code generator using the protoc
library provided by protobuf, that is called ign_msgs_gen
. As the build executes ign_msgs_gen
to generate the code that is necessary to compile as part of the build, if the port is compiled with a shared library triplet such as x64-windows
, it needs to be able to find the necessary protobuf.dll
and protoc.dll
libraries. A more general fix would be to copy the dependent .dll for executables in the build directory as we do for the executables in the build directory as we do for the one in the install directory, or at least just copy the necessary .dll manually in this case.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A more general fix would be to copy the dependent .dll for executables in the build directory as we do for the executables in the build directory as we do for the one in the install directory
Actually, I checked in https://github.com/microsoft/vcpkg/blob/master/scripts/buildsystems/vcpkg.cmake and it seems that it should be already the case, so perhaps it could be sufficient to try to drop those modification of the PATH.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @BillyONeal, sorry for that, I was not aware of the problem at all, sorry for causing troubles.
Oh, nothing to be sorry about! I just wanted to let you know since you seem to be a contributor who cares about these ports!
[ignition] Updates on various pkgs 🤖 (microsoft#14324)
This PR updates various ignition-robotics ports (according to the dome release https://ignitionrobotics.org/docs/dome/install) :
Updates
New packages: