1
0
mirror of https://github.com/opencv/opencv.git synced 2026-07-21 19:33:03 +04:00
Files
opencv/cmake
Chevi koren 1f8257adad Merge pull request #28423 from Chevi-Koren:fix-clp-vcpkg-final
Fix Clp library detection for vcpkg on Windows #28423

## Problem

Building OpenCV with `WITH_CLP=ON` on Windows (vcpkg) fails:

LINK : fatal error LNK1181: cannot open input file 'libClp.lib'

vcpkg generates `Clp.lib` and `CoinUtils.lib`, but OpenCV expected `libClp.lib`/`libCoinUtils.lib`.

## Solution

Modernize CLP detection with a robust, platform-aware approach:

1. **CMake `find_package(Clp CONFIG)`**: detects vcpkg and uses imported targets (`Coin::Clp`, `Coin::CoinUtils`)
2. **Fallback**: pkg-config on Unix/Linux  
3. **Skip** Android/iOS

## Benefits

 Fixes Windows build with vcpkg  
 Uses modern CMake targets  
 Backward compatible with Unix/Linux  
 Safe for CI and mobile builds  
 Graceful fallback if CLP unavailable  

## Testing

- **Windows 11 + vcpkg**: build succeeds
- **No CLP installed**: configure/build succeeds  
- **Linux/Unix**: existing workflows unaffected
- **Android/iOS**: properly skipped

## Changes

- Update `cmake/OpenCVFindLibsPerf.cmake`
- Replace hardcoded library names with CMake targets
- Add mobile platform guards
- Preserve backward compatibility

Fixes #26592

---

### Pull Request Readiness Checklist

- [x] I agree to contribute to the project under Apache 2 License.
- [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
- [x] The PR is proposed to the proper branch (`4.x`)
- [x] There is a reference to the original bug report and related work (#26592)
- [x] The feature is well documented and sample code can be built with the project CMake
- [x] No additional tests required - this is a build system fix that maintains existing functionality
2026-04-29 11:40:23 +03:00
..
2026-03-02 05:03:50 -08:00
2025-12-06 11:03:53 +01:00
2021-12-10 16:14:56 +00:00