Opened 6 years ago

Last modified 6 years ago

#5817 reopened defect

WinRT compilation does not work

Reported by: Marcelo Emmerich Owned by:
Priority: important Component: build system
Version: unspecified Keywords:
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Followed strictly the compilation guide from
https://trac.ffmpeg.org/wiki/CompilationGuide/WinRT
for Windows 10 x64 with VS 2015 and FFMPEG 3.1.3.

When doing "make" the following error appears:

C:/ffmpeg/libavcodec/nvenc.c(173): error C4013: "LoadLibrary" undefined;

make: * libavcodec/nvenc.o Error 2

I tried the older releases of FFMPEG and they all worked fine, but it didn´t work for the newest version, neither on Windows 10 nor on Windows 8.1.

How to reproduce:
Get VS 2015, set up MSYS2, yasm and gas-preprocessor as described in the guide. (Veryfying my FFMPEG setup worked correctly.)
Set up the variables in VS2015 x86 x64 Cross Tools Command Prompt like they do in the guide,open the msys2 shell, configure and make.

Change History (9)

comment:1 by Carl Eugen Hoyos, 6 years ago

Keywords: compilation guide msvc visual studio removed
Resolution: invalid
Status: newclosed
Version: unspecified

Please test current FFmpeg git head.

comment:2 by Carl Eugen Hoyos, 6 years ago

Please test current FFmpeg git head.

comment:3 by Marcelo Emmerich, 6 years ago

I tested with current hit HEAD. The original error went away and the DLLs were built. However, when running our application compiled with the newly build ffmpeg from git HEAD, the application crashed with The application was unable to start correctly (0xc000a200). Click OK to close the application

Environment is WIndows 10 64bit.

comment:4 by Marcelo Emmerich, 6 years ago

I tested with current hit HEAD. The original error went away and the DLLs were built. However, when running our application compiled with the newly build ffmpeg from git HEAD, the application crashed with The application was unable to start correctly (0xc000a200). Click OK to close the application

Environment is WIndows 10 64bit.

comment:5 by Carl Eugen Hoyos, 6 years ago

Is this related to LoadLibrary or is this an independent issue?
To test, try to compile with --disable-nvenc.

comment:6 by Marcelo Emmerich, 6 years ago

I rebuilt with --disable-nvenc but resulting test application still gives The application was unable to start correctly (0xc000a200). Click OK to close the application.

The error code refers to the linker option APPCONTAINER. I can see that the configure command contains --extra-ldflags="-APPCONTAINER WindowsApp.lib". Leaving that out results in the library not being build at all.

comment:7 by Carl Eugen Hoyos, 6 years ago

Priority: normalimportant
Resolution: invalid
Status: closedreopened

Is the issue reproducible with ./configure && make ffmpeg.exe (and ./configure --disable-nvenc && make ffmpeg.exe)?

Last edited 6 years ago by Carl Eugen Hoyos (previous) (diff)

comment:8 by Carl Eugen Hoyos, 6 years ago

Summary: compilation guide does not work with latest versionWinRT compilation does not work

comment:9 by Marcelo Emmerich, 6 years ago

I have tried to do ./configure --disable-nvenc && make ffmpeg.exe , but then the message
make: *** No Rule to make „ffmpeg.exe“. Stop. occurs.

I also tested it with

--target-os=win64 instead of --target-os=win32, but the error (0xc000a200) was the same when running a test application.

Note: See TracTickets for help on using tickets.