#38744 closed defect (fixed)
Maxima .28.0_3 +printable_doc does not build on 10.8
Reported by: | someuser12 | Owned by: | KubaO (Kuba Ober) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.1.3 |
Keywords: | mountainlion | Cc: | Ionic (Mihai Moldovan), mkae (Marko Käning), cooljeanius (Eric Gallager), mojca (Mojca Miklavec) |
Port: | maxima |
Description
On Mac OS 10.8 with MacPorts 2.1.3, maxima @5.28.0_3+printable_doc's build process stops in the (sub)directory interfaces/emacs/imaxima
while making target pdf
(see messages below). Workaround to finish the build and the installation:
cd `port work maxima` cd maxima-5.28.0/interfaces/emacs/imaxima sudo make pdf # resume installation: sudo port install maxima +printable_doc
The error message during the original build (excerpt from the build log):
[...] Making pdf in imaxima make[3]: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_math_maxima/maxima/work/maxima-5.28.0/interfaces/emacs/imaxima' TEXINPUTS=".:$TEXINPUTS" \ MAKEINFO='/bin/sh /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_math_maxima/maxima/work/maxima-5.28.0/missing --run makeinfo -I .' \ texi2dvi --pdf --batch imaxima.texi sed: RE error: illegal byte sequence make[3]: *** [imaxima.pdf] Error 1 make[3]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_math_maxima/maxima/work/maxima-5.28.0/interfaces/emacs/imaxima' make[2]: *** [pdf-recursive] Error 1 make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_math_maxima/maxima/work/maxima-5.28.0/interfaces/emacs' make[1]: *** [pdf-recursive] Error 1 make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_math_maxima/maxima/work/maxima-5.28.0/interfaces' make: *** [pdf-recursive] Error 1 make: *** Waiting for unfinished jobs.... pattern=`printf "\t"` ; \ bad_files=`find . -name '*.texi' -print | xargs /usr/bin/grep -E -l -e "$pattern"` ; \ [ -z "$bad_files" ] || ( echo "WARNING: The following files have unexpanded Tabs: $bad_files" ; \ echo "Run /doc/info/fix_tab to fix the problem." ) make[3]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_math_maxima/maxima/work/maxima-5.28.0/doc/info' [...] Command failed: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_math_maxima/maxima/work/maxima-5.28.0" && /usr/bin/make -j8 -w all pdf Exit code: 2 Error: org.macports.build for port maxima returned: command execution failed [...]
Performing make pdf
by hand (outside of the automated build process) works, probably because of the use of a different environment.
Attachments (2)
Change History (19)
comment:1 Changed 12 years ago by jmroot (Joshua Root)
Cc: | kuba@… removed |
---|---|
Keywords: | mountainlion added |
Owner: | changed from macports-tickets@… to kuba@… |
Summary: | Maxima .28.0_3 +printable_doc does not build → Maxima .28.0_3 +printable_doc does not build on 10.8 |
comment:2 follow-up: 4 Changed 11 years ago by Ionic (Mihai Moldovan)
Is this still a problem with the current maxima version?
comment:4 Changed 11 years ago by someuser12
Replying to ionic@…:
Is this still a problem with the current maxima version?
Yes, there is the same problem. With Maxima 5.33.0:
Command failed: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_math_maxima/maxima/work/maxima-5.33.0" && /usr/bin/make -j8 -w all pdf
The error message is still:
sed: RE error: illegal byte sequence make[3]: *** [imaxima.pdf] Error 1 make[3]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_math_maxima/maxima/work/maxima-5.33.0/interfaces/emacs/imaxima'
Workaround:
cd `port work maxima`/maxima-5.33.0/interfaces/emacs/imaxima sudo make pdf
and resume install / upgrade after that.
comment:6 Changed 11 years ago by Ionic (Mihai Moldovan)
Unfortunately, this is a latex issue.
I could provide an ugly hack depending on gsed and setting PATH to use gsed for that command only, but that's really, really ugly.
Changed 11 years ago by Ionic (Mihai Moldovan)
Attachment: | maxima-printable-docs-texi2dvi-workaround.diff added |
---|
Workaround buggy texi2dvi being incompatible with bsdsed with an ugly hack forcing usage of gsed in the maxima Portfile. Should be fixed upstream or by the texlive maintainer.
comment:7 follow-up: 8 Changed 11 years ago by Ionic (Mihai Moldovan)
Try that, it should be working fine, but the baseline issue needs to be fixed at texlive level... probably even by upstream. :(
comment:8 Changed 11 years ago by someuser12
Indeed, it works fine for me (Maxima 5.33.0, MacPorts 2.2.1, Mac OS 10.8.5).
comment:12 Changed 10 years ago by Ionic (Mihai Moldovan)
This patch makes the previous workaround obsolete. Let's wrap this up, shall we?
Changed 10 years ago by Ionic (Mihai Moldovan)
Attachment: | maxima-printable_doc-fix.patch added |
---|
Let bsdsed
handle the provided file gracefully by setting LC_ALL=C
in the build env. We can drop this, as soon as texinfo
upstream removes recode support, which is currently the reason for bsdsed
chocking. Also rework the dependencies. texinfo
, texlive-latex
and texlive-basic
are enough, no need to pull in the full texlive
suite. texinfo
has even been missing completely.
comment:14 Changed 10 years ago by mojca (Mojca Miklavec)
comment:15 Changed 10 years ago by Ionic (Mihai Moldovan)
Thanks, builds fine with the updated texinfo
port for me.
comment:16 Changed 10 years ago by mf2k (Frank Schima)
Resolution: | → fixed |
---|---|
Status: | new → closed |
So this is fixed then?
The sed on 10.8 requires file contents to be valid in the current locale. The default is UTF-8, so if this file uses some other encoding, LC_CTYPE needs to be set appropriately in the environment.