Page 1 of 1

ffplay uncompiled when ffmpeg did compile

Posted: Thu Apr 11, 2019 8:07 pm
by Dougox
After a few long nights, I compiled ffmpeg to on Windows 10 64bit using msys2/mingw with MSVC 2017.

ffmpeg.exe and ffprobe.exe now exist under c:\ffmpeg, but ffplay.exe is not there. (This is the primary reason I want to compile - I want to be able to start and stop ffplay from within a Tcl program and at various entries and durations. )

For now, I am trying to compile with original source downloaded from ffmpeg site about 1 week ago.

Here are the steps I took. (More comments after this detail.)

====================================================================== detailed steps to build config

1) open a cmd.exe window from MSVC
2) from that window, enter the following
> "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64
3) then run msys2
msys2_shell.cmd -msys -use-full-path

4) then from the msys2 window; add some cars to the path (seems it should have inherited these from MSVC cmd.exe but it didnt)

$ export PATH="/C/Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\Hostx64\x64":$PATH
$ export PATH="/C/msys64":$PATH
$ export PATH="/C/msys64/bin":$PATH
$ export PATH="/C/msys64/mingw64/bin":$PATH

5) run configure

$ cd /c/ffmpeg
$ ./configure --toolchain=msvc --arch=x86_64 --target-os=win64 --prefix=/c/ffmpeg
$ make

I had gotten are error 'pkg-config' not found. A little searching led me to download
pkg-config.exe and libglib-2.0-0.dll from gtk+ and put copies into c:\msys64\mingw64\bin
and to copy the existing libintl*.dll to c:\msys64\mingw64\bin\libintl.dll
( src: https://www.gaia-gis.it/spatialite-3.0. ... ow_to.html )

That did not fix the pkg-config error, however, pkg-config does exist and its in the msys2 path as shown by 'echo $PATH'.

================================================================================== end detail


Then from here it took about 40 minutes or so to compile.
It comleted with no visible error messages.
And as I said, ffmpeg.exe and ffprobe.exe were created but ffplay.exe was NOT.

I see these lines in the config.mak file"
!CONFIG_FFPLAY=yes
CONFIG_FFPROBE=yes
CONFIG_FFMPEG=yes

I presume that means it could not find a required dependancy? Not sure.
Any tips greatly are appreciated. (Even if you don't see this for weeks, i will still be interested in help!!)

I've uploaded the config.log, conig.mak, config.sh and config files to here:
http://www.memkeep.com/ffmpeg

Thanks,
Doug

Re: ffplay uncompiled when ffmpeg did compile

Posted: Wed Apr 24, 2019 10:30 pm
by qyot27
The right way to install pkg-config is to use MSys2's provided package manager:

Code: Select all

pacman -S msys/pkg-config
Making MSys2 inherit the Windows PATH values means making sure msys2.ini at least looks like this:

Code: Select all

CHERE_INVOKING=1
MSYS2_PATH_TYPE=inherit
MSYSTEM=MSYS
MSYS2_PATH_TYPE=inherit is mandatory; CHERE_INVOKING is optional, but useful if you'd rather not have to navigate back out of MSys2's directory system.

FFplay requires SDL2, which the log seems to indicate you have, but if SDL2 was built as static, you need to pass --pkg-config-flags=" --static" to ./configure.