DOCGroup/MPC

vcpkg puts debug libraries in debug\lib and not lib

Closed this issue · 3 comments

vcpkg as package manager on windows creates debug\lib for the debug libraries (just as debug\bin), this is not matching the xercesc/openssl mpb files, they only expect lib

For OpenDDS we are suggesting the user correct this. There are a few different ways to handle it, but this is what we tried:

If a debug build is desired, a symbolic link to the include directory needs to be created under the installed tree within the vcpkg hierarchy. For instance, since x64-windows was the target used in the previous step, the associated debug libraries are contained within vcpkg\installed\x64-windows\debug. This location does not contain an include directory though (which OpenDDS will look for), so create a link to the parents include directory:
cd installed\x64-windows\debug
mklink /J include ..\include

http://download.ociweb.com/OpenDDS/Using_DDS_Security_in_OpenDDS_3_13.pdf

The Qt5 config files (which came later) were made to be flexible enough to handle it without a symlink, but it's still a pain.

Thanks for the qt5 suggestion, will try that approach, trying to use vcpkg on azure devops to install xercesc and openssl on windows

Created PR #76 as fix, testing this now on azure devops with CIAO