Qt4

From CBLFS
Revision as of 21:00, 18 January 2007 by Beaker (talk | contribs) (libpng is redundant in qt instructions as it is needed in X)
Jump to navigationJump to search
Download Source: ftp://ftp.trolltech.com/qt/source/qt-x11-opensource-src-4.8.5.tar.gz

Introduction to Qt4

The Qt4 package contains a C++ GUI library. This is useful for creating graphical applications or executing graphical applications that are dynamically linked to the Qt4 library. One of the major users of Qt4 is upcoming KDE-4.

Dependencies

Required

Optional

Configuration Information

If you would like to compile with MySQL support add the following to the configure command:

-plugin-sql-mysql -I/usr/include/mysql

If you would like to compile with PostgreSQL support add the following to the configure command:

-plugin-sql-psql -I/usr/include/postgresql/server

If you would like to compile with SQLite support add the following to the configure command:

-plugin-sql-sqlite2 -system-sqlite

If you would like to compile with unixODBC support add the following to the configure command:

-plugin-sql-odbc

If you would like to compile with NAS support add the following to the configure command:

-system-nas-sound

If your X Window System is NOT Xorg, then add to configure:

-no-xfixes

Non-Multilib

If you're X Window System prefix is something other then /usr/X11R6 then run the following command to change the hard coded paths in the sources:

for file in $(grep -lr "X11R6" *)
do
    sed -i "s@/usr/X11R6@${XORG_PREFIX}@g" $file
done

Compile the package:

./configure -prefix /opt/qt-4.8.5 \
-sysconfdir /etc/qt4 \
-qt-gif \
-system-zlib \
-system-libpng \
-system-libjpeg \
-system-libmng \
-no-exceptions \
-tablet &&
make

Install the package

make install &&
ln -v -sfn qt-4.8.5 /opt/qt4

Multilib

32Bit

If you're X Window System prefix is something other then /usr/X11R6 then run the following command to change the hard coded paths in the sources:

for file in $(grep -lr "X11R6" *)
do
    sed -i "s@/usr/X11R6@${XORG_PREFIX}@g" $file
done

Compile the package

export QMAKESPEC=linux-g++-32 &&
PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
./configure -prefix /opt/qt-4.8.5 \
-sysconfdir /etc/qt4 \
-qt-gif \
-system-zlib \
-system-libpng \
-system-libjpeg \
-system-libmng \
-no-exceptions \
-tablet &&
make

Install the package

make install &&
mv -v /opt/qt-4.8.5/bin/qmake{,-32} &&
mv -v /opt/qt-4.8.5/bin/uic{,-32} &&
mv -v /opt/qt-4.8.5/bin/uic3{,-32} &&
mv -v /opt/qt-4.8.5/bin/moc{,-32} &&
mv -v /opt/qt-4.8.5/bin/qtconfig{,-32}

N32

TO BE DONE

64Bit

If you're X Window System prefix is something other then /usr/X11R6 then run the following command to change the hard coded paths in the sources:

for file in $(grep -lr "X11R6" *)
do
    sed -i "s@/usr/X11R6@${XORG_PREFIX}@g" $file
done

Compile the package

export QMAKESPEC=linux-g++-64 &&
PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
./configure -prefix /opt/qt-4.8.5 \
-libdir /opt/qt-4.8.5/lib64 \
-plugindir /opt/qt-4.8.5/lib64/plugin \
-L/usr/lib64 \
-sysconfdir /etc/qt4 \
-qt-gif \
-system-zlib \
-system-libpng \
-system-libjpeg \
-system-libmng \
-no-exceptions \
-tablet &&
make

Install the package

make install &&
mv -v /opt/qt-4.8.5/bin/qmake{,-64} &&
mv -v /opt/qt-4.8.5/bin/uic{,-64} &&
mv -v /opt/qt-4.8.5/bin/uic3{,-64} &&
mv -v /opt/qt-4.8.5/bin/moc{,-64} &&
mv -v /opt/qt-4.8.5/bin/qtconfig{,-64} &&
ln -sfv /usr/bin/multiarch_wrapper /opt/qt-4.8.5/bin/qmake &&
ln -sfv /usr/bin/multiarch_wrapper /opt/qt-4.8.5/bin/uic &&
ln -sfv /usr/bin/multiarch_wrapper /opt/qt-4.8.5/bin/uic3 &&
ln -sfv /usr/bin/multiarch_wrapper /opt/qt-4.8.5/bin/moc &&
ln -sfv /usr/bin/multiarch_wrapper /opt/qt-4.8.5/bin/qtconfig &&
ln -v -sfn qt-4.8.5 /opt/qt4

Configuring

Non-Multilib

/etc/profile.d/20-qt4.sh

Create an addition to the Bash Startup Files:

cat > /etc/profile.d/20-qt4.sh << "EOF"
# Begin /etc/profile.d/20-qt4.sh

export PATH="${PATH}:/opt/qt4/bin"

export PKG_CONFIG_PATH="${PKG_CONFIG_PATH}${PKG_CONFIG_PATH+:}/opt/qt4/lib"

# End /etc/profile.d/20-qt4.sh
EOF

ld.so.conf

cat >> /etc/ld.so.conf << "EOF" &&
# Begin qt4 addition to /etc/ld.so.conf

/opt/qt4/lib

# End qt4 addition
EOF
ldconfig

Multilib

/etc/profile.d/20-qt4.sh

Create an addition to the Bash Startup Files:

cat > /etc/profile.d/20-qt4.sh << "EOF"
# Begin /etc/profile.d/20-qt4.sh

export PATH="${PATH}:/opt/qt4/bin"

export PKG_CONFIG_PATH32="${PKG_CONFIG_PATH32}${PKG_CONFIG_PATH32+:}/opt/qt4/lib"
export PKG_CONFIG_PATHN32="${PKG_CONFIG_PATHN32}${PKG_CONFIG_PATHN32+:}/opt/qt4/lib32"
export PKG_CONFIG_PATH64="${PKG_CONFIG_PATH64}${PKG_CONFIG_PATH64+:}/opt/qt4/lib64"

# End /etc/profile.d/20-qt4.sh
EOF

ld.so.conf

cat >> /etc/ld.so.conf << "EOF" &&
# Begin qt4 addition to /etc/ld.so.conf

/opt/qt4/lib
/opt/qt4/lib32
/opt/qt4/lib64

# End qt4 addition
EOF
ldconfig
Retrieved from "?title=Qt4&oldid=7215"