June 17, 2021, 05:11:44 PM



Compiling Avidemux v2.5.6 on Windows

Started by pulkitw, July 04, 2012, 06:57:21 AM

Previous topic - Next topic


As i said earlier i had "coreutils-5.97-2-msys-1.0.11-bin"


I don't see that in your previous posts but no worries.  Perhaps try upgrading to coreutils 5.97-3 bin and ext packages.  You need pr.exe.


Apologies, i had forgot to mention it before.
upgrading coreutils has done the job.

but i guess avidemux has some serious issues with me..
Here's another problem while running make:


It looks like you're using a 64-bit compiler with 32-bit libraries.

My guide was written at a time when only 32-bit builds were possible.  32-bit is still easier to do than 64-bit because more libraries are available pre-built as 32-bit.

I'd recommend getting 32-bit to work first.  You have two options:
1. Use a 32-bit (i686) compiler instead of 64-bit (x86_64).
2. If you're using a multilib compiler such as niXman's then you can instruct your 64-bit compiler to produce 32-bit binaries.  Execute the following lines in your MSYS shell or add them to your MSYS profile:

export CFLAGS="$CFLAGS -m32"
export CXXFLAGS="$CXXFLAGS -m32"
export LDFLAGS="$LDFLAGS -m32"

You'll need to start again with an empty build folder once you've made your tweaks.


July 05, 2012, 08:04:32 AM #19 Last Edit: July 05, 2012, 09:45:19 AM by pulkitw
Thanks gruntster, i was using niXman's compiler, executing MSYS shell commands did the job :)

I got another error while running the make command. I tried to figure it out but i could understand why the error is there, like i did not find any error in the code.


Weird.  One of the external libraries must also declare something called DELETE.  I can't reproduce the issue.

You could rename the DELETE macro in ADM_videoFilter.h and all source files that use it.  Alternatively you could search the header files in your MSYS and MinGW include folders for a conflicting DELETE declaration.  It may provide some insight into how to work around the problem in a cleaner fashion.

Jan Gruuthuse

DELETE was a reserved word in Visual FoxPro (database programming) perhaps some library is using this to? Don't know if this would be the case for other programs?


July 06, 2012, 06:24:36 AM #22 Last Edit: July 06, 2012, 06:28:13 AM by pulkitw
I renamed the DELETE macro, as i could not find any other file in MSYS and MinGW defining the same macro, it worked also but i got stuck here

I thought maybe i have modified wrong part of the file and so i downloaded the source code again and started compiling w/o changing the macro, it compiled smoothly through ADM_video/videoFilter, so i could not figure out exactly what was the issue with DELETE macro but anyways i got stuck at the same error mentioned above. I am out of ideas how should i cater this.


I'd say the ffmpeg build failed.  If you type "make ffmpeg" do you see an error in the output?


Yes, ffmpeg build failed.

how should i cater this?


If you're still using the niXman MinGW build then please delete dxva2api.h from MSYS/local/include.  A compatible version should already exist in mingw/x86_64-w64-mingw32/include.


Gruntster, even after deleting the dxva2api.h from MSYS/local/include i am getting the same error.

make ffmpeg gives this result :


What's the first error when executing "make ffmpeg"?


July 06, 2012, 07:15:40 AM #28 Last Edit: July 06, 2012, 07:32:45 AM by pulkitw
yea i have grabbed both the coreutils-5.97.3 packages as you said.
Sorry i could not redirect the errors to a file ( > filename did not work )
so here is the screen grab :


To capture errors to file, use "command 2> filename".

I guess it can't find dxva2api.h but I'd expect a missing header error instead.  I've actually added the include folder to my CFLAGS, CXXFLAGS and CMAKE_INCLUDE_PATH so maybe you need the same.  e.g.

export CMAKE_INCLUDE_PATH=/usr/local/include;/mingw/x86_64-w64-mingw32/include
export CFLAGS=-I/usr/local/include -I/mingw/x86_64-w64-mingw32/include
export CXXFLAGS=-I/usr/local/include -I/mingw/x86_64-w64-mingw32/include