lmc-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lmc-dev] MovieFly on FreeBSD (long)


From: lmc-dev
Subject: [lmc-dev] MovieFly on FreeBSD (long)
Date: Mon, 01 Aug 2005 05:09:04 +0200
User-agent: Mozilla Thunderbird 1.0 (X11/20050108)

Hello all, -

today I installed MovieFly on FreeBSD which was a bit of a hassle; thus, I thought it might be helpful to post the steps I had to perform in order to make it work.

1. Required dependencies

As I had assumed to be facing difficulties, the first thing I did was set up a seperate jail environment which I could tailor to the specific needs of MovieFly without changing my running work environment.

The base system is FreeBSD 4.11. I first compiled and installed perl 5.8 from the ports and issued "use.perl port" to disable the perl version of the BSD base system. Then I compiled and installed the p5-POE-Component-Client-UserAgent port which in turn added a lot of other perl modules, including p5-libwww.

For the rest of the dependecies of MovieFly I used "pkg_add -r" to automatically fetch and install binary packages.

Using this method, I explicitly installed the ports "qt" (qt 3.3), "qmake", "eject", "transcode", "gmake", "py23-qt". Other (recursive) depedencies were installed automatically. (I added a list of all installed packages at the end of this message.)


2. Issues using ./configure

2.1 The first problem I stumbled into was configure's unability to find the python qt module. This was caused by configure trying to execute the command "python" whereas the python executable was installed as "python2.3" by the packages. In solved this by creating symlinks "pyhthon2.3 -> python" and "python2.3-shared" -> "python-shared" in /usr/local/bin.

2.2 The second problem was configures unability to find the Qt files, starting with the message "checking for Qt... ls: /lib/libqt*: No such file or directory". Qt on FreeBSD gets installed into /usr/X11R6/, thus adding --with-Qt-dir=/usr/X11R6/ quickly resolved the issue.

2.3 A problem I did not really solve was configure's test of the correct functioning of the qt environment -- I just inserted a the line 'bnv_cv_qt_test_result="succes"' at the appropriate place (somewhere around line 6369).

2.3 Next thing I had to do was add "--with-sip=/usr/local/share/sip/qt/qtmod.sip" to the configure commandline in order to enable it to find sip.

Otherwise, I got:
        "checking for sip include path... find: illegal option -- t
        find: illegal option -- y
        find: illegal option -- p
        find: illegal option -- e
        find: f: No such file or directory
        find: /usr/share/sip: No such file or directory"

There seems to be something wrong with the
        sip_path=`find $i -type f -name qtmod.sip -print | sed "1q"`
line in configure, resulting in the above error.


3. Issues during compilation

3.1 After configure finished its job, I ran gmake -- only to be confronted with a bunch of messages like:

        "In file included from sip_build/siplmcqtcmodule.cpp:9:
        siplmcqtListViewSort.h:14: sipqtQListViewItem.h: No such file or        
directory
        siplmcqtListViewSort.h:15: sipqtQListView.h: No such file or    
        directory
        [...]"

and

        "sip_build/siplmcqtListViewSort.cpp: In function `struct
        PyObject * meth_ListViewSort_activatedPos(PyObject *, PyObject
        *)':sip_build/siplmcqtListViewSort.cpp:840: `sipClass_QPoint'
        undeclared (first use this function)",

resulting in an error stopping the process.

This could be solved by compiling with 'gmake CXXFLAGS="-Isip_build"'.


3.2 Then, qmake failed because by default, no spec is set:

        "/usr/local/bin/qmake -o listviewsort.mak listviewsort.pro
        QMAKESPEC has not been set, so configuration cannot be deduced.
        Error processing project file:
        /usr/home/martin/lmc-0.12.3/src/lmcqt/listviewsort.pro"

This could be solved by issueing the following on the command line:
        export QMAKESPEC=/usr/local/share/qt/mkspecs/freebsd-g++


3.3 The next thing that failed was this:

c++ -c -Isip_build -I/usr/local/share/qt/mkspecs/freebsd-g++ -I. -I../../../../../local/include -I/include -o listviewsort.o
        listviewsort.cpp
        In file included from listviewsort.cpp:23:
        listviewsort.h:26: qlistview.h: No such file or directory
        listviewsort.h:27: qstring.h: No such file or directory

Adding -I/usr/X11R6/include to CXXFLAGS solved this one.


3.4 Then, the command
"c++ -Wl,-rpath,/usr/local/lib -Wl,-rpath,/lib -pthread -shared -Wl,-soname,liblistviewsort.so.0 -o liblistviewsort.so.0.1.0 listviewsort.o -L/usr/local/lib -L/lib -lqt-mt"
failed with the error: "/usr/libexec/elf/ld: cannot find -lqt-mt"

Adding "--with-Qt-lib-dir=/usr/X11R6/lib" and "--with-Qt-include-dir=/usr/X11R6/include" to the configure command line did *not* solve this problem. Also, adding "-L/usr/X11R6/lib" to the CXXFLAGS had no effect.

So I compiled the file by hand, adding -L/usr/X11R6/lib to the command.

3.5 The next command to fail was
        "g++ -shared -o lmcqt.so siplmcqtcmodule.o
        siplmcqtListViewSort.o  listviewsort.o -L/usr/X11R6//lib
        -lqt-mt  -lSM -lICE  -L/usr/X11R6/lib -lX11 -lXext -lXmu
        -lXt -lXi  -lm  -lpthread -L.",
with error:
        "/usr/libexec/elf/ld: cannot find -lpthread"

This was solved by removing the -lpthread from the appropriate "Makefile*" files.


4.

Installation went fine, but first I tried a prefix different from /usr/local (where python is installed) which resulted in the unability to run the program.

Also, I did only run the program for a short time, but it seems to function well except for the fact that I cannot open any .amc-Files, even ones created with MovieFly -- but this is another problem.

I hope this may help MovieFly to support FreeBSD out of the box in a future version.

Greetings,
Martin Brecher

p.s.: just for completeness, here is a list of the packages, I installed or which were installed as depencies during the steps mentioned above in section 1:

XFree86-libraries-4.4.0_3
cups-base-1.1.22.0_2
eject-1.4_2
expat-1.95.8
fontconfig-2.2.3,1
freetype2-2.1.7_4
gettext-0.14.1
glib-1.2.10_11
gmake-3.80_2
gtk-1.2.10_12
jpeg-6b_3
lcms-1.13_1,1
libXft-2.1.6
libdvdcss-1.2.8_1
libdvdread-0.9.4_1
libgnugetopt-1.2
libiconv-1.9.2_1
libmng-1.0.8
nas-1.7
p5-Authen-SASL-2.09
p5-Compress-Zlib-1.35
p5-Digest-1.10
p5-Digest-MD5-2.33
p5-Event-1.05
p5-Filter-1.30
p5-HTML-Parser-3.45
p5-HTML-Tagset-3.04
p5-MIME-Base64-3.05
p5-Net-1.19,1
p5-POE-0.3101_1
p5-POE-Component-Client-UserAgent-0.06
p5-ParallelUA-2.57
p5-PathTools-3.09
p5-Scalar-List-Utils-1.14,1
p5-Storable-2.15
p5-Test-Harness-2.52
p5-Test-Simple-0.60
p5-Time-HiRes-1.68,1
p5-URI-1.35
p5-libwww-5.803
perl-5.8.7
pkgconfig-0.15.0_1
png-1.2.8
py23-qt-3.13
py23-sip-4.1.1_1
python-2.3.4_3
qmake-3.3.3_1
qscintilla-1.4_1
qt-3.3.3_3
tiff-3.7.1_2
transcode-0.6.12_3




reply via email to

[Prev in Thread] Current Thread [Next in Thread]