The POSIX shell environment in OS/400 required a
change in tcl/lang/library/init.tcl to
call /usr/bin/sh instead of /bin/sh to set the path.
Without this fix all unrecognized commands are send to
the POSIX command line and some commands added by
extention are not recognized.
The change is in the unknown proc and is in this
snippet of code. The whole file has been attached.
if {$tcl_platform(host_platform) == "unix"} {
# Hack to get the PATH environmental var
on UNIX
if {! [info exists env(PATH)]} {
if {$tcl_platform(os) == "OS/400"} {
set env(PATH) [exec /usr/bin/sh -
c "echo \$PATH"]
} else {
set env(PATH) [exec /bin/sh -
c "echo \$PATH"]
}
}
This patch has been tested on OS/400 v4r4, v4r5, and
an early version of v5r1.
Patched init.tcl