Installing Scribus on Win32: Difference between revisions

From Scribus Wiki
Jump to navigation Jump to search
(Added more comments from Ralf H. regarding preserving the environment after compiling QT3)
mNo edit summary
 
(21 intermediate revisions by 8 users not shown)
Line 1: Line 1:
{{HOWTO Index}}
{{Outdated|Scribus is now available for native installations on Win32 platforms. For more information visit [http://windows.scribus.net http://windows.scribus.net]!|Scribus 1.3.2}}


'''Call for help compiling version 1.3 from CVS. If you or anyone you know can lend a pair of eyes or hands working out the issues I am having with trying to compile version 1.3 from CVS we would all be extremely grateful!'''


See the discussion over at [[Win32 version of Scribus]] for more info.


 
'''Installing an older version from binaries'''
-------------------------------------------------
 
 
'''Installing from binaries'''


* Install [http://www.cygwin.com/setup.exe Cygwin] with the following packages:
* Install [http://www.cygwin.com/setup.exe Cygwin] with the following packages:
Line 31: Line 25:
tar jxvf scribus-1.2.1.tar.bz2
tar jxvf scribus-1.2.1.tar.bz2
tar jxvf qt-x11-free-3.3.3-0.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 ~
cd ~
Xwin -multiwindow -clipboard &
Xwin -multiwindow -clipboard &
/opt/scribus/1.2/bin/scribus.exe &</pre>
/opt/scribus/1.2/bin/scribus.exe &
 
</pre>


Happy Scribing!
Happy Scribing!


[[Image:Scribus-win32_small.jpg]]
[[Image: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 [http://kde-cygwin.sourceforge.net/qt3/index.php kde-cygwin project.]
This second part deals with compiling QT from source found at the [http://kde-cygwin.sourceforge.net/qt3/index.php kde-cygwin project.]
Line 91: Line 92:


But for now we'll continue with:
But for now we'll continue with:
<pre>cd ~/src/qt-3
<pre>
export QTDIR=$PWD
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 PATH=$QTDIR/bin:$PATH
export QMAKESPEC=cygwin-g++
export QMAKESPEC=cygwin-g++
make -f Makefile.cvs
make -f Makefile.cvs
<nowiki>echo yes | ./configure -platform cygwin-g++ -plugin-imgfmt-mng \
echo yes | ./configure -platform cygwin-g++ -plugin-imgfmt-mng \
  -qt-zlib -qt-gif -qt-libpng -qt-libjpeg -qt-libmng -no-g++-exceptions \
  -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 \
  -thread -no-stl -no-sm -no-xft -no-xkb -no-xrender -disable-opengl \
  -disable-sql -prefix /opt/qt/3.3 -fast</nowiki>
  -disable-sql -prefix /opt/qt/3.3 -fast
make
make
</pre>
</pre>
Line 105: Line 109:
(Huge thanks to Ralf and Peter of the [http://kde-cygwin.sourceforge.net kde-cygwin] project!!!)
(Huge thanks to Ralf and Peter of the [http://kde-cygwin.sourceforge.net kde-cygwin] project!!!)


    <pre>* 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.
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'''.


      To ensure a permanent activation of this settings you can add the settings to /etc/profile or, which is the better way, create a script in the /etc/profile.d dir. This script will be called every time a new bash shell is opened.
You can add the following lines to a file such as <code>/etc/profile.d/qt33.sh</code> or simply append them to your <code>.bash_profile</code> . 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:
          o Create a symbolic link from the to /opt/qt/3.3


mkdir -p /opt/qt/
<pre>
ln -s < qt-src-dir > /opt/qt/3.3
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}"
</pre>
 
At last you should reread the environment to activate this settings for your current bash shell. The following should do the job nicely:


          o Create this script by copying the following lines into a bash shell and enter RETURN and CTRL-D to close the cat command.
<pre>
exec bash --login
</pre>


cat >/etc/profile.d/qt33.sh
------------------------------
export QTDIR=/opt/qt/3.3
 
export PATH=$QTDIR/bin:$PATH
Notes:
export MANPATH=$MANPATH:$QTDIR/doc/man
[http://sourceforge.net/project/shownotes.php?release_id=277342 Compiling instructions:]
 
'''Important:''' Nobody seems to have been able to get this to work recently. Additionally, you're likely to need the patches from [http://bugs.scribus.net/view.php?id=576 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 --[[User:Ringerc|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 [http://bugs.scribus.net/view.php?id=576 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:


          o At last you should reread the environment to activate this settings for your current bash shell with
[[Image:scribus13_cygwin_small.png]]


. /etc/profile
[http://wiki.scribus.net/images/9/90/Scribus13_cygwin.png (full sized version)]


            After this step you are ready to use your qt release. See the Using QT3 page for further informations.
<ol>
    * If you are using qmake for a project outsite the qt installation path you have to use qmake with the -cache option to find the building environment.
<li>Install Qt-3.3 as shown above</li>
<li>Grab the latest [http://docs.scribus.net/index.php?lang=en&sm=install&page=install1 Scribus CVS]</li>
<li>Generate the makefiles:


qmake -cache /opt/qt/3.3/.qmake.cache
<pre>
make -f Makefile.dist
</pre>
</pre>
</li>


<li>Configure:


------------------------------
<!-- there are no spaces after those commas. That's intentional. -->
<pre>
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
</pre>


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.
</li>


Release Name: scribus-1.2cvs
<li>Compile:  


Notes:
<pre>
[http://sourceforge.net/project/shownotes.php?release_id=277342 Compiling instructions:]
make CXXFLAGS="${CXXFLAGS} -I/usr/include/lcms"
</pre>
</li>
</ol>


1. install qt-3.3.3 release (qt-3.3.1 does not work)
----


2. unpack scribus-1.2.1-src.tar.bz2
'''Troubleshooting'''


3. make -f Makefile.dist
On Windows NT, some users have had trouble with the startup instruction:
<pre>
cd ~
Xwin -multiwindow -clipboard &
/opt/scribus/1.2/bin/scribus.exe &</pre>
If your xwin reports errors, try to run scribus from a separate shell instance. For example;


4. <nowiki>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.2</nowiki>
FIRST SHELL
<pre>
xwin -multiwindow -clipboard &
</pre>
OPEN SECOND SHELL
<pre>
/opt/scribus/1.2/bin/scribus.exe &</pre>


5. make CXXFLAGS="${CXXFLAGS} -I/usr/include/lcms"
If errors persist, do not forget to reboot and try again. Cygwin sometimes responds positively after a fresh reboot in Windows.

Latest revision as of 02:14, 23 March 2007

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.