Installing Scribus on Win32

From Scribus Wiki
Jump to navigation Jump to search
THIS ARTICLE IS OUTDATED
Reason:   Scribus is now available for native installations on Win32 platforms. For more information visit http://windows.scribus.net!
Working until:   Scribus 1.3.2
    



Installing an older version from binaries

  • Install Cygwin with the following packages:

(Tips: During "Cygwin setup" in the list of sites to select I find the site ftp.mirror.ac.uk to be reliably fast (but don't take too long selecting pkgs or it will time out!); Also once Cygwin setup has brought up the package selection screen, pull the window wider and click on the [view] button in the top right so that it says "Full", then proceed to select the following packages alphabetically. :)

  + ghostscript-x11
  + jpeg
  + lcms
  + libart_lgpl
  + libpng
  + libxml2
  + psutils
  + tiff
  + xorg-X11-base
  + xorg-X11-fscl
  + xorg-X11-fsrv

Next start cygwin and do the following:

cd /
tar jxvf scribus-1.2.1.tar.bz2
tar jxvf qt-x11-free-3.3.3-0.tar.bz2
cd /opt/scribus/1.2/bin
ln -s /opt/qt/3.3/bin/cygqt-mt-3.dll

*Reboot your machine at this point so that the new .dll's are 
loaded properly. Once your machine is up, execute the following
inside the cygwin shell:

cd ~
Xwin -multiwindow -clipboard &
/opt/scribus/1.2/bin/scribus.exe &
 

Happy Scribing!

Scribus-win32 small.jpg


NOTE THAT THE CONTENT BELOW MAY BE OBSOLETE OR NOT WORK.

This second part deals with compiling QT from source found at the kde-cygwin project.

By posting these instructions here, hopefully others will be encouraged to engage the process of both documenting and applying the documentation to achieve a working recipe for building Scribus 1.3 for Windows.

Instructions for installing QT/X11 from source:

  • Remove all entries of cygwin from the registry
  • Move previous cygwin install c:\cygwin to c:\cygwin.old
  • Install Cygwin with the following packages:
  + autoconf
  + automake
  + binutils
  + byacc
  + cvs
  + flex
  + gcc-g++
  + ghostscript-x11
  + jpeg
  + lcms
  + libart_lgpl
  + libjpeg6b
  + libpng
  + libpng12
  + libpng12-devel
  + libtiff5
  + libtiff5-devel
  + libxml2
  + libxml2-devel
  + make
  + xorg-X11-base
  + xorg-X11-devel
  + xorg-X11-fscl
  + xorg-X11-fsrv

Obtain source:

cd ~/
cvs -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/kde-cygwin login
<enter>
cvs -z6 -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/kde-cygwin \
 co -r QT_WIN32_3_3_BRANCH qt-3

Later you can update the sources by

cd ~/src/qt-3
cvs -z6 update

But for now we'll continue with:

cd ~/src/qt-3
mkdir -p /opt/qt
ln -s `pwd` /opt/qt/3.3
export QTDIR=/opt/qt/3.3
export PATH=$QTDIR/bin:$PATH
export QMAKESPEC=cygwin-g++
make -f Makefile.cvs
echo yes | ./configure -platform cygwin-g++ -plugin-imgfmt-mng \
 -qt-zlib -qt-gif -qt-libpng -qt-libjpeg -qt-libmng -no-g++-exceptions \
 -thread -no-stl -no-sm -no-xft -no-xkb -no-xrender -disable-opengl \
 -disable-sql -prefix /opt/qt/3.3 -fast
make

(Huge thanks to Ralf and Peter of the kde-cygwin project!!!)

For permanent activation of the compiled package you should set some environment variables for accessing the qt dll's, qt applications and the man pages regardless of your current directory location. Do not skip this.

You can add the following lines to a file such as /etc/profile.d/qt33.sh or simply append them to your .bash_profile . Either way, the following will work, though you'll want to change the path to point to your bashrc if you want to do things that way:

cat >/etc/profile.d/qt33.sh 
export QTDIR=/opt/qt/3.3
export QMAKESPEC=cygwin-g++
export PATH="${QTDIR}/bin:${PATH}"
export MANPATH="${MANPATH}:${QTDIR}/doc/man"
export LD_LIBRARY_PATH="${QTDIR}/lib:${LD_LIBRARY_PATH}"
export LIBRARY_PATH="${QTDIR}/lib:${LIBRARY_PATH}"

At last you should reread the environment to activate this settings for your current bash shell. The following should do the job nicely:

exec bash --login

Notes: Compiling instructions:

Important: Nobody seems to have been able to get this to work recently. Additionally, you're likely to need the patches from bug 576, probably adapted for the newer version of Scribus. Since they're broken anyway, I'm rewriting these instructions to point users to a less ancient version and will have a go at getting it working --Ringerc 16:49, 6 Jul 2005 (UTC)

Update: It wasn't too hard to get working in the end as I was able to use the approach piloted by the patches in bug 576. It's still rather quirky and has a bunch of issues. I'll provide patches if I can't integrate support into CVS sanely. In the meantime, here's a screenshot:

Scribus13 cygwin small.png

(full sized version)

  1. Install Qt-3.3 as shown above
  2. Grab the latest Scribus CVS
  3. Generate the makefiles:
    make -f Makefile.dist
    
  4. Configure:
    CFLAGS="-fdata-sections" \ 
    CXXFLAGS="-fdata-sections" \
    LDFLAGS="-Wl,--enable-runtime-pseudo-reloc,--script,$QTDIR/mkspecs/cygwin-g++/i386pe.x-no-rdata" \
    ./configure --prefix=/opt/scribus/1.3cvs
    

    You can type that all on one line, without the \ characters, or you can type it out as shown above. Copy+paste should be done line-by-line; doing the whole lot at once may not work.

  5. Compile:
    make CXXFLAGS="${CXXFLAGS} -I/usr/include/lcms"
    

Troubleshooting

On Windows NT, some users have had trouble with the startup instruction:

cd ~
Xwin -multiwindow -clipboard &
/opt/scribus/1.2/bin/scribus.exe &

If your xwin reports errors, try to run scribus from a separate shell instance. For example;

FIRST SHELL

xwin -multiwindow -clipboard &

OPEN SECOND SHELL

/opt/scribus/1.2/bin/scribus.exe &

If errors persist, do not forget to reboot and try again. Cygwin sometimes responds positively after a fresh reboot in Windows.