Skip to content

Commit acdff27

Browse files
committed
fix(item B): windows-native pkg-config (pkgconfiglite) for FFmpeg detection
Prior run: hardcoded MSYS2 pkg-config path didn't exist -> cmake never saw ffmpeg -> cap_ffmpeg not compiled. Use choco pkgconfiglite (on windows PATH, usable by cmake in git-bash) + check all 4 .pc (avcodec/avformat/avutil/swscale).
1 parent 2193351 commit acdff27

1 file changed

Lines changed: 8 additions & 4 deletions

File tree

.github/workflows/snapshot-windows-opencv.yml

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
- name: tools (llvm/clang-cl, nasm, ninja)
2020
shell: pwsh
2121
run: |
22-
choco install -y --no-progress nasm ninja llvm | Out-Null
22+
choco install -y --no-progress nasm ninja llvm pkgconfiglite | Out-Null
2323
echo "C:\Program Files\NASM" | Out-File -FilePath $env:GITHUB_PATH -Append -Encoding utf8
2424
echo "C:\Program Files\LLVM\bin" | Out-File -FilePath $env:GITHUB_PATH -Append -Encoding utf8
2525
- name: build shared FFmpeg 8.1.2 prefix (MSVC) for cmake videoio discovery
@@ -57,10 +57,14 @@ jobs:
5757
shell: bash
5858
run: |
5959
set -eux
60-
# pkg-config (from MSYS2) + the ffmpeg prefix's .pc; skip OpenCV's prebuilt-dll download
61-
export PKG_CONFIG="$(cygpath -u 'C:/msys64/ucrt64/bin/pkg-config.exe' 2>/dev/null || command -v pkg-config)"
60+
# windows-native pkg-config (pkgconfiglite) + the ffmpeg prefix's .pc; skip
61+
# OpenCV's prebuilt-dll download so it uses our built shared FFmpeg.
62+
export PKG_CONFIG="$(command -v pkg-config)"
6263
export PKG_CONFIG_PATH="C:/ffprefix/lib/pkgconfig"
63-
"$PKG_CONFIG" --exists libavcodec && echo "pkg-config sees ffmpeg: $("$PKG_CONFIG" --modversion libavcodec)" || echo "WARN pkg-config no ffmpeg"
64+
echo "pkg-config: $PKG_CONFIG"; ls -la C:/ffprefix/lib/pkgconfig/ || true
65+
"$PKG_CONFIG" --exists libavcodec libavformat libavutil libswscale \
66+
&& echo "pkg-config sees ffmpeg: avcodec $("$PKG_CONFIG" --modversion libavcodec)" \
67+
|| echo "WARN pkg-config missing some ffmpeg .pc"
6468
cmake -G Ninja -S "$OPENCV_SRC" -B bld \
6569
-DCMAKE_BUILD_TYPE=Release \
6670
-DCMAKE_C_COMPILER=clang-cl -DCMAKE_CXX_COMPILER=clang-cl \

0 commit comments

Comments
 (0)