R: R: [GRASS-dev] GRASS FFMPEG support

Glynn Clements glynn at gclements.plus.com
Thu Jun 12 20:38:57 EDT 2008


marco.pasetti at alice.it wrote:

> I built GRASS (wow! 1 hour against the 3 hours needed on my old
> machine...

I know building GRASS on Windows is slower than Linux, but that's
crazy. On my Linux system, it takes around 4 minutes:

	$ time make -j 4 &> build.log

	real	4m4.969s
	user	5m58.420s
	sys	1m4.099s

That's the new one (2.2GHz Core2 Duo, 2GiB RAM), but even the old one
(800MHz P3, 512MiB RAM) only took around half an hour.

> NVIZ build failed, because of the following errors:
>  
> (cd /usr/local/src/grass-6.3.0/dist.i686-pc-mingw32/lib; ln -f -s libgrass_ogsf.6.3.0.dll /usr/local/src/grass-6.3.0/dist.i686-pc-mingw32/lib/libgrass_ogsf.dll)
> OBJ.i686-pc-mingw32/gsd_img_mpeg.o: In function `gsd_close_mpeg':
> C:/MSYS/local/src/grass-6.3.0/lib/ogsf/gsd_img_mpeg.c:182: undefined reference to `av_free'
> C:/MSYS/local/src/grass-6.3.0/lib/ogsf/gsd_img_mpeg.c:183: undefined reference to `av_free'

When posting error messages, please include the command which
generated the error.

AFAICT, av_free should be defined in libavutil. The configure script
performs the tests first without -lavutil, then (if that fails) with
it.

However, as OGSF uses av_free directly, configure should really be
testing explicitly for libavutil. It isn't necessary on Linux, but
Windows handles DLLs differently.

For now, I suggest manually adding -lavutil to the FFMPEGLIB setting
in include/Make/Platform.make.

I have committed a fix (r31695) to SVN trunk.

-- 
Glynn Clements <glynn at gclements.plus.com>


More information about the grass-dev mailing list