[mythtv] MythTV 0.15 Port for FreeBSD
Matt Zimmerman
mdz at debian.org
Tue Jun 1 02:45:50 EDT 2004
On Tue, Jun 01, 2004 at 12:36:48AM -0500, Stacey Son wrote:
> Matt Zimmerman wrote:
> >patch-channel.cpp, patch-fifowriter.cpp
> > Can you explain these? Why doesn't it work on FreeBSD as-is?
> For channel.cpp I get a strange compile time error without the cast:
>
> channel.cpp: In function `int signalStrengthATSC_v4l2(int, int)':
> channel.cpp:474: error: no matching function for call to
> `clamp(__s32&, int,
> int)'
> *** Error code 1
>
> I haven't really figured out the correct way to handle this but casting
> it to an int seems to work. :) Note that FreeBSD is using g++ version
> 3.3.3.
It sounds like the template isn't being instantiated correctly. I wonder
what's different about your setup (I'm using 3.3.3 on Debian and it compiles
fine).
After all, __s32 should be equivalent to int anyway. What is it typedef'd
to on FreeBSD?
> For fifowriter.cpp, S_IREAD, S_IWRITE, S_IRGRP, and so on are defined
> in stat.h for FreeBSD.
Ah, ok. I added sys/stat.h and sys/types.h to fifowriter.cpp in CVS, so
this should be considered merged.
> >patch-mainserver.cpp
> > hunk 1: should be the same for linux; commited without #ifdefs
> > hunk 2: statfs again; fixed in the same way as the others
> > hunks 3-4: why does this thread need such a huge stack? maybe there is a
> > better way to fix it
> >
> >
> That is a very good question. The answer might be in the QT code
> somewhere. BTW, I don't know if these threads actually need 256K each
> but I do know that the default stack size (64K) doesn't work. With the
> default stack size the thread stack gets blown when doing live TV. If
> you can think of a better solution I would like to know.
64K should be more than enough; can you get a trace at the point where it
blows up? Maybe there is something big getting allocated on the stack that
should be moved to the heap.
--
- mdz
More information about the mythtv-dev
mailing list