I downloaded ActiveTcl8.5.7.0.290198-solaris-sparc-2.8-threaded.tar.gz and when I install it, it fails with the error:
TEAcup @ /net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/bin/teacup
Create repository @ /net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/lib/teapot
Setup shell @ /net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/bin/tclsh8.5
<-> /net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/lib/teapot
INTERNAL ERROR ______________________
INTERNAL ERROR Cannot read file "/net/phoebus/oagmgr/oag/tcl8.5.7/library/init.tcl", does not exist
INTERNAL ERROR while executing
INTERNAL ERROR "# Compiled -- no source code available
INTERNAL ERROR error "called a copy of a compiled script""
INTERNAL ERROR (procedure "shellHasCodeAt" line 1)
INTERNAL ERROR invoked from within
INTERNAL ERROR "# Compiled -- no source code available
INTERNAL ERROR error "called a copy of a compiled script""
INTERNAL ERROR (procedure "teapot::link::shellHasCode" line 1)
INTERNAL ERROR invoked from within
INTERNAL ERROR "# Compiled -- no source code available
INTERNAL ERROR error "called a copy of a compiled script""
INTERNAL ERROR (procedure "::repository::capp::Snit_methodLinkMake" line 1)
INTERNAL ERROR invoked from within
INTERNAL ERROR "# Compiled -- no source code available
INTERNAL ERROR error "called a copy of a compiled script""
INTERNAL ERROR (procedure "::repository::capp::Snit_methodlink" line 1)
INTERNAL ERROR invoked from within
INTERNAL ERROR "::capp1 link make /net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/lib/teapot /net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl..."
INTERNAL ERROR ("eval" body line 1)
INTERNAL ERROR invoked from within
INTERNAL ERROR "# Compiled -- no source code available
INTERNAL ERROR error "called a copy of a compiled script""
INTERNAL ERROR ______________________
Aborting TEApot setup
Done
I don't know why it is looking for /net/phoebus/oagmgr/oag/tcl8.5.7/library/init.tcl because/net/phoebus/oagmgr/oag/tcl8.5.7 doesn't exist.
The confused code is in teacup, where it tries to determine where the shell has its library, so that it can inspect the code there.
The path you are seeing, the base of it, is determined by executing the shell with the script 'puts [info library];exit'. Actually more like
% echo 'puts [info library];exit' | tclsh
This means that the shell at
/net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/bin/tclsh8.5
apparently returns
/net/phoebus/oagmgr/oag/tcl8.5.7/library
Do you have puts commands in your .tclshrc ?
They should have no effect, as they come before the puts in the above script, and I am taking the last line of the output.
The teacup command the installer is trying to run is
% TEACUP link make SHELL REPO
with TEACUP, SHELL, and REPO having the paths you are seeing in the log.
The relevant Tcl code is in install_lib.tcl, line 1840ff
Can you send me your file, for comparison with the one I have here ?
There should also be some commented code whose activtion should help us to debug this. (Around 1857).
The lines I am referencing are all in the procedure teacup_setup.
I will email you the install_lib.tcl I have.
I found the commented code you referred to and run it uncommented. And got a nice large error message:
/net/phoebus/oagmgr/oag/tcl8.5.7/library
application-specific initialization failed: Can't find a usable init.tcl in the following directories:
/net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/lib/tcl8.5 /net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/lib/tcl8.5 /net/phoebus/oagmgr/oag/ActiveTcl/lib/tcl8.5 /net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/library /net/phoebus/oagmgr/oag/ActiveTcl/library /net/phoebus/oagmgr/oag/ActiveTcl/tcl8.5.7/library /net/phoebus/oagmgr/oag/tcl8.5.7/library
/net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/lib/tcl8.5/init.tcl: can't find package activestate::teapot::link
can't find package activestate::teapot::link
while executing
"package require activestate::teapot::link"
invoked from within
"if {![interp issafe] && ![catch {package require platform}]} {
package require activestate::teapot::link
::activestate::teapot::link::setup
..."
(file "/net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/lib/tcl8.5/init.tcl" line 900)
invoked from within
"source /net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/lib/tcl8.5/init.tcl"
("uplevel" body line 1)
invoked from within
"uplevel #0 [list source $tclfile]"
/net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/lib/tcl8.5/init.tcl: can't find package activestate::teapot::link
can't find package activestate::teapot::link
while executing
"package require activestate::teapot::link"
invoked from within
"if {![interp issafe] && ![catch {package require platform}]} {
package require activestate::teapot::link
::activestate::teapot::link::setup
..."
(file "/net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/lib/tcl8.5/init.tcl" line 900)
invoked from within
"source /net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/lib/tcl8.5/init.tcl"
("uplevel" body line 1)
invoked from within
"uplevel #0 [list source $tclfile]"
This probably means that Tcl wasn't installed properly.
/net/phoebus/oagmgr/oag/tcl8.5.7/library
application-specific initialization failed: Can't find a usable init.tcl in the following directories:
/net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/lib/tcl8.5 /net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/lib/tcl8.5 /net/phoebus/oagmgr/oag/ActiveTcl/lib/tcl8.5 /net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/library /net/phoebus/oagmgr/oag/ActiveTcl/library /net/phoebus/oagmgr/oag/ActiveTcl/tcl8.5.7/library /net/phoebus/oagmgr/oag/tcl8.5.7/library
/net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/lib/tcl8.5/init.tcl: can't find package activestate::teapot::link
can't find package activestate::teapot::link
while executing
"package require activestate::teapot::link"
invoked from within
"if {![interp issafe] && ![catch {package require platform}]} {
package require activestate::teapot::link
::activestate::teapot::link::setup
..."
(file "/net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/lib/tcl8.5/init.tcl" line 900)
invoked from within
"source /net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/lib/tcl8.5/init.tcl"
("uplevel" body line 1)
invoked from within
"uplevel #0 [list source $tclfile]"
/net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/lib/tcl8.5/init.tcl: can't find package activestate::teapot::link
can't find package activestate::teapot::link
while executing
"package require activestate::teapot::link"
invoked from within
"if {![interp issafe] && ![catch {package require platform}]} {
package require activestate::teapot::link
::activestate::teapot::link::setup
..."
(file "/net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/lib/tcl8.5/init.tcl" line 900)
invoked from within
"source /net/phoebus/oagmgr/oag/ActiveTcl/solaris-sparc.ActiveTcl.8.5.7/lib/tcl8.5/init.tcl"
("uplevel" body line 1)
invoked from within
"uplevel #0 [list source $tclfile]"
This probably means that Tcl wasn't installed properly.
while executing
"subenv {
# We are dealing with a patched shell here, the env variables
# are not necessary. Actually having them is a bug because
# they cause the ..."
(procedure "teacup_setup" line 59)
invoked from within
"teacup_setup $installdir $srcdir"
(procedure "do_finish" line 65)
invoked from within
"do_finish $::SCRIPT_DIR $::INSTALL_DIR $::RUNTIME_DIR"
(procedure "install_ready" line 132)
invoked from within
"install_ready $::BASE"
("9" arm line 1)
invoked from within
"switch -exact $state {
1 { incr state [intro $::BASE] }
2 { incr state [license $::BASE] }
3 {
# This page is always skipped when bac..."
(procedure "main" line 118)
invoked from within
"main"
*************************
To me it looks like it is trying to load the teapot package while it is installing the teapot package. And since it doesn't exist yet it crashes.
[... mail ...]
Thank you. The problem was the native Sun tar program. I used the GNU version and everything is working now.
> If this is not there then the problem would be earlier than the teacup setup ... Which reminds me to ask, what 'tar' application did you use to unpack the archive ?
>
> (1) Sun native tar ?
> or (2) GNU tar ?
>
> If the answer is (1), then that is likely the problem. From http://docs.activestate.com/activetcl/8.5/at.install.html
>
>
> Note that Tar on Solaris 2.6 has a bug that prevents proper extraction
> of files in packages with long path names. GNU tar may therefore be
> required to extract the package into the filesystem correctly. A
> precompiled version of GNU tar for the sparc platform is available
> from: http://www.sunfreeware.com/.
>
>
> The 2.6 in the above message is wrong. We have recently seen trouble with Sun native tar as far up as 2.10.
>
>
> Andreas