Missing build dependencies

Bug #1411907 reported by Scott Pakin
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
pstoedit (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

1) The release of Ubuntu you are using, via 'lsb_release -rd' or System -> About Ubuntu

Description: Ubuntu 14.10
Release: 14.10

2) The version of the package you are using, via 'apt-cache policy pkgname' or by checking in Software Center

pstoedit:
  Installed: 3.62-2
  Candidate: 3.62-2
  Version table:
 *** 3.62-2 0
        500 http://us.archive.ubuntu.com/ubuntu/ utopic/universe amd64 Packages
        100 /var/lib/dpkg/status

3) What you expected to happen

I expected pstoedit to support pptx, swf, and emf output.

4) What happened instead

"pstoedit - f pptx myfile.eps myfile.pptx" gives an "Unsupported output format" error. Likewise for swf and emf. "pstoedit -help" does not list any of those formats.

The solution is for the pstoedit package to specify libzip-dev and libming-dev under Build-Depends. Doing so would enable support for the pptx and swf drivers, respectively.

Even better, Ubuntu could provide a package for libEMF (http://libemf.sourceforge.net/) and have the pstoedit add that to its Build-Depends, too. I think with those three, the pstoedit package would provide support for all available pstoedit output formats.

Check out my PPA, ppa:pakin/other (https://launchpad.net/~pakin/+archive/ubuntu/other) for a libemf package and for a pstoedit package that includes libzip-dev, libming-dev, and libemf-dev in its Build-Depends.

Thanks,
-- Scott

P.S. It looks like a new upstream version (v3.70) of pstoedit came out a little over a week ago.

Revision history for this message
Barak A. Pearlmutter (bap) wrote :

I have just taken over the pstoedit Debian package.
The above patches seem sensible, and I'd like to include them.

Debian does have libzip-dev but not libming-dev.
Should I also package the latter?
Ditto with libemf-dev.

(Would also welcome regular enhancements/fixes to github.com/barak/pstoedit since upstream seems somewhat scarce lately.)

Revision history for this message
Barak A. Pearlmutter (bap) wrote :

Just uploaded version with pptx support enabled, 3.70-3.
If anyone tests it, I'd appreciate that, since I don't use pptx files.

Revision history for this message
Scott Pakin (pakin) wrote :

> I have just taken over the pstoedit Debian package.

Cool. Thanks for volunteering.

> The above patches seem sensible, and I'd like to include them.

Great!

> Debian does have libzip-dev but not libming-dev.
> Should I also package the latter?
> Ditto with libemf-dev.

Yes. Ubuntu provides a libming-dev package (cf. http://packages.ubuntu.com/yakkety/libming-dev). I don't know what it takes to get an Ubuntu package into Debian so I'm hoping you do. For libemf-dev you might want to start with my package, which you can download from my pakin/other PPA (https://launchpad.net/~pakin/+archive/ubuntu/other). I just now updated this to libEMF 1.0.8.

> Just uploaded version with pptx support enabled, 3.70-3.
>
> If anyone tests it, I'd appreciate that, since I don't use pptx files.

I just downloaded this from https://packages.debian.org/unstable/graphics/pstoedit -- is that the right source? -- but don't see pptx support. "pstoedit -f pptx myfile.pdf myfile.pptx" aborts with "Unsupported output format pptx".

You can open pptx files with LibreOffice. That should work reasonably well on pstoedit output.

Revision history for this message
Barak A. Pearlmutter (bap) wrote :

> I just downloaded this from https://packages.debian.org/unstable/graphics/pstoedit -- is that the right source?

Not sure.

This command:

$ dpkg --status pstoedit | egrep Version:
Version: 3.62-2+b1

should give 3.70-3 unlike on the machine I'm browsing on. And this:

$ apt-cache policy pstoedit

should give the same.

Revision history for this message
Scott Pakin (pakin) wrote :

$ dpkg --status pstoedit | egrep Version:
Version: 3.70-3
$ apt-cache policy pstoedit
pstoedit:
  Installed: 3.70-3
  Candidate: 3.70-3
  Version table:
 *** 3.70-3 100
        100 /var/lib/dpkg/status
     3.70-1ubuntu2 500
        500 http://us.archive.ubuntu.com/ubuntu xenial/universe amd64 Packages
$ apt show pstoedit
Package: pstoedit
Version: 3.70-3
Status: install ok installed
Priority: optional
Section: graphics
Maintainer: Barak A. Pearlmutter <email address hidden>
Installed-Size: 682 kB
Depends: libc6 (>= 2.2.5), libpstoedit0c2a, libstdc++6 (>= 4.1.1), ghostscript
Suggests: xfig | ivtools-bin | tgif | transfig
Homepage: http://www.pstoedit.net/
Download-Size: unknown
APT-Manual-Installed: yes
APT-Sources: /var/lib/dpkg/status
Description: PostScript and PDF files to editable vector graphics converter
 pstoedit converts Postscript and PDF files to various editable
 vector graphic formats including tgif, xfig, PDF graphics, gnuplot format,
 idraw, MetaPost, GNU Metafile, PIC, Kontour and flattened PostScript.

N: There is 1 additional record. Please use the '-a' switch to see it
$ which pstoedit
/usr/bin/pstoedit
$ pstoedit -help 2>&1 | grep pptx
$ md5sum `which pstoedit`
6d831274450a2484f172c284874a420f /usr/bin/pstoedit

From the above, it sure looks like your version of pstoedit, and it sure looks like pptx didn't get compiled in. Could you check the configure messages when you build from source to make sure there's not some missing dependency?

Revision history for this message
Barak A. Pearlmutter (bap) wrote :

Okay, I just did "git pbuilder update; git pbuilder login" to get into an unstable chroot, "apt install pstoedit" to install it, and ...

root@tarsk:/# pstoedit -help | egrep ppt
pstoedit: version 3.70 / DLL interface 108 (built: Oct 11 2016 - release build - g++ 6.2.0 20161010 - 64-bit) : Copyright (C) 1993 - 2014 Wolfgang Glunz
Default interpreter is /usr/bin/gs
        pptx: .pptx: PresentationML (PowerPoint) format (/usr/lib/x86_64-linux-gnu/pstoedit/libp2edrvpptx.so)

root@tarsk:/# dpkg --status pstoedit | egrep Version:
Version: 3.70-3

So, works for *me*!

Perhaps you didn't install the corresponding version of the support library package?

root@tarsk:/# dpkg --status libpstoedit0c2a | egrep Version:
Version: 3.70-3

With the wrong library version the executable might not load the missing modules.

In case this is the problem I've pushed (in the packaging repo) a strict version dependency to force the library version to precisely match that of the executable. Perhaps something less strict would be okay, but I don't feel like testing version-skewed configurations.

Revision history for this message
Scott Pakin (pakin) wrote :

> Perhaps you didn't install the corresponding version of the support library package?

That was it! I did a quick "pstoedit -f pptx myfile.pdf myfile.pptx" test for some PDF file I had sitting around, loaded the result into LibreOffice, and it looked correct. (Okay, there was a tiny glitch, but it was presumably not packaging-related -- most likely due to either drvpptx or LibreOffice.)

> In case this is the problem I've pushed (in the packaging repo) a strict version dependency to force the library version to precisely match that of the executable. Perhaps something less strict would be okay, but I don't feel like testing version-skewed configurations.

It's unlikely that a normal user who installs software via APT, Synaptic, etc. would notice a difference either way so optimizing for ease of testing seems pretty reasonable.

Thanks,
-- Scott

Revision history for this message
Barak A. Pearlmutter (bap) wrote :

I just packaged libemf 1.0.9 (starting with your packaging) and uploaded to Debian. It is in the new queue now. Once it is accepted into testing I'll upload a version of pstoedit linked to it --- the appropriate dependency is already committed to the pstoedit packaging repo.

But I'm not going to link in libming, which has been removed from Debian due to unaddressed security vulnerabilities.

Thanks for your attention to pstoedit.

Revision history for this message
Scott Pakin (pakin) wrote :

On 01/27/2017 04:51 AM, Barak A. Pearlmutter wrote:
> I just packaged libemf 1.0.9 (starting with your packaging) and uploaded
> to Debian. It is in the new queue now. Once it is accepted into testing
> I'll upload a version of pstoedit linked to it --- the appropriate
> dependency is already committed to the pstoedit packaging repo.

I look forward to it; thanks.

> But I'm not going to link in libming, which has been removed from Debian
> due to unaddressed security vulnerabilities.

That's too bad. Do you think it would be worth mentioning that fact in pstoedit's README.Debian file?

-- Scott

Changed in pstoedit (Ubuntu):
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.