gst-plugins-rs fails to build on Windows
Summary:
Setup following readme using windows PS script to install dependencies, main branch recent state, building gstreamer with intelmsdk and visualstudio variants. Rust variant is enabled by default but it fails to compile due to some missing components. Compile has no issues when variant disabled (-v norust
).
System:
- cerbero: commit 51881d45 on main (Sep 22)
- win x64 11 21H2 22000.978
Cerbero output:
$ ./cerbero-uninstalled -c config/win64.cbc -v visualstudio -v intelmsdk package gstreamer-1.0
←[KWARNING: vswhere.exe could not find Visual Studio version(s) vs17, vs16, vs15. Falling back to manual searching...
Build tools install prefix will be C:/GStreamer/cerbero/build/build-tools
Building recipes with Visual Studio 2019 whenever possible
Install prefix will be C:/GStreamer/cerbero/build/dist/msvc_x86_64
Building the following recipes: mingw-runtime libffi zlib proxy-libintl glib gstreamer-1.0 libogg libpng pixman expat bzip2 freetype libiconv fontconfig cairo fribidi harfbuzz pango libvorbis
libtheora orc opus graphene libjpeg-turbo gst-plugins-base-1.0 gst-shell speex tiff gdk-pixbuf libxml2 ca-certificates openssl glib-networking libpsl sqlite3 libsoup mpg123 lame wavpack flac
libvpx libdv gst-plugins-good-1.0 libass libkate openh264 librtmp libsrtp libdca libnice vo-aacenc libcroco librsvg openjpeg spandsp sbc ladspa srt zbar gst-plugins-bad-1.0 opencore-amr x264
gst-plugins-ugly-1.0 gst-plugins-rs pkg-config json-glib gst-rtsp-server-1.0 ffmpeg gst-libav-1.0 gst-devtools-1.0 gst-editing-services-1.0 vsintegration-1.0
Building using 14 job(s) with the following job subdivisions: compile: 7, install: 1, fetch: 2, and 4 general job(s)
[(1/72) mingw-runtime -> built]
[(2/72) zlib -> built]
[(3/72) proxy-libintl -> built]
[(4/72) pixman -> built]
[(5/72) libffi -> built]
[(6/72) orc -> built]
[(7/72) ca-certificates -> built]
[(8/72) libogg -> built]
[(9/72) bzip2 -> built]
[(10/72) expat -> built]
[(11/72) opus -> built]
[(12/72) libpng -> built]
[(13/72) glib -> built]
[(14/72) libjpeg-turbo -> built]
[(15/72) speex -> built]
[(16/72) libdca -> built]
[(17/72) fribidi -> built]
[(18/72) freetype -> built]
[(19/72) libvorbis -> built]
[(20/72) libiconv -> built]
[(21/72) libkate -> built]
[(22/72) graphene -> built]
[(23/72) gstreamer-1.0 -> built]
[(24/72) vo-aacenc -> built]
[(25/72) libsrtp -> built]
[(26/72) openssl -> built]
[(27/72) fontconfig -> built]
[(28/72) sqlite3 -> built]
[(29/72) libxml2 -> built]
[(30/72) librtmp -> built]
[(31/72) tiff -> built]
[(32/72) openjpeg -> built]
[(33/72) libtheora -> built]
[(34/72) wavpack -> built]
[(35/72) cairo -> built]
[(36/72) libnice -> built]
[(37/72) gdk-pixbuf -> built]
[(38/72) glib-networking -> built]
[(39/72) lame -> built]
[(40/72) mpg123 -> built]
[(41/72) harfbuzz -> built]
[(42/72) ladspa -> built]
[(43/72) libpsl -> built]
[(44/72) zbar -> built]
[(45/72) openh264 -> built]
[(46/72) srt -> built]
[(47/72) pango -> built]
[(48/72) sbc -> built]
[(49/72) json-glib -> built]
[(50/72) libsoup -> built]
[(51/72) libdv -> built]
[(52/72) libcroco -> built]
[(53/72) gst-plugins-base-1.0 -> built]
[(54/72) libvpx -> built]
[(55/72) gst-shell -> built]
[(56/72) libass -> built]
[(57/72) spandsp -> built]
[(58/72) x264 -> built]
[(59/72) opencore-amr -> built]
[(60/72) gst-plugins-ugly-1.0 -> built]
[(61/72) librsvg -> built]
[(62/72) flac -> built]
WARNING: x86_64 pkg-config file 'C:/GStreamer/cerbero/build/dist/msvc_x86_64/lib/pkgconfig/gstreamer-webrtcnice-1.0.pc' not found
[(63/72) gst-plugins-bad-1.0 -> built]
[(64/72) gst-plugins-good-1.0 -> built]
[(65/72) gst-rtsp-server-1.0 -> built]
-----> Contents of C:/GStreamer/cerbero/build/logs/msvc_x86_64/gst-plugins-rs-fetch.log:
Running command ['git', 'remote', 'add', 'origin', 'https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs.git'] in C:/Users/T/.cache/cerbero-sources/gst-plugins-rs
error: remote origin already exists.
Running command ['git', 'remote', 'set-url', 'origin', 'https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs.git'] in C:/Users/T/.cache/cerbero-sources/gst-plugins-rs
Running command ['git', 'fetch', '--all'] in C:/Users/T/.cache/cerbero-sources/gst-plugins-rs
Running command ['git', 'fetch', '--all', '--tags', '-f'] in C:/Users/T/.cache/cerbero-sources/gst-plugins-rs
Running command ['git', 'reset', '--hard', 'origin/main'] in C:/Users/T/.cache/cerbero-sources/gst-plugins-rs
HEAD is now at 814f279e ci: Update fedora image to latest tag for new meson
Running command ['git', 'submodule', 'init'] in C:/Users/T/.cache/cerbero-sources/gst-plugins-rs
Running command ['git', 'submodule', 'sync'] in C:/Users/T/.cache/cerbero-sources/gst-plugins-rs
Running command ['git', 'submodule', 'update'] in C:/Users/T/.cache/cerbero-sources/gst-plugins-rs
Extracting project to run cargo vendor
Running command ['git', 'checkout', 'origin/main', '-B', 'cerbero_build'] in C:/Users/T/.cache/cerbero-sources/gst-plugins-rs
branch 'cerbero_build' set up to track 'origin/main'.
Your branch is up to date with 'origin/main'.
Reset branch 'cerbero_build'
Running command ['git', 'clone', 'C:/Users/T/.cache/cerbero-sources/gst-plugins-rs', '-s', '-b', 'cerbero_build', '.'] in C:/GStreamer/cerbero/build/sources/msvc_x86_64/gst-plugins-rs-0.8
.4.9999
Cloning into '.'...
done.
Running command ['git', 'config', 'user.email'] in None
Running command ['git', 'config', 'user.email', 'cerbero@gstreamer.freedesktop.org'] in C:/GStreamer/cerbero/build/sources/msvc_x86_64/gst-plugins-rs-0.8.4.9999
Running command ['git', 'config', 'user.name'] in None
Running command ['git', 'config', 'user.name', 'Cerbero Build System'] in C:/GStreamer/cerbero/build/sources/msvc_x86_64/gst-plugins-rs-0.8.4.9999
Running command ['git', 'config', '--file=.gitmodules', '--list'] in C:/GStreamer/cerbero/build/sources/msvc_x86_64/gst-plugins-rs-0.8.4.9999
fatal: unable to read config file '.gitmodules': No such file or directory
Running command ['git', 'submodule', 'init'] in C:/GStreamer/cerbero/build/sources/msvc_x86_64/gst-plugins-rs-0.8.4.9999
Running command ['git', 'submodule', 'sync'] in C:/GStreamer/cerbero/build/sources/msvc_x86_64/gst-plugins-rs-0.8.4.9999
Running command ['git', 'submodule', 'update'] in C:/GStreamer/cerbero/build/sources/msvc_x86_64/gst-plugins-rs-0.8.4.9999
Running command ['git', 'submodule', 'sync'] in C:/GStreamer/cerbero/build/sources/msvc_x86_64/gst-plugins-rs-0.8.4.9999
Running cargo fetch to generate Cargo.lock
Running command ['C:/GStreamer/cerbero/build/rust/cargo/bin/cargo.exe', 'update', '--verbose'] in C:/GStreamer/cerbero/build/sources/msvc_x86_64/gst-plugins-rs-0.8.4.9999
Recipe 'gst-plugins-rs' failed at the build step 'fetch'
Command Error: Running ['C:/GStreamer/cerbero/build/rust/cargo/bin/cargo.exe', 'update', '--verbose'] returned -1
Output in logfile C:/GStreamer/cerbero/build/logs/msvc_x86_64/gst-plugins-rs-fetch.log
Select an action to proceed:
[0] Enter the shell
[1] Rebuild the recipe from scratch
[2] Rebuild starting from the failed step
[3] Skip recipe
[4] Abort
4
***** Error running 'package' command:
Remarks:
- I wonder if vswhere.exe not finding VS is expected or should be considered a problem?
- There is no folder named
rust
underbuild
(C:/GStreamer/cerbero/build/rust
).