#51 ns-2 configure fails for platforms with both Tcl8.4 & Tcl8.5

ns-2 (62)

Reported by Sidney Doria and confirmed by Tom Henderson.

"./configure" in ns-2.35-RC2 will fail if passed no arguments and run on a system with both Tcl-8.4 and Tcl8.5 installed.

checking that g++ can handle -O2... no
checking if C++ libraries work without any namespace... no
checking if C++ libraries work with namespace std... yes
checking if STL works without any namespace... no
checking if STL works with namespace std... yes
checking should use STL... yes
checking for tcl.h... -I../include
checking for tclInt.h... -I../include
checking for libtcl8.4... no
checking for init.tcl... ../lib/tcl8.5
checking for http.tcl... ../lib/tcl8.5/http1.0
checking Tcl http.tcl library... yes
checking for tclsh8.4.19... no
checking for tclsh8.4... /usr/bin/tclsh8.4
configure: error: Installation of tcl seems incomplete or can't be
found automatically.
Please correct the problem by telling configure where tcl is
using the argument --with-tcl=/path/to/package
(perhaps after installing it),
or the package is not required, disable it with --with-tcl=no.

The root of this problem is that conf/configure.in.tcl is a mess and should not alternately pick pieces of the Tcl installation from TCL_HI_VERS, TCL_VERS, TCL_ALT_VERS. Either each component of Tcl should have all the paths for one tcl version enumerated before any other version is enumerated, or the script should figure out which one is selected at first and stick with it (such as by resetting or nulling the alternate versions).

Anyway, the workaround is to pass an argument such as in the ns-allinone-2.35 install script (./configure --with-tcl-ver=8.5), but it should be fixed in the long run.


Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.

No, thanks