Difference between revisions of "Win32 version of Scribus"

From Scribus Wiki
Jump to: navigation, search
Line 15: Line 15:
 
----
 
----
  
 +
Hey I've managed another successful "configure" thanks to Ralf (again)!
 
<pre>
 
<pre>
 
   378  cd ~/src
 
   378  cd ~/src
Line 21: Line 22:
 
   381  tar jcvf tar-Scribus13cvs.tar Scribus
 
   381  tar jcvf tar-Scribus13cvs.tar Scribus
 
   382  cd Scribus/
 
   382  cd Scribus/
   383  export CFLAGS="-fdata-sections"
+
   383 make -f Makefile.cvs
   384 export CXXFLAGS="-fdata-sections"
+
  384 export CFLAGS="-fdata-sections"
   385 export LDFLAGS="-Wl,--enable-runtime-pseudo-reloc,--script /usr/local/lib/qt/mkspecs/cygwin-g++/i386pe.x-no-rdata,-lqt-mt"
+
   385 export CXXFLAGS="-fdata-sections"
   386 make -f Makefile.cvs
+
   386 export LFLAGS="-L/home/cboothe/src/qt-3/lib"
 +
   387  
  
 
noone@sector0 ~/src/Scribus
 
noone@sector0 ~/src/Scribus
$ ./configure
+
$ ./configure --prefix=/opt/scribus/1.3
checking build system type... i686-pc-cygwin
+
 
checking host system type... i686-pc-cygwin
+
...
checking target system type... i686-pc-cygwin
+
 
checking for a BSD-compatible install... /usr/bin/install -c
+
Configuration Summary:
checking for -p flag to install... yes
+
 
checking whether build environment is sane... yes
+
Libraries:
checking for gawk... gawk
+
  Freetype2 installed:    Yes
checking whether make sets $(MAKE)... yes
+
  Fontconfig found:        Yes
checking for pkg-config... no
+
  CUPS installed:          No
checking for libart2-config... /usr/bin/libart2-config
+
  LittleCMS installed:    Yes
checking for style of include used by make... GNU
+
  libtiff installed:      Yes
checking for gcc... gcc
+
  Libxml2 installed:      Yes
checking for C compiler default output file name... configure: error: C compiler cannot create executables
+
The Scripter-Plugin will not be compiled.
See `config.log' for more details.
+
Configuration options:
noone@sector0 ~/src/Scribus
+
  Debugging enabled:       No
 +
 
 +
 
 +
Good - your configure finished. Start make now
 
$</pre>
 
$</pre>
  

Revision as of 00:05, 19 March 2005

In february 2005 Trolltech announced that version 4 of the QT library used by Scribus will be available for Windows under the GNU General Public License (GPL). This brings the possibility of a native Windows port of Scribus a step closer. It's still a long way off though, and not really in anyone's plans. First QT4 needs to be released ("second quarter of 2005"), then Scribus would need to be updated to QT4 (a substantial job in itself), then ported to Windows. So it might happen at some point, but don't hold your breath!--Joeboy 13:49, 9 Mar 2005 (UTC)



Hence I've created this page for posting notes relating to the ongoing effort to compile Scribus under Cygwin/X11 for win32. Since that is our next best option.

However, don't forget we already have one working recipe for Installing Scribus on Win32 using version 1.2.1 binary snapshots compiled for Cygwin/QT3/X11. :)

Now efforts to compile the latest Scribus for Cygwin/X11 are ongoing, though I haven't been successful yet. However I have had gotten as far as a running a successful configure of the 1.3 version from CVS, and there is a patch available for the 1.2.1 version at the kde-cygwin download area.

Here are some notes from some of the experiences I've had so far:



Hey I've managed another successful "configure" thanks to Ralf (again)!

  378  cd ~/src
  379  rm -fr Scribus/
  380  cvs -z3 co -r Version13x Scribus
  381  tar jcvf tar-Scribus13cvs.tar Scribus
  382  cd Scribus/
  383  make -f Makefile.cvs
  384  export CFLAGS="-fdata-sections"
  385  export CXXFLAGS="-fdata-sections"
  386  export LFLAGS="-L/home/cboothe/src/qt-3/lib"
  387  

noone@sector0 ~/src/Scribus
$ ./configure --prefix=/opt/scribus/1.3

...

Configuration Summary:

Libraries:
   Freetype2 installed:     Yes
   Fontconfig found:        Yes
   CUPS installed:          No
   LittleCMS installed:     Yes
   libtiff installed:       Yes
   Libxml2 installed:       Yes
The Scripter-Plugin will not be compiled.
Configuration options:
   Debugging enabled:       No


Good - your configure finished. Start make now
$

config.log: ...

configure:2617: checking for C compiler default output file name
configure:2620: gcc -fdata-sections  -Wl,--enable-runtime-pseudo-reloc,--script /home/cboothe/src/qt-3/mkspecs/cygwin-g++/i386pe.x-no-rdata ,-lqt-mt conftest.c  >&5
gcc: ,-lqt-mt: No such file or directory

find command output:

$ find /usr /opt ~/src -iname '*qt-mt*'
/home/cboothe/src/qt-3/bin/cygqt-mt-3.dll
/home/cboothe/src/qt-3/lib/libqt-mt.dll.a
/home/cboothe/src/qt-3/lib/libqt-mt.la
/home/cboothe/src/qt-3/lib/libqt-mt.prl
/home/cboothe/src/qt-3/lib/qt-mt.pc

--Hap0 19:43, 18 Mar 2005 (UTC)



With the following commands i already got Scribus configuring fine, but i accidently deleted it again so now with that config it gives an error when checking for qt. The error message in config.log is very similar to the error i got when making scribus after my succesful ./configure.

--jo-hannes 07:12, 18 Mar 2005 (UTC)

Export commands:

export CFLAGS="-fdata-sections"
export CXXFLAGS="-fdata-sections"
export LDFLAGS="-Wl,--enable-runtime-pseudo-reloc,--script /usr/local/lib/qt/mkspecs/cygwin-g++/i386pe.x-no-rdata,-lqt-mt"

The error at checking for Qt:

checking for Qt... configure: error: Qt (>= Qt 3.3) (library qt-mt) not found. Please check your installation!
For more details about this problem, look at the end of config.log.
Make sure that you have compiled Qt with thread support!

And the error in config.log

configure:40114: checking for Qt
configure: 40182: /opt/qt/3.3/include/qstyle.h
taking that
configure:40297: rm -rf SunWS_cache; g++ -o conftest.exe -Wnon-virtual-dtor -Wno-long-long -Wundef -Wall -W -Wpointer-arith -Wwrite-strings -O2 -fno-exceptions -fno-check-new -fno-common -I/opt/qt/3.3/include -I/usr/X11R6/include  -DQT_THREAD_SUPPORT   -L/opt/qt/3.3/lib -L/usr/X11R6/lib   conftest.cc  -lqt-mt -lpng -lz -lm -ljpeg   -lXext -lX11 -lSM -lICE  -lpthread 1>&5
collect2: ld terminated with signal 11 [Segmentation fault], core dumped
/opt/qt/3.3/lib/libqt-mt.dll.a(.text+0x0):crtstuff.c: multiple definition of `___do_sjlj_init'
/usr/lib/gcc-lib/i686-pc-cygwin/3.3.3/crtbegin.o(.text+0x0):crtstuff.c: first defined here
/opt/qt/3.3/lib/libqt-mt.dll.a(.text+0x3c52a0):crtstuff.c: multiple definition of `QGList::count() const'
/cygdrive/c/DOKUME~1/johannes/LOKALE~1/Temp/ccNwGMgn.o(.text$_ZNK6QGList5countEv+0x0):conftest.cc: first defined here
/opt/qt/3.3/lib/libqt-mt.dll.a(.data+0x78cc4):qrtlcodec.cpp: multiple definition of `vtable for QGList'
/cygdrive/c/DOKUME~1/johannes/LOKALE~1/Temp/ccNwGMgn.o(.rdata$_ZTV6QGList+0x0):conftest.cc: first defined here
/opt/qt/3.3/lib/libqt-mt.dll.a(.data+0x5fb3c):qrtlcodec.cpp: multiple definition of `typeinfo for QPtrCollection'
/cygdrive/c/DOKUME~1/johannes/LOKALE~1/Temp/ccNwGMgn.o(.rdata$_ZTI14QPtrCollection+0x0):conftest.cc: first defined here
/opt/qt/3.3/lib/libqt-mt.dll.a(.data+0x62604):qrtlcodec.cpp: multiple definition of `typeinfo name for QPtrCollection'
/cygdrive/c/DOKUME~1/johannes/LOKALE~1/Temp/ccNwGMgn.o(.rdata$_ZTS14QPtrCollection+0x0):conftest.cc: first defined here
/opt/qt/3.3/lib/libqt-mt.dll.a(.data+0x607ec):qrtlcodec.cpp: multiple definition of `typeinfo for QGList'
/cygdrive/c/DOKUME~1/johannes/LOKALE~1/Temp/ccNwGMgn.o(.rdata$_ZTI6QGList+0x0):conftest.cc: first defined here
/opt/qt/3.3/lib/libqt-mt.dll.a(.data+0x63ba4):qrtlcodec.cpp: multiple definition of `typeinfo name for QGList'
/cygdrive/c/DOKUME~1/johannes/LOKALE~1/Temp/ccNwGMgn.o(.rdata$_ZTS6QGList+0x0):conftest.cc: first defined here
configure:40300: $? = 1
configure: failed program was:
#include "confdefs.h"
#include <qglobal.h>
#include <qapplication.h>
#include <qcursor.h>
#include <qstylefactory.h>
#include <private/qucomextra_p.h>
#if ! (QT_VERSION >= 0x030300)
#error 1
#endif

Jo-Hanes:

collect2: ld terminated with signal 11 [Segmentation fault], core dumped

shows that ld, the linker that's called by gcc after it finishes compiling the source file, has crashed. That's pretty weird and very likely to indicate a bug in ld (probably the cygwin version).

That said, if it worked before it seems reasonable to expect it to work now. Could you have made some changes to environment variables or installed libraries since then?

--Ringerc 08:16, 18 Mar 2005 (UTC)



As i remember, i had installed the cvs version of qt in /usr/local/lib and then it worked. dont know if there were any other switches. now i have the qt-snapshot installed and it doesnt work. variables could have changed, yes. but dunno into what. libraries werent installed as is remember. will try to get it working again.

--jo-hannes 10:52, 18 Mar 2005 (UTC)


I just updated my own little code section up above to reflect my recent similar experiences with the addition of a search I ran on the file system for qt-mt.

--Hap0 19:44, 18 Mar 2005 (UTC)


Do you have tried to run the above mentioned link by hand using the code snippet from configure using the flags set by LDFLAGS ? Seems that the LDFLAGS isn't taken.

--RHabacker 23:58, 18 Mar 2005 (UTC)