I’m new to CMake and am attempting to figure out what the link requirements for ‘target link libraries’ are (Public,Private,Interface). I understand the concepts of public, private, and Interface dependencies, but I’m not sure how to apply them to my project.
I have a number of libraries in my project, and some of them have dependencies on each other.For instance, I have a logger library that is utilised in other libraries and is also used in the final application executable.
So lib_storage is reliant on logger, and App A is reliant on both lib_storage and logger. If I make logger a public link to lib_storage, App A will have access to logger as well. However, removing lib_storage in the future will result in a logger build fault for App_A. So, how do you attach logger to lib_storage and logger to App A correctly?