|
From: Keith M. <kei...@to...> - 2006-03-13 12:12:08
|
Earnie Boyd wrote, quoting me:
>> Gerardo Gonzales wrote:
>>> I was trying to compile BLAS library trough ATLAS, the configure
>>> program compiles well but after running nothing happens (only the
>>> cursor saying that the program is running). With Ctrl-C I abort
>>> the running so I think there is a problem with the I/O interface.
>>> Any ideas?
>>
>> Get rid of rxvt?
>>
>
> Another workaround is to create a script as the same name as the
> .exe without the .exe extension that starts your program in a new
> windows. E.G.: I have foo.exe that doesn't work in rxvt. I then
> create a script named foo as follows. When I execute foo a new
> window opens with the desired output.
>
> <script name="foo">
> #! /bin/sh
> start /path/to/foo.exe "$@"
> </script>
This is a great technique, allowing you to "have your cake and eat
it"; (in this case "have the cake" with rxvt icing, while "eating"
programs which are broken by rxvt's flaky pty emulation).
Alternatives, which avoid the need for a separate script file:--
- just type the `start /path/to/foo.exe args ...' command directly,
at the shell prompt; (slightly less convenient, for frequent use).
- define an alias:
alias foo='start /path/to/foo.exe'
(add this to /etc/profile or to ~/.profile, to make it permanant;
disadvantage: it doesn't propagate to secondary shells, nor to
shell scripts; you need to redefine it locally, in each such
context, where you intend to use it).
- define this alias in ~/.bashrc, (or in a file, say ~/.aliases,
which is sourced by ~/.bashrc), add the line:
test -f ~/.bashrc && . ~/.bashrc
to /etc/profile, or to ~/.profile, and:
ln /bin/sh.exe /bin/bash.exe
This makes the alias automatically available in the login shell,
*and* in any secondary shell started as `bash'; (it still doesn't
extend to shell scripts, or to secondary shells started as `sh';
you would still need to define the alias locally, or source the
defining file in such contexts, where you wish to use it).
This technique could be extended, to automatically define such
aliases, for all .exe files in a given directory, /usr/local/start
say. This is left as an exercise for the reader.
> This script idea is also good for modifying PATH to include a
> package specific path so that some controlling program can spawn
> other binaries in its directory.
Also possible with any of the above alternative techniques:
PATH=/path/to/foo.exedir:$PATH start /path/to/foo.exe args ...
alias foo='PATH=/path/to/foo.exedir:$PATH start /path/to/foo.exe'
Regards,
Keith.
|