-
Notifications
You must be signed in to change notification settings - Fork 6.1k
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
Can TRIPLET be used with vcpkg.json #21917
Comments
you don't set/use the triplet in vcpkg.json. If you need specific combinations of VCPKG_LIBRARY_LINKAGE you have to define a custom triplet for it. |
I can't find the option to set TRIPLET for each dependency in the documentation, I want to implement the following idea, how should I write? |
We hope your question was answered to your satisfaction; if it wasn't, you can reopen with more info. |
This should be a feature request. |
@0blu it sounds logical if you target only one platform, configuration and build tools version. |
Hi I agree with 0blu. I'm having vcpkg issues because the triplet for one of my packages is defaulting as This means my current CI/CD scripts are busted if I depend on |
vcpkg has some ports which must be built with either static or dynamic linkage regardless of triplet. |
@TheMaverickProgrammer Probably it is best to ask for help with what you want to achieve in a new discussion. |
One of the disadvantages of using per port customization, is when you change the triplet file to customize one port, all other ports will recompile, this is why I don't find this feature very practical, I think it would be better, if one can specify the triplet per dependency in the vcpkg.json instead. |
There is a way to avoid it. Simply include a file with the specialization but be aware it has implications. |
Avoiding is not a solution. And you even imply it has undesirable outcomes. Not good. |
I haven't paid attention to this discussion for a long time. My initial thought is very simple: The issue is: Am I missing something, or is there a way I can achieve what I'm thinking above? |
The easiest thing is simply modifying the port/port***.cmake file for specific libaray and adjust |
Don't do that. It is not a customization point. The triplet fcontrols the linkage. And it is a valid customization point in particular for non-standard linkage. Take one of the two triplets files as a base, and use per-port customization. Instead of
this would better be presented as:
|
Please create a discussion in https://github.com/microsoft/vcpkg/discussions/new instead.
$.dependencies[0] (a dependency): must be lowercase alphanumeric+hyphens, split with periods, and not reserved
I can fin'd a way to set TRIPLET in vcpkg.json, and I need to depend a static link static runtime(/MT) library, I may need to use dynamic/static libraries for different libraries, so I cannot set the environment variables uniformly. Is there any way to solve this problem?
The text was updated successfully, but these errors were encountered: