blob: 646738b18ad205894fd79902e60fd1d76e62efa3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]]
[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
id="license" text="Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License, Version 1.2 or
any later version published by the Free Software Foundation; with no Invariant
Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license
is included in the section entitled
[[GNU Free Documentation License|/fdl]]."]]"""]]
Sometimes it may already be helpful to capture a translator's `stdout` and
`stderr`, for example like this:
$ sudo settrans -fgap ↩
/servers/socket/2 ↩
/bin/sh -c '/hurd/pfinet -i eth0 -a [...] > /tmp/stdout 2> /tmp/stderr'
$ [...]
$ cat /tmp/stdout
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP
TCP: Hash tables configured (ehash 65536 bhash 65536)
$ cat /tmp/stderr
pfinet: ../../hurd.work/pfinet/ethernet.c:196: ethernet_xmit: Unexpected error: (os/device) invalid IO size.
(Trying to run [[GDB]] in this case was of no help -- due to a bug in GDB
(supposedly) it wouldn't catch the fault.)
Be made aware that both `stdout` and `stderr` will be block bufferend and no
longer line buffered when doing such a redirection, so you'll have to arrange
for appropriate `fflush`es on these, or force them to be line buffered again
using the appropriate glibc magic (`setvbuf`). Otherwise you'll see text in
the output files only if either glibc herself decides to flush (after some KiB
of text) the after translator exits.
|