MythTV port committed (was: Possible FreeBSD port?)
Torfinn Ingolfsen
torfinn.ingolfsen at broadpark.no
Sat Dec 23 16:33:12 PST 2006
Hi everyone!
On Sat, 23 Dec 2006 09:23:05 +1030
Greg 'groggy' Lehey <grog at FreeBSD.org> wrote:
> I didn't know about this script, but I have committed a new
Hmm, perhaps you didn't get the mail I sent you (private)?
> > I will try to get the port working under FreeBSD/amd64 so that I can
> > test it.
>
> Thanks. Please let me know if you make any progress. Yesterday I
> marked it i386 only, so you'll have to frob the Makefile.
Ok. here is a short status on getting MythTV working under
FreeBSD/amd64.
1) libdts. If you have libdts (multimedia/libdts) installed, you will
hit this one. MythTV's configure isn't able to figure out that libdts on
amd64 is named libdts_pic. Easy workaround: add '--disble-dts' to the
configure line in the port Makefile .
Proper fix: I really don't know.
2) when compiling libmythtv (libs/libmythtv) it fails on the file
yuv2rgb.cpp, with this error:
yuv2rgb.cpp: In function `void yuv420_argb32_non_mmx(unsigned char*, unsigned char*, unsigned char*, unsigned char*, int, int, int, int, int, int)':
yuv2rgb.cpp:444: error: no matching function for call to `min(unsigned int, const int&)'
yuv2rgb.cpp:444: error: no matching function for call to `min(unsigned int, const int&)'
yuv2rgb.cpp:444: error: no matching function for call to `min(unsigned int, const int&)'
yuv2rgb.cpp:445: error: no matching function for call to `min(unsigned int, const int&)'
yuv2rgb.cpp:445: error: no matching function for call to `min(unsigned int, const int&)'
yuv2rgb.cpp:445: error: no matching function for call to `min(unsigned int, const int&)'
yuv2rgb.cpp:446: error: no matching function for call to `min(unsigned int, const int&)'
yuv2rgb.cpp:446: error: no matching function for call to `min(unsigned int, const int&)'
yuv2rgb.cpp:446: error: no matching function for call to `min(unsigned int, const int&)'
yuv2rgb.cpp:447: error: no matching function for call to `min(unsigned int, const int&)'
yuv2rgb.cpp:447: error: no matching function for call to `min(unsigned int, const int&)'
yuv2rgb.cpp:447: error: no matching function for call to `min(unsigned int, const int&)'
*** Error code 1
Stop in /usr/ports/multimedia/mythtv/work/mythtv-0.20/libs/libmythtv.
*** Error code 1
The function call in line 444 of that file is this:
RGBOUT(d1[R_OI], d1[G_OI], d1[B_OI], y1_ptr[0]);
Which is defined at line 392 as:
#define RGBOUT(r, g, b, y1)\
{\
y = (y1 - 16) * C_Y;\
r = std::min(UCHAR_MAX, std::max(0, (y + r_add) >> SCALE_BITS));\
g = std::min(UCHAR_MAX, std::max(0, (y + g_add) >> SCALE_BITS));\
b = std::min(UCHAR_MAX, std::max(0, (y + b_add) >> SCALE_BITS));\
}
which is only using the standard min template from algorithm, I think.
At the beginning of the yuv2rgb.cpp file we have these lines:
#include <cstdio>
#include <cstdlib>
#include <algorithm>
So, can anyone explain to me why this fails?
I tried searching Google, but didn't find anything.
And that is the point at which I'm stuck now.
Oh, and Merry Christmas, all of you!
--
Regards,
Torfinn Ingolfsen,
Norway
More information about the freebsd-multimedia
mailing list