question

AdeelM avatar image
AdeelM asked lakshminarayana answered

How to use a specific version of IxNetwork when I have multiple versions installed?

I am posting this on behalf of my customer:

 

We are running iTest 4.0, four Ixia versions have been installed as below,

 

[v6-pit IxTclNetwork]$ ls -ltr
total 32
drwxr-xr-x   3 atsgate  smmsp       4096 Aug 25  2008 5.30
drwxr-xr-x   3 atsgate  smmsp       4096 Aug 19 14:15 5.60
drwxr-xr-x   3 atsgate  smmsp       4096 Aug 19 19:38 5.40
drwxr-xr-x   3 atsgate  smmsp       4096 Aug 19 20:02 5.50

 

When I start to open IxNetwork session, it picks up the latest version which is 5.60. However the version on the Ixia chassis is 5.50. How to make iTest choose v5.50 so that I can connect to Ixia chassis from iTest?

iTesttraffic generation
10 |950

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

lakshminarayana avatar image
lakshminarayana answered

We do get the error "ELF file data encoding not little-endian" when there is an issue with the platform compatibility. The issue could be resolved by installing “Platform Independent TCL for Ixnetwork” from Ixia support site.

10 |950

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

HosoonK avatar image
HosoonK answered HosoonK posted

Modify your TCLLIBPATH to desried version of IxNetwork Tcl library path before you start iTest.

For example, from your shell execute this command; 

 

export TCLLIBPATH=/5.50/lib/IxTclNetwork $TCLLIBPATH

 

You may want to update your .bashrc or .bash_profile to make the the change easily updatible.

 

 

8 comments
10 |950

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

gracedeng avatar image gracedeng commented ·

I followed your instruction but it didn't work. So I installed iTest 4.1 today and got the same error. My IxOS version is 5.60, IxNetwork version is 5.50. I defined to use IxNetwork 5.50 path in TCLLIBPATH, but it is still looking for the path for 5.60.It reports that "libIxTclNetwork.so: ELF file data encoding not little-endian". Does it mean something wrong in this file?

 

My env setup:

$ echo $LD_LIBRARY_PATH
/auto/gate/autotest/lib/ixia/IxTclNetwork/5.50/IxTclNetwork:/opt/ats5.1.0/lib/dload....

$ echo $TCLLIBPATH
/auto/gate/autotest/lib/ixia/IxTclNetwork/5.50/IxTclNetwork /opt/iTest_4.1/tcl.....

 

Ixia lib:

$ ls -ltr /auto/gate/autotest/lib/ixia/IxTclNetwork/5.50/IxTclNetwork
total 12972
-rwxrwxr-x  1 atsgate eng     2705 Jul 23  2010 ixTclNetworkSetup.tcl
-rwxrwxr-x  1 atsgate eng 13237976 Jul 23  2010 libIxTclNetwork.so
-rwxrwxr-x  1 atsgate eng      657 Jul 23  2010 pkgIndex.tcl
-rwxrwxr-x  1 atsgate eng      932 Jul 23  2010 IxTclNetwork.tcl
drwxrwxr-x  2 atsgate eng     4096 Aug 19  2010 Generic

 

Error msg that I got when start IxNetwork session:

Using external tcl interpreter
tcl version: 8.4.19
tclsh location: /opt/ats5.1.0/bin/tclsh
tcl library: /auto/ttsw/ActiveTcl/8.4.19.1.286040/lib/tcl8.4
tcl package search path: /auto/gate/autotest/lib/ixia/IxTclNetwork/5.50/IxTclNetwork /opt/iTest_4.1/tcl /opt/iTest_4.1/itestAtsExec/itestrun /auto/g.....

Loading Tcl package IxTclNetwork... error
    Error loading native libraries. Make sure that all libraries mentioned in error message below are installed and included into LD_LIBRARY_PATH environment variable
    couldn't load file "/auto/gate/autotest/lib/ixia/IxTclNetwork/5.60/IxTclNetwork/libIxTclNetwork.so": /auto/gate/autotest/lib/ixia/IxTclNetwork/5.60/IxTclNetwork/libIxTclNetwork.so: ELF file data encoding not little-endian
Initialization Failed:Error loading native libraries. Make sure that all libraries mentioned in error message below are installed and included into LD_LIBRARY_PATH environment variable


Disconnected...

 

0 Likes 0 ·
lakshminarayana avatar image lakshminarayana gracedeng commented ·

Could you please select the appropriate IxNetwork API version (5.50) in the session profile and start the session.

0 Likes 0 ·
gracedeng avatar image gracedeng lakshminarayana commented ·

Yes, in the session profile, I selected IxNetwork API version with 5.50.

 

BTW, my Linux version is  5.03-4. Would that cause any problem?

 

Thanks,

 

 

0 Likes 0 ·
VidyaH avatar image VidyaH gracedeng commented ·

Hi,
Could you please open tcl shell and try to do "package require IxTclNetwork" and let us know what version it is returning as output?
iTest will try to load the Ixnetwork tcl libraries using ixia's tcl api functions while starting session, the error you are seeing is from the output of tcl api's.

Looks like the "libIxTclNetwork.so" file is not supported for your system's architecture or Operating system which you are using?

Please let us know what Linux you are using? Also, are you trying to share this IxNetwork installation to other users?
I would suggest to re install the correct loaders for your system, this kind of errors normally seen when your system has different kind of loaders by mistake.

Are you seeing this issue only after installing IxNetwork 5.60 version?
Previously, have you successfully used IxNetwork 5.40 and IxNetwork 5.50 versions using iTest?


Thanks,
Vidya

0 Likes 0 ·
gracedeng avatar image gracedeng VidyaH commented ·

Hi Vidya,

 

Thank you so much for this valuable info. Here is the output.

 

> package require IxTclNetwork
couldn't load file "/auto/gate/autotest/lib/ixia/IxTclNetwork/5.60/IxTclNetwork/libIxTclNetwork.so": /auto/gate/aut
otest/lib/ixia/IxTclNetwork/5.60/IxTclNetwork/libIxTclNetwork.so: ELF file data encoding not little-endian
    while executing
"load $loadFile IxTclNetwork"
    ("unix" arm line 3)
    invoked from within
"switch $tcl_platform(platform) {
   windows {
      set pathToScript [file dirname [info script]]
      set installDir [file normalize [file join $pat..."
    (file "/auto/gate/autotest/lib/ixia/IxTclNetwork/5.60/IxTclNetwork/ixTclNetworkSetup.tcl" line 17)
    invoked from within
"source [file join [file dirname [info script]] ixTclNetworkSetup.tcl]"
    (file "/auto/gate/autotest/lib/ixia/IxTclNetwork/5.60/IxTclNetwork/IxTclNetwork.tcl" line 25)
    invoked from within
"source /auto/gate/autotest/lib/ixia/IxTclNetwork/5.60/IxTclNetwork/IxTclNetwork.tcl"
    ("package ifneeded" script)
    invoked from within
"package require IxTclNetwork"
expect1.2> puts $dirname
can't read "dirname": no such variable
    while executing
"puts $dirname"
expect1.3> puts dirname
dirname
expect1.4> puts $file
can't read "file": no such variable
    while executing
"puts $file"
expect1.5> puts $tcl_platform(platform)
unix

 

I am using Cisco Linux server and all the Ixia libs are installed centralized.

 

I was able to use IxNetwork 5.4 with iTest 4.0. Since the Ixia was upgraded to IxOS 5.60 and IxNetwork 5.50, I have this problem all the time even with iTest 4.1.

 

Thanks,

 

- Grace

 

0 Likes 0 ·
VidyaH avatar image VidyaH gracedeng commented ·

This output shows that your environment setup still has IxNetwork 5.60 related information. Please check if your PATH,TCLLIBPATH,LD_LIBRARY_PATH etc are still having IxNetwork 5.60 related information?I would suggest to remove the occurances so that you are not blocked with IxNetwork 5.50 testing?

 

Regarding the error "ELF file data encoding not little-endian", I would suggest you to contact Ixia support to get this  fixed for your system.

 

Thanks,

Vidya

 

 

0 Likes 0 ·
gracedeng avatar image gracedeng VidyaH commented ·

Hi Vidya,

 

After contacted Ixia support, I know how to use IxTclNetwork with right version,

 

expect1.10> set auto_path /auto/oibu-ats/ixia_hltapi/ixia_rt10/Linux/lib
expect1.11> package forget IxTclNetwork
expect1.12> package req -exact IxTclNetwork 5.50.121.59
5.50.121.59

 

What is the right way to define such info in IxNetwork session? I tried to enter the below info in the "Initialization script" field for the IxNetwork session profile,

 

set auto_path /auto/oibu-ats/ixia_hltapi/ixia_rt10
package forget IxTclNetwork
set TCLLIBPATH /auto/oibu-ats/ixia_hltapi/ixia_rt10

 

and got the error after start IxNetwork session,

 

Using external tcl interpreter
tcl version: 8.4.19
tclsh location: /opt/ats5.1.0/bin/tclsh
tcl library: /auto/ttsw/ActiveTcl/8.4.19.1.286040/lib/tcl8.4
tcl package search path: /auto/oibu-ats/ixia_hltapi/ixia_rt10 /opt/iTest_4.1/tcl /opt/iTest_4.1/itestAtsExec/itestrun /auto/gate/autotest /auto/ttsw/ActiveTcl/8.4.19.1.286040/lib/tcl8.4 /auto/ttsw/ActiveTcl/8.4.19.1.286040/lib /opt/ats5.1.0/lib /opt/ats5.1.0/lib/teapot/package/linux-glibc2.3-ix86/lib /opt/ats5.1.0/lib/teapot/package/linux-glibc2.2-ix86/lib /opt/ats5.1.0/lib/teapot/package/linux-glibc2.1-ix86/lib /opt/ats5.1.0/lib/teapot/package/linux-glibc2.0-ix86/lib /opt/ats5.1.0/lib/teapot/package/tcl/lib

Running initialization script...
% set auto_path /auto/oibu-ats/ixia_hltapi/ixia_rt10
/auto/oibu-ats/ixia_hltapi/ixia_rt10
% package forget IxTclNetwork
% set TCLLIBPATH /auto/oibu-ats/ixia_hltapi/ixia_rt10
/auto/oibu-ats/ixia_hltapi/ixia_rt10

Loading Tcl package IxTclNetwork... error
    IxTclNetwork not found under its default location (~/Ixia/lib/IxTclNetwork). Try add its location manually to TCLLIBPATH environment variable and restart iTest.
    invalid command name "tclPkgUnknown"
Initialization Failed:IxTclNetwork not found under its default location (~/Ixia/lib/IxTclNetwork). Try add its location manually to TCLLIBPATH environment variable and restart iTest.

Disconnected...

 

Thanks,

 

- Grace

0 Likes 0 ·
VidyaH avatar image VidyaH gracedeng commented ·

Hi Grace,
Please set IxNetwork 5.50 version TCLLIBPATH either in session profile property i.e. "Path to Tcl Library" as shown in screenshot or you can set the same in the system as mentioned in one previous posts.

Since your IxNetwork installation is in Linux and not installed in the default location, and iTest only in Linux OS will try to check installation default directory and hence its throwing this error.
If you set the TCLLIBPATH properly then it should work fine.


Also, you cannot set TCLLIBPATH environment variable using "set" as shown in initialization script. I think there is an "env" command with options available to set environment variables which you may to take a look at?

Hope this helps.


Thanks,
Vidya

0 Likes 0 ·
tcl-ixia.JPG (32.0 KiB)

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.