At 8:47 AM -0500 3/29/12, Ryan Schmidt wrote:
On Mar 28, 2012, at 19:14, Craig Treleaven wrote:
I've run into a wall trying to port MythTV. The linker barfs complaining:
ld: -L must be immediately followed by a directory path (no space)
Debug-level log from my most recent attempt is here:
http://dl.dropbox.com/u/26787680/0.25%20macports%20build%20fail%202012Mar28.txt
I do agree with the error message... the log shows these arguments
being used on a g++ invocation:
-L -lQtGui_debug
Perhaps some directory name variable is not being set and is therefore empty.
Portfile in development* is here:
http://dl.dropbox.com/u/26787680/Portfile
fetch.type git
git.branch 92f7d1f51c
Does the 0.25-rc tarball posted on github not work? This is hundreds
of MB and takes a long time to fetch, which happens every time I
clean and try again, which is something I do often when
troubleshooting and/or developing a port, which makes it hard to
work on the port.
Sorry, I'm branch new to developing a port. Exactly, what should I
do to use the tarball? I agree that the git clone is quite slow.
license GPL
Can you be more specific about what version(s) of the GPL?
Need to research this. First, though, I want to get a working build! ;)
maintainers ctreleaven openmaintainer
Since you are not a committer, the maintainers line should contain
your actual (obfuscated) email address:
maintainers cogeco.ca:ctreleaven openmaintainer
Noted, thanks.
pre-configure { append worksrcpath "/mythtv" }
This is an odd way of setting worksrcpath, and fails if you ask
MacPorts to break the installation into separate steps, as in:
$ cd mythtv
$ sudo port configure
$ sudo port build
So you simply want:
worksrcdir ${name}-${version}/mythtv
Will correct.
You'll also want to remove the version line; the github.setup line
sets the version for you.
configure.env-append MACOSX_DEPLOYMENT_TARGET="10.5" \
CFLAGS="-m32" \
CPPFLAGS="-m32" \
CXXFLAGS="-m32" \
LDFLAGS="-m32 -F/System/Library/Frameworks
-L/usr/lib -L${prefix}/lib" \
ECXXFLAGS="-m32"
I wouldn't think you'd need to specify -m32 everywhere, since
MacPorts already sets -arch i386 everywhere for you, which should be
the same thing.
I'm copying the existing build processes. Eventually, I want to
install some optional Perl and Python dependencies and I believe one
of them fails in a 64 bit environment. If I can get 32 bit working,
I'll go on and try 64 bit.
Note that MacPorts has special variables for most of these env vars,
which you should set or append to, instead of manually appending to
the environment:
macosx_deployment_target
configure.cflags
configure.cppflags
configure.cxxflags
configure.ldflags
Found those later, I'll change.
I'm surprised you need to specify -L/usr/lib, since /usr/lib is a
standard library directory that should be searched anyway. Or are
you just trying to force that /usr/lib is searched before
${prefix}/lib? If so, I'd be curious to know why, since that's the
opposite of what we usually want.
Ignorance on my part. I'll fix.
It is a problem that the port is building using "gcc" and "g++"; see:
https://trac.macports.org/wiki/UsingTheRightCompiler
Sorry, I've read the page but I don't understand the problem. My
output includes the following:
CXX='ccache /usr/bin/g++-4.2'
CC='ccache /usr/bin/gcc-4.2'
Is this a problem?
It appears to be compiling its own version of libavcodec. The
version that the ffmpeg port provides is not sufficient?
Correct. Myth compiles its own version of ffmpeg because there is
too much variability in arguments that various versions of ffmpeg
accept. For each major MythTV version, they resync ffmpeg.
See output of "port lint --nitpick" for some whitespace nits.
Will do.
Finally, I fail with:
dvdnav/dvdnav.c: In function 'dvdnav_open':
dvdnav/dvdnav.c:79: error: 'DVDNAV_SVN_REV' undeclared (first use in
this function)
dvdnav/dvdnav.c:79: error: (Each undeclared identifier is reported only once
dvdnav/dvdnav.c:79: error: for each function it appears in.)
Strange.
*Needs qt4-mac +mysql5. Takes 1 hour plus to build the
dependencies on my quad-core MBP.
Admittedly I have not done this yet. Guess I'd better get started.
In specifying the port dependency, how does one check that a
particular variant is present?
Also, some more searching suggests that qt ver 4.6.3 might work where
the default 4.7.4 doesn't. How does one get a list of the versions
of a port that may be installed?
Many thanks for the feedback.
Craig
--
--
Craig Treleaven, CA -- Clearview Consulting
(905) 829-2054 [email protected]
_______________________________________________
macports-dev mailing list
[email protected]
http://lists.macosforge.org/mailman/listinfo.cgi/macports-dev