[vcpkg baseline][ideviceinstaller] Fixing error LNK2005 when argtable2 installed before ideviceinstaller#28459
Conversation
So argtable is missing a dependency on getopt ? |
|
Yeah after checking argtable2. |
|
Be aware: You probably need to patch the CMake buildsystem to actually respect that setting. |
There was a problem hiding this comment.
This is a new experimental fast check for PR issues. Please let us know if this bot is helpful!
All manifest files must be formatted
./vcpkg format-manifest ports/*/vcpkg.json
Diff
diff --git a/ports/ideviceinstaller/vcpkg.json b/ports/ideviceinstaller/vcpkg.json
index 8f3f66d..ff9ea70 100644
--- a/ports/ideviceinstaller/vcpkg.json
+++ b/ports/ideviceinstaller/vcpkg.json
@@ -5,7 +5,7 @@
"description": "Manage apps of iOS devices",
"homepage": "https://libimobiledevice.org/",
"license": "LGPL-2.1-only",
- "supports": "windows & !arm64 ",
+ "supports": "windows & !arm64",
"dependencies": [
"libimobiledevice",
"libzip"You have modified or added at least one vcpkg.json where you should check the license field.
Details
If you feel able to do so, please consider adding a "license" field to the following files:
ports/argtable2/vcpkg.json
Valid values for the license field can be found in the documentation
There was a problem hiding this comment.
You have modified or added at least one vcpkg.json where you should check the license field.
Details
If you feel able to do so, please consider adding a "license" field to the following files:
ports/argtable2/vcpkg.json
Valid values for the license field can be found in the documentation
|
Also the error in |
|
It seems that not only |
There was a problem hiding this comment.
You have modified or added at least one vcpkg.json where you should check the license field.
Details
If you feel able to do so, please consider replacing the deprecated license identifiers in the following files:
ports/argtable3/vcpkg.json(has deprecated licenseBSD-2-Clause-FreeBSD)
Deprecated and non deprecated license identifiers can be found here
There was a problem hiding this comment.
You have modified or added at least one vcpkg.json where you should check the license field.
Details
If you feel able to do so, please consider replacing the deprecated license identifiers in the following files:
ports/argtable3/vcpkg.json(has deprecated licenseBSD-2-Clause-FreeBSD)
Deprecated and non deprecated license identifiers can be found here
There was a problem hiding this comment.
You have modified or added at least one vcpkg.json where you should check the license field.
Details
If you feel able to do so, please consider replacing the deprecated license identifiers in the following files:
ports/argtable3/vcpkg.json(has deprecated licenseBSD-2-Clause-NetBSD)
Deprecated and non deprecated license identifiers can be found here
There was a problem hiding this comment.
This is a new experimental fast check for PR issues. Please let us know if this bot is helpful!
PRs must add only one version and must not modify any published versions
When making any changes to a library, the version or port-version in vcpkg.json or CONTROL must be modified.
error: checked-in files for ideviceinstaller have changed but the version was not updated
version: 1.1.2.23#5
old SHA: 3e54543ef504b74edb836a2c47abb3845b83b7c3
new SHA: 422b75014378e1854bc318130f8ee2165245d6b5
Did you remember to update the version or port version?
Use --overwrite-version to bypass this check
***No files were updated***
You have modified or added at least one vcpkg.json where you should check the license field.
Details
If you feel able to do so, please consider replacing the deprecated license identifiers in the following files:
ports/argtable3/vcpkg.json(has deprecated licenseBSD-2-Clause-NetBSD)
Deprecated and non deprecated license identifiers can be found here
There was a problem hiding this comment.
You have modified or added at least one vcpkg.json where you should check the license field.
Details
If you feel able to do so, please consider replacing the deprecated license identifiers in the following files:
ports/argtable3/vcpkg.json(has deprecated licenseBSD-2-Clause-NetBSD)
Deprecated and non deprecated license identifiers can be found here
|
Now it is vendored getopt in darknet.lib.. |
|
Fixing by #28718. |
|
@Cheney-W , it has been a long time since you added a patch for the argtable3 port, so I'm not sure if you still remember the details. However, I'm curious why you had to patch argtable3 while this issue is about argtable2? Thanks. |
|
The reason for modifying argtable3 was that it could trigger issues with ideviceinstaller at the time. However, I've now found that even after reverting the previous changes, this port no longer affects ideviceinstaller. I suspect this is due to updates in ideviceinstaller. |
|
@Cheney-W , appreciate your investigation. If ideviceinstaller still works without |
Describe the pull request
What does your PR fix?
ideviceinstaller:x64-windows-static install failed, this error is currently blocking some PRs.
This issue could be fixed by using getopt as a dependence of argtable2.
Below is the detailed info of this error:
This issue only occurs when argtable2 installed before ideviceinstaller.
getopt is a dependence of ideviceinstaller, argtable2 is not, but getopt and argtable2 have same symbols:
Since ideviceinstaller installed by vcpkg_install_msbuild() and use USE_VCPKG_INTEGRATION parameter, it will link all of the .lib file under vcpkg/installed\x64-windows-static\lib, then the error LNK2005 occurs.