Hi all,

I want to announce that I have successfully ported Licq to OS X.  Below
are instructions on how to do it.  I am posting this message to
fink-devel in the hope that someone would have commit access to post
a port to fink (which would be great!)  and to licq-devel, in case
anyone is interested in running Licq on OS X.

The porting effort was based on the latest stable release, 1.2.7.  The
plugin ported was the qt-gui.  My porting effort was based on OS X
10.3 (panther) with Apple's X code tools and Apple's X11.  My qt is
the one from fink.

Firstly you must setup fink.  If you have panther, you must compile
qt from source as that links against libz.1.1.3.dylib while other
system libraries links agaihsnt libz.1.dylib.  This will cause the
linker to complain of redefined symbols if you don't recompile.  
I believe this problem probably does not exist in 10.2, but I cannot
be sure.

After you have setup fink, you need to download the licq source.  After 
downloading and unpacking the source, the main licq daemon should compile 
quite cleanly.  This is the standard ./configure; make; make install procedure.

Note that configure will spit out a warning saying that you may not
be able to compile this.  This is because the configure script
does not recognize darwin.  This is harmless and may be ignored.

Next, cd into the plugins/qt-gui directory.  You will need to patch
configure before you can compile this.  For reference, you make take a
look at my patch.  My patch patches acinclude.m4.in however, if you
just intend to directly run ./configure, you will need to patch that.  
(Just look at my patch on how to do this).  This must be done because
the qt detection in the ./configure script is incorrect.  In OS X, 
shared libraries have the suffix .dylib, not .so, unlike most UNIX
distributions.  After making this modification you should be able to 
successfully run ./configure.  You can type make after this to compile.

Again, configure will spit out a warning saying you may not be able to
compile this.  It may be safely ignored.

libtool does things incorrectly by compiling the plugin into a static
library.  To temporarily fix this, you should cd into
plugins/qt-gui/src/.libs after a successful compile and relink it
yourself.  To find out what libraries you need, and what paths you need
to include, take a look inside the file licq_qt-gui.la.  In mine,
somehow -lqt-mt is missing, you may need to add this.

In relinking, remember you need to pass the following arguments to
gcc:

-flat_namespace -bundle -undefined suppress

These are required since OS X differentiates plugins and shared 
libraries.

In addition, if you are using Apple's X11, you may need to pass:

-framework Carbon

as well.  This is probably not required if you intend to use XFree86.

That is all.  Enjoy.

        - g.
-- 
geoff.
--- licq-1.2.7.orig/plugins/qt-gui/acinclude.m4.in      Wed Feb 26 04:11:06 2003
+++ licq-1.2.7/plugins/qt-gui/acinclude.m4.in   Thu Dec 11 14:08:16 2003
@@ -1,6 +1,7 @@
 ## -*- mode: m4 -*-
 dnl Copyright (c) 1998 N. D. Bellamy
 dnl Copyright (c) 2000 Dirk A. Mueller
+dnl Mac OS X Fixes Geoffrey Lee
 
 AC_DEFUN(AC_PATH_QT,
 [
@@ -54,7 +55,7 @@
 
       for qt_dir in $qt_library_dirs; do
         if test -z $ac_kde || test $kde_version -ge 3; then
-             if test -r "$qt_dir/libqt-mt.so"; then
+             if test -r "$qt_dir/libqt-mt.so" -o -r "$qt_dir/libqt-mt.dylib"; then
            ac_qt_libname=-lqt-mt
                ac_qt_libdir=$qt_dir
                break
@@ -62,7 +63,7 @@
            echo "tried $qt_dir/libqt-mt.so" >&AC_FD_CC 
           fi
 
-          if test -r "$qt_dir/libqt-mt.so.3"; then
+          if test -r "$qt_dir/libqt-mt.so.3" -o -r "$qt_dir/libqt-mt.dylib"; then
             ac_qt_libname=-lqt-mt
             ac_qt_libdir=$qt_dir
             break
@@ -71,7 +72,7 @@
           fi
                fi
 
-        if test -r "$qt_dir/libqt.so"; then
+        if test -r "$qt_dir/libqt.so" -o -r "$qt_dir/libqt.dylib"; then
           ac_qt_libname=-lqt
           ac_qt_libdir=$qt_dir
           break

Reply via email to