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