Opened 8 years ago

Last modified 9 months ago

#38082 new defect

pdftk encounters fatal malloc problem

Reported by: bernard@… Owned by: ryandesign (Ryan Schmidt)
Priority: Normal Milestone:
Component: ports Version: 2.1.3
Keywords: Cc: maehne (Torsten Maehne), dliessi (Davide Liessi), ericmoret
Port: pdftk

Description

Pdftk no longer works (I last used it as recently as four days ago). Examples of the error reports are in the attached file.

Attachments (2)

pdftk_error_report.txt (1.4 KB) - added by bernard@… 8 years ago.
examples of error reports
further_pdftk_output.txt (3.6 KB) - added by bernard@… 8 years ago.
output requested by egall@…

Download all attachments as: .zip

Change History (16)

Changed 8 years ago by bernard@…

Attachment: pdftk_error_report.txt added

examples of error reports

comment:1 Changed 8 years ago by cooljeanius (Eric Gallager)

What does port -v installed pdftk say? How about trying port -v installed rdepof:pdftk too?

comment:2 Changed 8 years ago by ryandesign (Ryan Schmidt)

Keywords: pdftk malloc_error_break removed
Owner: changed from macports-tickets@… to ryandesign@…
Port: pdftk added

What did you change in the last 4 days? Did you upgrade one or more of pdftk's rdeps?

pdftk is to be updated to a newer version, once I can verify that it works; see #37580. Perhaps that will solve the problem.

Changed 8 years ago by bernard@…

Attachment: further_pdftk_output.txt added

output requested by egall@...

comment:3 Changed 8 years ago by bernard@…

I did update about four days ago, but I seem to have an example of where pdftk worked three hours after that update. After the initial problem, I uninstalled and re-installed pdftk this morning with no effect. Is there a way to ensure that this is done cleanly? Since filing the error report, I have downloaded and installed the pdflabs version, and it seems to work OK, but I would like to have my macports version working again.

comment:4 Changed 8 years ago by bernard@…

I just realized that the version I have from pdflabs is version 1.45.

comment:5 Changed 8 years ago by cooljeanius (Eric Gallager)

Hm, all I can suggest is switching from the +gcc45 variant to the +gcc47 variant, since that's the current default...

comment:6 Changed 8 years ago by ryandesign (Ryan Schmidt)

Which gcc variant is default for pdftk currently varies by OS version, although if it will work, I would like to eliminate all options other than gcc47 when updating pdftk to 1.45.

comment:7 Changed 8 years ago by bernard@…

I'm running Mac OS X 10.6.8. I don't know which gcc complier the pdflabs version (pdftk 1.45) is depending on. I could try to install the the gcc47 version from macports (how do I do that?) but I see that is still version 1.44. Is there a way to try the version 1.45 version from macports?

Version 0, edited 8 years ago by bernard@… (next)

comment:8 Changed 8 years ago by drorata@…

I can confirm similar problems. Running OSX 10.6.8, macports 2.2.0 and pdftk @1.44_0+gcc45 (active). Is there some fix for this issue?

comment:9 Changed 8 years ago by maehne (Torsten Maehne)

Cc: Torsten.Maehne@… added

Cc Me!

comment:10 Changed 7 years ago by dliessi (Davide Liessi)

Cc: davide.liessi@… added

Cc Me!

comment:11 Changed 7 years ago by dliessi (Davide Liessi)

I installed pdftk today on my 10.6 machine just after a selfupdate and upgrade outdated and I have the same malloc error.

I deactivated pdftk and installed pdftk +gcc47: the error disappeared and pdftk is working as expected.

comment:12 Changed 15 months ago by ericmoret

Cc: ericmoret added

comment:13 Changed 9 months ago by kencu (Ken)

This error is generally caused by a conflict between different versions of libstdc++.dylib. The one installed by the gcc ports and the one installed by the system interact in an unfavourable way, where objects are created by one version and attempt to be released by the other. The fact that it disappeared later on with gcc changes is more-or-less just luck.

There are two known fixes so far.

  1. use DYLD_LIBRARY_PATH set to the macports-installed libstdc++.dylib location (currently ${prefix}/lib/libgcc
  2. replace the system's /usr/lib/libstdc++.dylib with the current one being used, or at least a much newer one.

The first option is obviously much simpler, but relies on setting that env var all the time, either in binary wrappers or in the .profile.

The second option is tempting -- we are discussing this with the gcc leads -- but it is bound to cause concerns, and it is difficult to test out every possible existing executable that is linked to the current version, so realistically, this is likely to never happen.

comment:14 Changed 9 months ago by ryandesign (Ryan Schmidt)

pdftk hasn't seen any recent development; I consider it dead. I recommend using pdftk-java instead.

Note: See TracTickets for help on using tickets.