LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (https://www.linuxquestions.org/questions/linux-software-2/)
-   -   Error in ns-2.32 : tk8.4.15 configuration failed! Exiting (https://www.linuxquestions.org/questions/linux-software-2/error-in-ns-2-32-tk8-4-15-configuration-failed-exiting-4175471098/)

TariqMohammed 07-27-2013 01:56 AM

Error in ns-2.32 : tk8.4.15 configuration failed! Exiting
 
I am trying to install ns-2.32 but I got the below error:

--------------------------------------------------------------------------

Build Tk8.4.15

make: * No rule to make target /home/administrator/ns-allinone-2.32/tk8.4.15/unix/Makefile.in', needed byMakefile'. Stop.

loading cache ./config.cache

checking for Tcl configuration... (cached) found /home/administrator/ns-allinone- .32/tcl8.4.15/unix/tclConfig.sh

checking for existence of /home/administrator/ns-allinone-2.32/tcl8.4.15

/unix/tclConfig.sh... could not find /home/administrator/ns-allinone-2.32/tcl8.4.15/unix/tclConfig.sh

checking for tclsh... (cached) No tclsh found on PATH

checking for tclsh in Tcl build directory... /home/administrator/ns-allinone-2.32/tcl8.4.15/unix/tclsh

configure: error: /home/administrator/ns-allinone-2.32/tcl8.4.15/unix/tclConfig.sh is for Tcl .

Tk 8.4.15 needs Tcl 8.4.

Use --with-tcl= option to indicate location of tclConfig.sh file for Tcl 8.4.

tk8.4.15 configuration failed! Exiting ...

Tk is not part of the ns project.
Please see www.Scriptics.com to see if they have a fix for your platform.
--------------------------------------------------------------------------

This error had been disscused and solved on (http://www.linuxquestions.org/questi...ubuntu-821020/). The solution was:

* installing gcc-4.3 (sudo apt-get install gcc-4.3)

* Editing otcl-1.13/Makefile.in line 7 From : CC= @CC@ to :CC= gcc-4.3

But when I applied these two steps I got the below error:

__________________________________________________________
Reading package lists... Done

Building dependency tree

Reading state information... Done

Package gcc-4.3 is not available, but is referred to by another package.

This may mean that the package is missing, has been obsoleted, or is only available from another source

E: Package 'gcc-4.3' has no installation candidate
________________________________________________________________

How I can deal with this error?

Notes:

* I have Ubuntu 12.04

* gcc-4.6 is already installed

knudfl 07-27-2013 02:39 AM

Welcome to LQ.

Installing compilers gcc41 and g++41 into a 32bits Ubuntu 12** post #47 here ..
http://www.linuxquestions.org/questi...532/page4.html

Using :
cd ns-allinone-2.32/ && export CC=gcc41 CXX=g++41 && ./install


P.S.: gcc-4.3 was usable some years ago with old release versions of Ubuntu.

-

TariqMohammed 07-27-2013 04:32 AM

Quote:

Originally Posted by knudfl (Post 4997734)
Welcome to LQ.

Installing compilers gcc41 and g++41 into a 32bits Ubuntu 12** post #47 here ..
http://www.linuxquestions.org/questi...532/page4.html

Using :
cd ns-allinone-2.32/ && export CC=gcc41 CXX=gcc41 && ./install


P.S.: gcc-4.3 was usable some years ago with old release versions of Ubuntu.

-


Thanks dear Knudfl.

I apply the command: sudo dpkg -i gcc41-compat-4.1.2-ubuntu1210_i386.deb g++41-compat-4.1.2_i386.deb

But I got the below Error:

---------------------------------------------------------------------------
dpkg: error processing gcc41-compat-4.1.2-ubuntu1210_i386.deb (--install):

cannot access archive: No such file or directory

dpkg: error processing g++41-compat-4.1.2_i386.deb (--install):
cannot access archive: No such file or directory

Errors were encountered while processing:

gcc41-compat-4.1.2-ubuntu1210_i386.deb

g++41-compat-4.1.2_i386.deb
---------------------------------------------------------------------------

So, I installed gcc41 and g++41 from the below websites:

https://docs.google.com/file/d/0B7S2...FQY2VJbjA/edit
https://docs.google.com/file/d/0B7S2...jN2M2MGU4/edit

Then, I save them in ns-allinone-2.32 directory.
I repoot my PC then I apply the below commands:

export CC=gcc41 CXX=g++41
./install

Again I got a new error:

============================================================
* Build tcl8.4.15
============================================================
loading cache ./config.cache
checking whether to use symlinks for manpages... no
checking whether to compress the manpages... no
checking whether to add a package name suffix for the manpages... no
checking for gcc... gcc41
checking whether the C compiler (gcc41 ) works... no
configure: error: installation or configuration problem: C compiler cannot create executables.
tcl8.4.15 configuration failed! Exiting ...
Tcl is not part of the ns project. Please see www.Scriptics.com

knudfl 07-27-2013 05:13 AM

Quote:

I save them in ns-allinone-2.32 directory.
Well, then better install the packages. With a "package installer", or
$ sudo dpkg -i gcc41-compat-4.1.2-ubuntu1210_i386.deb g++41-compat-4.1.2_i386.deb

*** Checking if a "command" is installed : $ which gcc
*** And for gcc41 : $ which gcc41 ; $ dpkg -L gcc41-compat
*** g++41 : $ which g++41 ; $ dpkg -L g++41-compat

When you are sure that things are installed, then reboot.

-

TariqMohammed 07-27-2013 08:30 AM

Quote:

Originally Posted by knudfl (Post 4997783)
Well, then better install the packages. With a "package installer", or
$ sudo dpkg -i gcc41-compat-4.1.2-ubuntu1210_i386.deb g++41-compat-4.1.2_i386.deb

*** Checking if a "command" is installed : $ which gcc
*** And for gcc41 : $ which gcc41 ; $ dpkg -L gcc41-compat
*** g++41 : $ which g++41 ; $ dpkg -L g++41-compat

When you are sure that things are installed, then reboot.

-


I run the command:

sudo dpkg -i gcc41-compat-4.1.2-ubuntu1210_i386.deb g++41-compat-4.1.2_i386.deb

and I got the below output:

-------------------------------------------------------------------------------
(Reading database ... 170586 files and directories currently installed.)
Preparing to replace gcc41-compat:i386 4.1.2-ubuntu1210 (using gcc41-compat-4.1.2-ubuntu1210_i386.deb) ...
Unpacking replacement gcc41-compat:i386 ...
Preparing to replace g++41-compat:i386 4.1.2 (using g++41-compat-4.1.2_i386.deb) ...
Unpacking replacement g++41-compat:i386 ...
Setting up gcc41-compat:i386 (4.1.2-ubuntu1210) ...
Setting up g++41-compat:i386 (4.1.2) ...
-------------------------------------------------------------------------------

I reboot and run: dpkg -L gcc41-compat-4.1.2-ubuntu1210_i386.deb and I got:

Package `gcc41-compat-4.1.2-ubuntu1210_i386.deb' is not installed.
Use dpkg --info (= dpkg-deb --info) to examine archive files,
and dpkg --contents (= dpkg-deb --contents) to list their contents.

same thing for g++.

Package `g++41-compat-4.1.2-ubuntu1210_i386.deb' is not installed.
Use dpkg --info (= dpkg-deb --info) to examine archive files,
and dpkg --contents (= dpkg-deb --contents) to list their contents.

knudfl 07-27-2013 09:01 AM

# 6 .
Quote:

.. dpkg -L gcc41-compat-4.1.2-ubuntu1210_i386.deb and I got:

Package `gcc41-compat-4.1.2-ubuntu1210_i386.deb' is not installed.
.
Package `g++41-compat-4.1.2-ubuntu1210_i386.deb' is not installed.
! The "package names" are not
gcc41-compat-4.1.2-ubuntu1210_i386.deb, g++41-compat-4.1.2-ubuntu1210_i386.deb.
Those are file names.
Please read post #5 : $ dpkg -L gcc41-compat / $ dpkg -L g++41-compat
And : $ which gcc41 / $ which g++41

Another way of checking package installs / package naming :
$ ls -tl /var/lib/dpkg/info/ | grep list > last-packages.txt
... will save the text list, with the latest install in line 1.

-

TariqMohammed 07-28-2013 08:25 AM

Quote:

Originally Posted by knudfl (Post 4997859)
# 6 .

! The "package names" are not
gcc41-compat-4.1.2-ubuntu1210_i386.deb, g++41-compat-4.1.2-ubuntu1210_i386.deb.
Those are file names.
Please read post #5 : $ dpkg -L gcc41-compat / $ dpkg -L g++41-compat
And : $ which gcc41 / $ which g++41

Another way of checking package installs / package naming :
$ ls -tl /var/lib/dpkg/info/ | grep list > last-packages.txt
... will save the text list, with the latest install in line 1.

-

I am using the same packages names: g++41-compat-4.1.2_i386.deb AND gcc41-compat-4.1.2-ubuntu1210_i386.deb and I am still getting the same output:


administrator@ubuntu:~/tmp/ns-allinone-2.32$ which gcc41
administrator@ubuntu:~/tmp/ns-allinone-2.32$

administrator@ubuntu:~/tmp/ns-allinone-2.32$ dpkg -L gcc41-compat
Package `gcc41-compat' is not installed.
Use dpkg --info (= dpkg-deb --info) to examine archive files,
and dpkg --contents (= dpkg-deb --contents) to list their contents.


administrator@ubuntu:~/tmp/ns-allinone-2.32$ which g++41
administrator@ubuntu:~/tmp/ns-allinone-2.32$

administrator@ubuntu:~/tmp/ns-allinone-2.32$ dpkg -L g++41-compat
Package `g++41-compat' is not installed.
Use dpkg --info (= dpkg-deb --info) to examine archive files,
and dpkg --contents (= dpkg-deb --contents) to list their contents.

knudfl 07-28-2013 01:48 PM

# 8 .
Quote:

Package `gcc41-compat' is not installed.
.
Package `g++41-compat' is not installed.
Post # 6 actually shows that the packages are installed :
""Setting up gcc41-compat:i386 (4.1.2-ubuntu1210) ...
Setting up g++41-compat:i386 (4.1.2) ...""

Are you quite sure that you have a 32bits (i686) OS ? ?
This command will tell : $ uname -m

-

TariqMohammed 07-29-2013 12:56 AM

Quote:

Originally Posted by knudfl (Post 4998460)
# 8 .

Post # 6 actually shows that the packages are installed :
""Setting up gcc41-compat:i386 (4.1.2-ubuntu1210) ...
Setting up g++41-compat:i386 (4.1.2) ...""

Are you quite sure that you have a 32bits (i686) OS ? ?
This command will tell : $ uname -m

-


$ uname -m
$ x86_64

knudfl 07-29-2013 03:27 AM

# 9 .

Ns2 is for a 32bits (i686) Linux OS.
The most versions of ns-allinone will though work on a 64bits (x86_64) OS.
But with reduced functionality. ( Poor validation result.)

Some of the extra protocols that you can add to ns-2.32 may also work.

But first of all : The compilers for ns-allinone-2.32 must be 64bits.
Suggest : 1) $ sudo apt-get install synaptic
2a) Start synaptic
2b) Find { gcc41-compat, g++41-compat } in synaptic and remove both.
Or do : $ sudo apt-get remove gcc41-compat g++41-compat

64bits compilers for ns-allinone-2.32 : compat-gcc34-3.4.6-ubuntu1204-1_amd64.deb
https://docs.google.com/file/d/0B7S2...it?usp=sharing
and compat-gcc-34-c++_3.4.6-20_amd64.deb
https://docs.google.com/file/d/0B7S2...it?usp=sharing

-

TariqMohammed 08-01-2013 08:17 AM

Quote:

Originally Posted by knudfl (Post 4998745)
# 9 .

Ns2 is for a 32bits (i686) Linux OS.
The most versions of ns-allinone will though work on a 64bits (x86_64) OS.
But with reduced functionality. ( Poor validation result.)

Some of the extra protocols that you can add to ns-2.32 may also work.

But first of all : The compilers for ns-allinone-2.32 must be 64bits.
Suggest : 1) $ sudo apt-get install synaptic
2a) Start synaptic
2b) Find { gcc41-compat, g++41-compat } in synaptic and remove both.
Or do : $ sudo apt-get remove gcc41-compat g++41-compat

64bits compilers for ns-allinone-2.32 : compat-gcc34-3.4.6-ubuntu1204-1_amd64.deb
https://docs.google.com/file/d/0B7S2...it?usp=sharing
and compat-gcc-34-c++_3.4.6-20_amd64.deb
https://docs.google.com/file/d/0B7S2...it?usp=sharing

-


OK. I applied all the above steps.
I installed compat-gcc34-3.4.6-ubuntu1204-1_amd64.deb AND compat-gcc-34-c++_3.4.6-20_amd64.deb using

sudo dpkg -i compat-gcc34-3.4.6-ubuntu1204-1_amd64.deb compat-gcc-34-c++_3.4.6-20_amd64.deb

then, I reboot my PC, How I can run the export command?

knudfl 08-01-2013 09:56 AM

# 11 .
Quote:

How I can run the export command ?
Please see post # 2. The commands for ns-2.32 / gcc34 are :

1) cd ns-allinone-2.32/
2) export CC=gcc34 CXX=g++34 && ./install

TariqMohammed 08-02-2013 09:31 AM

Quote:

Originally Posted by knudfl (Post 5000986)
# 11 .

Please see post # 2. The commands for ns-2.32 / gcc34 are :

1) cd ns-allinone-2.32/
2) export CC=gcc34 CXX=g++34 && ./install



Thanks dear Knudfl, NS2 had been instaled successfully.

When I reach to the last step, ./validate : I got set of Errors, as shown below:

-----------------------------------------------------------------------------------------------------------------------------
*** ./test-all-simple
Tests: tahoe1 tahoe1Bytes tahoe1RED tahoe1REDbytes tahoe2 tahoe3 tahoe3RED tahoe4 no_bug bug reno1 reno renoA reno2 reno3 reno4 reno4a reno5 reno5_nobug telnet delayed phase phase1 phase2 timers manyflows stats statsECN stats1 stats1Bytes stats1a stats1aBytes statsHeaders stats2 stats3 stats4 statsTFRC
Running test tahoe1:
../../ns test-suite-simple.tcl tahoe1 QUIET
wrong # args: should be "_o4 self class proc n1 n2 bw delay res type args"
(Simulator duplex-link line 1)
invoked from within
"$ns duplex-link $node_(s1) $node_(r1) 8Mb 5ms DropTail"
(procedure "_o11" line 4)
(Topology/net0 init line 4)
invoked from within
"_o11 init _o4"
(Class create line 1)
invoked from within
"Topology/net0 create _o11 _o4"
invoked from within
"catch "$className create $o $args" msg"
invoked from within
"if [catch "$className create $o $args" msg] {
if [string match "__FAILED_SHADOW_OBJECT_" $msg] {
delete $o
return ""
}
global errorInfo
error "class $..."
(procedure "new" line 3)
invoked from within
"new Topology/$net_ $ns_"
(procedure "_o3" line 15)
(Object next line 15)
invoked from within
"$self next"
(procedure "_o3" line 8)
(Test/tahoe1 init line 8)
invoked from within
"_o3 init {}"
(Class create line 1)
invoked from within
"Test/tahoe1 create _o3 {}"
invoked from within
"catch "$className create $o $args" msg"
invoked from within
"if [catch "$className create $o $args" msg] {
if [string match "__FAILED_SHADOW_OBJECT_" $msg] {
delete $o
return ""
}
global errorInfo
error "class $..."
(procedure "new" line 3)
invoked from within
"new Test/$test $topo"
(procedure "TestSuite" line 40)
(TestSuite runTest line 40)
invoked from within
"TestSuite runTest"
(file "test-suite-simple.tcl" line 1824)
Test output differs from reference output
Diagnose with: diff test-output-simple/tahoe1.test test-output-simple/tahoe1
Or see URL "http://www.isi.edu/nsnam/ns/ns-problems.html".
^XRunning test tahoe1Bytes:
../../ns test-suite-simple.tcl tahoe1Bytes QUIET
wrong # args: should be "_o4 self class proc n1 n2 bw delay res type args"
(Simulator duplex-link line 1)
invoked from within
"$ns duplex-link $node_(s1) $node_(r1) 8Mb 5ms DropTail"
(procedure "_o11" line 4)
(Topology/net0 init line 4)
invoked from within
"_o11 init _o4"
(Class create line 1)
invoked from within
"Topology/net0 create _o11 _o4"
invoked from within
"catch "$className create $o $args" msg"
invoked from within
"if [catch "$className create $o $args" msg] {
if [string match "__FAILED_SHADOW_OBJECT_" $msg] {
delete $o
return ""
}
.
.
.


What is the problem?

knudfl 08-02-2013 10:04 AM

# 13 .

Please see post #10 : "Ns2 is for a 32bits (i686) Linux OS.
The most versions of ns-allinone will though work on a 64bits (x86_64) OS.
But with reduced functionality. ( Poor validation result.)"

... So a 32bits OS would provide a better 'validate' result.
But : The simulations you want to do may work OK.
If they don't work : Use a 32bits OS, e.g. Ubuntu 12.04 .

-

TariqMohammed 08-05-2013 08:46 AM

Quote:

Originally Posted by knudfl (Post 5001642)
# 13 .

Please see post #10 : "Ns2 is for a 32bits (i686) Linux OS.
The most versions of ns-allinone will though work on a 64bits (x86_64) OS.
But with reduced functionality. ( Poor validation result.)"

... So a 32bits OS would provide a better 'validate' result.
But : The simulations you want to do may work OK.
If they don't work : Use a 32bits OS, e.g. Ubuntu 12.04 .

-

In order to get better validation result, I re-install the OS and I select a 32-bit version.

I download ubuntu 12.04 (32-bit) from: http://www.ubuntu.com/download/desktop

But, when I installed it I am still getting the same result:

~$ uname -m
x86_64

advise please.


All times are GMT -5. The time now is 06:56 AM.