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