之前就知道这个软件安装起来很恶心,因为毕竟是10年前的软件,可没想到真的好恶心...花了整整一天才装上.

我安装的版本是ns-allinone-2.28,系统版本是ubuntu14.04

其实大部分出现的问题在别人的博客都能解决,但是有一些不能.

下面列出我遇到的,自己解决的问题,之前没截图,大概写下吧

1.int* 到 int丢失精度的问题

这个问题我查了一些资料发现,原来的版本是32位的,而我的ubuntu是64位的,所以会出现丢失精度的问题(64位里int和32位里的长度不一样)

解决方法: 把出现问题的文件打开,对具体某行(问题里会说明,如果没给出具体行数就真的爆炸)修改,修改方法是把原来的int类型改成 unsigned long int类型

这一类的问题都可以这么修改

2.const char* 不能转换到char*的问题

这个问题很容易解决,找到具体文件具体行,强制类型转换为char*就可以

3.fix_x86_64-unknown-linux-gnu.sh

第三个问题是开始遇到的,记不太清了,大概就是无法识别64位之类的,总之运行个补丁脚本就可以了,网上可以查到这个脚本

其他还有的问题都是根据报错的信息可以直接修改的,例如删除掉一些前缀之类的,有些找不到变量的情况网上都有相关补充定义变量的方法

昨天大概就是遇到这些问题,还有些小问题不细说,总之安装了无数遍终于安装完

但是事情没这么简单,今天我想测试一个demo的时候,发现nam不能用!!!当时我的内心是崩溃的.

我在ns的文件夹里搜了一下,发现根本就没有nam.exe这个文件.网上查了好久也没找到这种错,当时感觉真的神烦,后来运气好,在全盘里搜了下,

发现其实是有nam.exe的,但是跑到usr/bin里面,于是我果断复制粘贴到ns的bin里,以为这下子终于搞定了

但我在运行nam时候,又你妹的报错了
$nam
这时就会出现下面的错误提示:
[code omitted because of length]
: no event type or button # or keysym
    while executing
"bind Listbox <MouseWheel> {
%W yview scroll [expr {- (%D / 120) * 4}] units
}"
    invoked from within
"if {[tk windowingsystem] eq "classic" || [tk windowingsystem] eq "aqua"} {

bind Listbox <MouseWheel> {
%W yview scroll [expr {- (%D)}] units
}
bind Li..."

百度后发现,这个是由于nam调用的tk组件和xproto-7.0.13不兼容导致的(xproto-7.0.13 新添加了 GenericEvent)。解决方法如下:
在tk-8.4.11/generic/tkBind.c的第588行后添加3行代码
添加后,效果为:
/* MappingNotify /       0,
#ifdef GenericEvent
/* GenericEvent */      0,
#endif
/* VirtualEvent */        VIRTUAL,

改过后需要重新在ns文件夹目录下./intsall

网上的解决方案基本都是这个,但是我用了发现仍然不能解决我的问题.倒腾了半天,忽然发现我ns文件夹里的bin中的nam.exe是可以打开nam的(第一次看到nam,很激动)

但是usr/bin里的nam.exe打不开,哦!原来usr里的这玩意是以前没改过的!

所以把可执行的那个nam.exe拷贝到usr里就搞定了,其中有个小问题,在usr下默认是没有权限复制文件过去的,需要这条命令: sudo nautilus

效果就是可以以最高权限打开一个文件夹,然后就是复制粘贴的事了,最终运行simple.tcl,终于出现nam动画了!

这下ns2算是老老实实的被我装好了:) 也算是我ns2学习之路的第一步,搞个博客纪念下,没人看也无所谓,习惯自嗨~

关于NS2安装的若干问题的更多相关文章

  1. 【工具】NS2安装记录

    献给同样为了NS2抓破了头皮的同志们. 1, Get Started: http://www.isi.edu/nsnam/ns/ns-build.html#allinone Build by piec ...

  2. NS2安装过程中环境变量设置的问题(ns-2.35)

    nam: Can't find a usable tk.tcl in the following directories: */ns-allinone-2.35/tcl8.5.10/library/t ...

  3. Ubuntu中NS2安装详细教程

    前言: NS2是指 Network Simulator version 2,NS(Network Simulator) 是一种针对网络技术的源代码公开的.免费的软件模拟平台,研究人员使用它可以很容易的 ...

  4. Ubuntu 16——安装——ns2.35和nam

    Ubuntu 16.04 安装ns2.35+nam 总结出以下安装步骤 1: 更新源 sudo apt-get update #更新源列表 sudo apt-get upgrade #更新已经安装的包 ...

  5. 【NS2】ubuntu安装和同时使用不同版本的ns2(转载)

    有时候我们可能会遇到要同时安装两个ns版本的问题,比如我研究wimax/802.16,因为协议太复杂,用的是长庚大学和nist的wimax补丁.长庚大学的wimax补丁是在ns2.29下开发的,nis ...

  6. 普通windows版本安装winServer的特色功能 以dedup功能为展示点

    安装 Windows 功能角色 1.选择安装源 在 Windows 8.1 系统上不存在重复数据删除功能,需要从对应的服务器版本,即 Windows Server 2012 R2 上提取相关文件. 2 ...

  7. CentOS7.1下JDK+Tomcat应用环境搭建

    最近由于项目的原因,需要测试Linux环境下的应用部署情况.选用了CentOS7.1版本+JDK1.6版本+Tomcat7.0版本进行搭建.其间各种折磨就不说了,随手把相关的注意事项和大概的步骤记录下 ...

  8. Hadoop数据操作系统YARN全解析

    “ Hadoop 2.0引入YARN,大大提高了集群的资源利用率并降低了集群管理成本.其在异构集群中是怎样应用的?Hulu又有哪些成功实践可以分享? 为了能够对集群中的资源进行统一管理和调度,Hado ...

  9. 一加3T 误清除data 恢复数据

    数据丢失经过:日常用机无备份直接操作:装google框架后,rootexplorer文件浏览器删除多余google应用导致无法开机:开机不成功应该重刷入google gapps包,并没有这样操作而是进 ...

随机推荐

  1. Gcc的编译流程分为了四个步骤:

    http://blog.csdn.net/xiaohouye/article/details/52084770(转) Gcc的编译流程分为了四个步骤: 1.预处理,生成预编译文件(.文件): Gcc ...

  2. VS下的解决方案目录结构设置和管理

    转载:http://blog.csdn.net/pl20140910/article/details/52074165 为了方便管理自己写的代码,也为了日后工作能方便的查找之前做过相同的代码,仿照某源 ...

  3. INSTALLMENT of QValue

    ############################################ INSTALLMENT############################################ ...

  4. qq2440启动linux后插入u盘出现usb 1-1: device descriptor read/64, error -110,usb 1-1: device not accepting address 8, error -110

    上位机:ubuntu14.04 64bit 下位机:qq2440 交叉编译器:arm-linux-gcc 3.4.1 下位机使用的linux内核版本:kernel2.6.13 1.插入u盘时错误信息如 ...

  5. PHP文本框的值随下拉框改变

    初学PHP,下面是实现文本框内容随下拉框变化的代码实现: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&q ...

  6. C++学习笔记一 —— 两个类文件互相引用的处理情况

    先记录一些零碎的知识点: 1. 一个类可以被声明多次,但只能定义一次,也就是可以 class B;  class B;  class B; ……;  class B {……};  这样子. 2. 一个 ...

  7. centos7 安装mysql5.7.16

    1 下载地址http://dev.mysql.com/downloads/mysql/#downloads 2. 解压 -linux-glibc2.-x86_64.tar.gz 3.移动解压出来的文件 ...

  8. html,css,js加载顺序

    1.js放在head中会立即执行,阻塞后续的资源下载与执行.因为js有可能会修改dom,如果不阻塞后续的资源下载,dom的操作顺序不可控. 正常的网页加载流程是这样的. 浏览器一边下载HTML网页,一 ...

  9. spring4+mybatis3+maven

    简介 在上一篇博文中,我们搭建了maven环境,现在我们就用maven搭个ssm框架,废话不多说,直接开始吧 代码下载地址 链接:http://pan.baidu.com/s/1nvg42EH 密码: ...

  10. Linux 忘记密码解决方法

    很多朋友经常会忘记Linux系统的root密码,linux系统忘记root密码的情况该怎么办呢?重新安装系统吗?当然不用!进入单用户模式更改一下root密码即可. 步骤如下: 重启linux系统 3  ...