Opened 18 years ago
Closed 16 years ago
#1079 closed enhancement (fixed)
Ohana's mktemp shadows BSD's mktemp, leading to 'man' failure
| Reported by: | Owned by: | eugene | |
|---|---|---|---|
| Priority: | low | Milestone: | |
| Component: | Ohana | Version: | current |
| Severity: | minor | Keywords: | |
| Cc: |
Description (last modified by )
After psconfig ipp-2.5 etc., Ohana's mktemp is the first mktemp that's found on the path.
On our Linux installation (Suse 10), man needs nroff needs OpenBSD's /bin/mktemp, but finds Ohana's mktemp instead, and of course can't do anything with it:
mktemp: error while loading shared libraries: libdvo.so: cannot open shared object file: No such file or directory
/usr/bin/nroff: Can't create temp directory, exiting...
Suggested fix: rename Ohana's mktemp into ohana_mktemp or something like that.
Change History (5)
comment:1 by , 17 years ago
| Resolution: | → fixed |
|---|---|
| Status: | new → closed |
comment:2 by , 17 years ago
| Description: | modified (diff) |
|---|---|
| Priority: | high → low |
| Resolution: | fixed |
| Status: | closed → reopened |
| Version: | 2.5 → current |
two comments on this:
1) I suspect the error is still present in Suse, so we should keep it around so we know about this issue. IPP operations has never used Suse, but we'd like to know if there are issues that affect installations (they could be more general problems).
2) I think the error is actually mis-interpretted. it is not that nroff is unable to use mktemp (the ohana version has the same API as /bin/mktemp), but that the invocation in nroff is not supplying the LD_LIBRARY_PATH needed. Not sure why PATH is propagated and LD_LIBRARY_PATH is not. Still, the suggested would work. It might also be better for the Ohana build system to only generate mktemp if it is not found on the local system (the ohana version was meant as a replacement since not all systems provide mktemp).
comment:3 by , 17 years ago
could this be a failure caused by the libreadline linkage problem discussed in #1284? perhaps sebastian could check the status of this bug after rebuilding libreadline with the new patch?
comment:4 by , 17 years ago
Alas, the patched readline from bug #1084 fixed the SuSE 11 problem with readline/ncurses, but not the failure of man.
On SuSE10, I still get exactly the same error message.
On SuSE 11, I now get only the second half of the error message, i.e. the bit from nroff - the complaint about libdvo.so has gone away, but nroff still can't create a temp directory.
Just noticed a difference in behaviour between IPP's and SuSE's mktemp (both in 10 and 11): If I say mktemp without arguments, on SuSE I get the name of a temp file back that mktemp created, while the IPP version says: USAGE: mktemp (template). I.e. maybe the API *isn't* the same on SuSE?
comment:5 by , 16 years ago
| Resolution: | → fixed |
|---|---|
| Status: | reopened → closed |
In r25757, I updated mktemp to behave as described above (without arguments, it returns a temp file with a default template). This should address this bug.

Ohana's mktemp is still being written but it does not seem to interfere with man, possibly because Suse 10 is no longer in use.