My 2 cents.....

Sorry about my bad english...

My user for test is: cdq
My linux is Ubuntu 9.10

Donwload Harbour SVN: svn co
https://harbour-project.svn.sourceforge.net/svnroot/harbour-project/trunk/harbour/home/cdq/harbour_svn/harbour

Download Qt 4.6.2 sources from: http://qt.nokia.com/downloads/linux-x11-cpp

Save as qt-everywhere-opensource-src-4.6.2.tar.gz in /home/cdq

Extract all files to /home/cdq/qt-everywhere-opensource-src-4.6.2*
_for_static*

Execute the following script from /home/cdq by typying: sh make_qt_static.sh

*#!/bin/bash
#name: make_qt_static.sh
cd /home/cdq/qt-everywhere-opensource-src-4.6.2_for_static
./configure -static -release -nomake demos -nomake examples -nomake tools
-qt-zlib -qt-gif -qt-libpng -qt-libmng -qt-libjpeg -prefix
/home/cdq/qt_static
make
make install
cd /home/cdq
*
It takes few minutes

When the script has finished, you have all qt libraries with extension .a
(instead of .so) in /home/cdq/qt_static/lib

Additionally, you need make hbqt's libraries for static access too.  At this
moment, it isn't posible without modify some makefiles from SVN (commenting
two lines):

/home/cdq/harbour_svn/harbour/
contrib/hbqt/Makefile

before (from line 26):

   ifneq ($(filter $(HB_PLATFORM),win wce),)
      ifneq ($(HB_QT_STATIC),)
         DIRS += hbqts
      endif
   endif

after

#  ifneq ($(filter $(HB_PLATFORM),win wce),)
      ifneq ($(HB_QT_STATIC),)
         DIRS += hbqts
      endif
#  endif

and then, repeat the same changes to:

/home/cdq/harbour_svn/harbour/contrib/hbqt/qtcore/Makefile (from line 21)
/home/cdq/harbour_svn/harbour/contrib/hbqt/qtgui/Makefile (from line 23)
/home/cdq/harbour_svn/harbour/contrib/hbqt/qtnetwork/Makefile (from line 23)

*Pritpal: can you make these changes into SVN ?*

Then, you are ready to make the hbqt's static libraries:

Execute the following script from /home/cdq : sh harbour_install.sh

*#!/bin/bash
#name: harbour_install.sh
cd /home/cdq/harbour_svn/harbour
export HB_QT_STATIC=yes
make
make install
cd /home/cdq*

After execute the script, you have new libraries in /usr/local/lib/harbour

*hbqts.a
hbqtcores.a
hbqtguis.a
hbqtnetworks.a*

That's all.  You are ready to make Harbour/GCC/HbQt program with static Qt
access.  Obviously, you need use HBMK2 for make it and you need add the
necessaries Linux libraries in link stage to resolve externals references.

-- 
Saludos/Regards/Abraços
CdQ
_______________________________________________
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to