Guys, I managed to get it to compile, at last!! So problem was I needed to
install the packages as listed previously and change target-os to be
mingw32 from win32.  Thanks!!

I have few dependency issues to resolve like missing libwinpthread-1.dll,
libgcc_s_dw2-1.dll, libbz2-1.dll, zlib1.dll.

Is it possible to have FFmpeg build without depending on Msys2 environment
DLLs?

Thanks gain.

On Sun, Sep 13, 2015 at 7:51 PM, Alan Petrus <[email protected]> wrote:

> Thanks Greg,
>
> I went through the installation process again, and I was missing
> base-devel package (which gave me make and bunch of other tools). So I
> modified my installation steps as follows:
>
> start new installation, then
> pacman -Syu
> update-core
> pacman -S base-devel
> pacman -S mingw-w64-i686-toolchain
> pacman -S yasm
> start mingw32 shell
>
> got error the lib.exe was not found in tools.
>
> so I started Visual Studio x86 environment and from it launched mingw32
> msys2 shell, ran make again and it fails with same error:
> gcc.exe: error: unrecognized command line option
> '-implib:libavutil/avutil.lib'
>
> I'm not sure what else to try.
>
> Do we know if people have compiled FFmpeg under Msys2? I know the FFmpeg
> released library for Windows is compiled under Linux using cross-compile
> tools.
>
> Any suggestions moving forward?
>
> Thanks
>
> On Sun, Sep 13, 2015 at 6:02 PM, Greg Jung <[email protected]> wrote:
>
>> Hi Alan,
>>  If by " based on what I gathered from online" does not include a heavy
>> dose of the
>> msys2 wiki pages found via SourceForge, then you should go read those.
>>
>> 1. Download and installed msys2-i686-20150512.exe to c:\msys32
>>> 2. Start MSYS2 Shell, and grab packages like so:
>>>
>>
>> There is a gui installer that should be better at getting your first
>> configuration going than you doing this by hand.  Again, if you read the
>> wiki again, including the
>> elucidations (DON'T SKIP the explanations) ...
>>
>>  the files in /usr/ and lower constitute support for the shell. Period.
>> They should
>> not be incorporated into your builds.
>>
>>   pacman -Ss <phrase>
>>
>> Where phrase=package name such as python, qt, cmake,  pkgconfig, etc.
>> The answers should come back to show you where it would be in three
>> repositories,
>> named
>> mingw32, mingw64, and msys.  Such as for cmake:
>>
>>> $ pacman -Ss cmake
>>>
>>> mingw32/mingw-w64-i686-cmake 3.3.1-1 [installed: 3.2.3-2]
>>>
>>>     A cross-platform open-source make system (mingw-w64).
>>>
>>> mingw32/mingw-w64-i686-extra-cmake-modules 5.12.0-1
>>>
>>>     Extra CMake modules (mingw-w64)
>>>
>>> mingw64/mingw-w64-x86_64-cmake 3.3.1-1
>>>
>>>     A cross-platform open-source make system (mingw-w64).
>>>
>>> mingw64/mingw-w64-x86_64-extra-cmake-modules 5.12.0-1
>>>
>>>     Extra CMake modules (mingw-w64)
>>>
>>> msys/cmake 3.2.3-1 [installed]
>>>
>>>     A cross-platform open-source make system
>>>
>>>
>>> Although it is installed, I absolutely do not need msys/cmake but the
>> one I use is
>> fo 32-bit builds under /mingw32 and compiler toolchain + library
>> depencies kept
>> under that subdirectory.  So to install cmake I say
>>
>> pacman -S mingw-w64-i686-cmake
>>
>>   and the files will be installed under /mingw32.  I will use them when I
>> start the mingw32-msys2 shell and the $PATH is set such that /mingw32/bin
>> is first in line.
>>
>> $ pacman -Ss tar
>>   < other stuff>
>>
>>> msys/bsdtar 3.1.2-5 (base) [installed]
>>>
>>>     library that can create and read several streaming archive formats
>>>
>>> msys/perl 5.22.0-2 (base-devel) [installed]
>>>
>>>     A highly capable, feature-rich programming language
>>>
>>> msys/tar 1.28-3 (compression) [installed]
>>>
>>>     Utility used to store, backup, and transport files
>>>
>>> So these utilities are attached to msys because they just do stuff
>> unrelated directly to building your compile.
>> Be sure to get pkg-config:
>>
>>> $ pacman -Ss pkgconfig
>>>
>>> msys/perl-ExtUtils-PkgConfig 1.15-2 (perl-modules)
>>>
>>>     The Perl Pkgconfig module
>>>
>>> msys/pkg-config 0.28-2 (base-devel) [installed]
>>>
>>>     A system for managing library compile/link flags
>>>
>>>
>>>> greg@Homerw7 MINGW64 ~
>>>
>>> $ pacman -Ss pkg
>>>
>>> mingw32/mingw-w64-i686-pkg-config 0.28-5 (mingw-w64-i686-toolchain)
>>>> [installed: 0.28-4]
>>>
>>>     A system for managing library compile/link flags (mingw-w64)
>>>
>>> mingw64/mingw-w64-x86_64-pkg-config 0.28-5 (mingw-w64-x86_64-toolchain)
>>>> [installed: 0.28-4]
>>>
>>>     A system for managing library compile/link flags (mingw-w64)
>>>
>>> msys/perl-ExtUtils-PkgConfig 1.15-2 (perl-modules)
>>>
>>>     The Perl Pkgconfig module
>>>
>>> msys/pkg-config 0.28-2 (base-devel) [installed]
>>>
>>>     A system for managing library compile/link flags
>>>
>>>
>>
>>> > rename C:\msys32\usr\bin\link.exe to C:\msys32\usr\bin\link.exe.bak
>>> >
>>>
>>  If you've been experimenting with the /usr/ files you probably want to
>> just wipe it all
>> and start fresh.  Use the gui installer, get the msys2 in the windows
>> menu ...
>> do it all  "By The Book"
>>
>> On Sat, Sep 12, 2015 at 8:21 PM, Alan Petrus <[email protected]>
>> wrote:
>>
>>>
>>> Hi Guys,
>>>
>>> I'm trying to compile FFmpeg under Windows 10 using Msys2, targeting
>>> 32-bit. However, compiling fails.  Here are the steps that I put together
>>> based on what I gathered from online:
>>>
>>> 1. Download and installed msys2-i686-20150512.exe to c:\msys32
>>> 2. Start MSYS2 Shell, and grab packages like so:
>>> pacman -Syu      (I've noticed bash.exe crash at times, but retying
>>> works)
>>> pacman -S make
>>> pacman -S gcc
>>> pacman -S diffutils
>>> pacman -S coreutils
>>> pacman -S pkg-config
>>> pacman -S tar
>>> pacman -S yasm
>>> rename C:\msys32\usr\bin\link.exe to C:\msys32\usr\bin\link.exe.bak
>>> start VS2015 x86 Native Tools Command Prompt, then start
>>> c:\msys32\msys2_shell.bat (so we get access to lib.exe and link.exe)
>>>
>>> Then I run configure followed by make like so:
>>>
>>> ../../../configure --extra-ldflags="-Wl,-add-stdcall-alias"
>>> --enable-memalign-hack --target-os=win32 --arch=x86  --enable-cross-compile
>>> --enable-shared --disable-static --disable-d3d11va --disable-debug
>>>  --prefix=../../../output/win/x86
>>>
>>> make
>>>
>>> Here is the error:
>>> LD      libavutil/avutil-54.dll
>>> gcc: error: unrecognized command line option
>>> ‘-implib:libavutil/avutil.lib’
>>> /home/Prezla/ffmpeg-2.7.2/library.mak:111: recipe for target
>>> 'libavutil/avutil-54.dll' failed
>>> make: *** [libavutil/avutil-54.dll] Error 1
>>>
>>>
>>> My impression is that Msys2 is sufficient to build FFmpeg. I don't
>>> understand what Mingw's role is or if it's needed.  Any suggestions? Did I
>>> miss something?
>>>
>>> Thank you in advanced,
>>>
>>> /D
>>>
>>>
>>>
>>>
>>> ------------------------------------------------------------------------------
>>>
>>> _______________________________________________
>>> Msys2-users mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/msys2-users
>>>
>>>
>>
>
------------------------------------------------------------------------------
_______________________________________________
Msys2-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/msys2-users

Reply via email to