[Scribus] 1.3.5svn compile error on Ubuntu Gutsy

Timothy Boyden tboyden
Sun Feb 17 14:41:44 CET 2008


These are the packages I installed via apt:










qt4-designer, qt4-doc, qt4-qtconfig

download, compile and install podofo 0.5

Now that being said, given the trouble I had with Synaptic, I would prefer to setup a clean system and go through the process again to come up with a more definitive list. I lost track of the exact packages when Synaptic said stuff was installed when it really wasn't. I'm pretty sure even though I don't see them in my logs that I installed libpng-dev, libjpg-dev and a couple of other dependencies.

Timothy Boyden
Network Administrator
tboyden at supercoups.com

350 Revolutionary Drive | E. Taunton, MA 02718
508-977-2034 | www.supercoups.com 

Local Coupons. Super Savings.?

-----Original Message-----
From: scribus-bounces at nashi.altmuehlnet.de on behalf of Craig Ringer
Sent: Sat 2/16/2008 10:42 PM
To: scribus at nashi.altmuehlnet.de
Subject: Re: [Scribus] 1.3.5svn compile error on Ubuntu Gutsy
Timothy Boyden wrote:

> I think this exercise was extremely useful, and I hope others will
> too. I found the cmake output to be misleading (especially in
> combination with Synaptic not reporting installed packages correctly).

Certainly if the CMake scripts are not checking the _FOUND variables or 
honouring REQUIRED specifications in the Find scripts that's an issue. 
That's probably what's happening, too, because what *should* happen is 
that when it's unable to determine the location of something like the 
Cairo headers it should promptly terminate with an error message.

In the end, though, it's assumed that you know to install -dev packages 
if you are compiling software on Linux (on distros that require them). I 
personally try to customise the error messages from build scripts to 
remind people about this, but it's not always possible.

In this case it sounds like the required package list in the BUILDING 
file was out of date. Do you know what additional packages you had to 

> Would it not make more sense to have the cmake script actually look for
> the dev libraries and output an error if it didn't find them?

Unfortunately it would not.
Due to the general insanity of Linux distributors the same package (and 
its -dev / -devel package) will have a different name in almost every 
distro. There is absolutely no way to check something like "Is the 
package containing the Cairo headers installed" in a distro independent 

Sometimes the package might be installed, but the version of Cairo will 
be too old. There is no way to determine this through the packaging 
system in a distro independent manner either.

Scribus also needs to build on Windows, Mac OS X , and on non-Linux 
UNIXes , where there is no package management.

For these reasons, what it has to do is scan the standard include 
locations (plus optional user-supplied ones) for required header file 
names. It may also do things like examine a header to find a version 
#define and check if the value is acceptable. Similar scans are run for 
library files and other required resources.

The best thing we can do to help Linux users with the stupid package 
naming problem is document what packages each distro needs in the 
BUILDING file. So long as the CMake code follows certain rules when 
checking for dependencies - rules it doesn't appear to be following in 
all cases at the moment - it should be able to notice a dependency is 
missing if it can't find its headers/library and complain with an error 
directing the user to read the BUILDING file.

Craig Ringer
Scribus mailing list
Scribus at nashi.altmuehlnet.de

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/ms-tnef
Size: 5253 bytes
Desc: not available
Url : http://nashi.altmuehlnet.de/pipermail/scribus/attachments/20080217/5e8dcef3/attachment.bin 

More information about the scribus mailing list