deb http://mirrors.ustc.edu.cn/ubuntu-old-releases/ubuntu/ maverick main universe restricted multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu-old-releases/ubuntu/ maverick main universe restricted multiverse
deb http://mirrors.ustc.edu.cn/ubuntu-old-releases/ubuntu/ maverick-security universe main multiverse restricted
deb-src http://mirrors.ustc.edu.cn/ubuntu-old-releases/ubuntu/ maverick-security universe main multiverse restricted
deb http://mirrors.ustc.edu.cn/ubuntu-old-releases/ubuntu/ maverick-updates universe main multiverse restricted
deb http://mirrors.ustc.edu.cn/ubuntu-old-releases/ubuntu/ maverick-proposed universe main multiverse restricted
deb-src http://mirrors.ustc.edu.cn/ubuntu-old-releases/ubuntu/ maverick-proposed universe main multiverse restricted
deb http://mirrors.ustc.edu.cn/ubuntu-old-releases/ubuntu/ maverick-backports universe main multiverse restricted
deb-src http://mirrors.ustc.edu.cn/ubuntu-old-releases/ubuntu/ maverick-backports universe main multiverse restricted
deb-src http://mirrors.ustc.edu.cn/ubuntu-old-releases/ubuntu/ maverick-updates universe main multiverse restricted
git clone git://gitosis.stanford.edu/mnox.git
3.这步比较费时
sudo apt-get install automake m4 libtool openssl libssl-dev libboost-dev python-simplejson4.sudo apt-get install libboost-filesystem-dev libxerces-c2-dev python-dev libboost-thread1.40.0
sudo apt-get install libboost-serialization-dev libsqlite3-dev libreadline-dev python-sphinx
sudo apt-get install libboost-test1.40-dev libboost-all-dev libxml2-dev swig libboost-system-dev
cd mnox/ ./boot.sh ./configure --with-python=yes cd src/ makemake出错
解决方案:
安装MPLS-TE示例 - martin2350的专栏 - 博客频道 - CSDN.NET
http://blog.csdn.net/martin2350/article/details/8125945
~/mnox/src/lib
sudo gedit async_io.cc
#include <cstdio>
后还是出现错误还是在需要的地方添加上#include <cstdio>以下地方:cd ~/mnox/src/include/netinet++#include <cstdio>sudo gedit ethernetaddr.hhsudo gedit datapathid.hhcd ~/mnox/src/include
sudo gedit cnode.hh
string.cc:33: error: ‘vsnprintf’ was not declared in this scope
sudo gedit string.hh
cd ~/mnox/src/lib
ssl-config.cc:126: error: ‘uint32_t’ was not declared in this scope
sudo gedit signals.cc#include <stdint.h>threads/impl.cc:1306: error: ‘rename’ was not declared in this scopecd ~/mnox/src/lib/threads#include <cstdio>sudo gedit impl.ccsudo gedit native.cccd ~/mnox/src/lib
sudo gedit netlink.cc
pyrt.cc:182: error: ‘PySwigObject’ was not declared in this scope
下载补丁文件pyname_patch.py 到mnox/src文件夹下执行find -name *.cc | xargs python pyname_patch.py find -name *.hh | xargs python pyname_patch.pypyrt.cc:182: error: ‘PySwigObject’ was not declared in this scope
find -name pyrt.cc|xargs python pyname_patch.py
find -name pycontext.cc|xargs python pyname_patch.py
find -name pyglue.cc|xargs python pyname_patch.py
find -name oxidereactor.cc|xargs python pyname_patch.py
find -name simple_cc_py_proxy.cc|xargs python pyname_patch.py
find -name pyagg_util.cc|xargs python pyname_patch.py
find -name pyaggutil_wrap.cc|xargs python pyname_patch.py
find -name pyflow_util.cc|xargs python pyname_patch.py
find -name pyflowutil_wrap.cc|xargs python pyname_patch.py
find -name pyname_manager.cc|xargs python pyname_patch.py
find -name pyauth.cc|xargs python pyname_patch.py
find -name apdb_proxy.cc|xargs python pyname_patch.py
find -name pyauth_wrap.cc|xargs python pyname_patch.py
find -name pyrouting.cc|xargs python pyname_patch.py
find -name pynat_enforcer.cc|xargs python pyname_patch.py
find -name user_event_log_proxy.cc|xargs python pyname_patch.py
find -name pystorage.cc|xargs python pyname_patch.py
find -name pytransactional-storage.cc|xargs python pyname_patch.py
find -name pytopology.cc|xargs python pyname_patch.py
find -name pylinkevent_wrap.cc|xargs python pyname_patch.py
find -name pydirmanager.cc|xargs python pyname_patch.py
find -name pydirmanager_wrap.cc|xargs python pyname_patch.py
find -name pynetinfo_mod_event_wrap.cc|xargs python pyname_patch.py
find -name bindings_storage_proxy.cc|xargs python pyname_patch.py
find -name cswitchstats_proxy.cc|xargs python pyname_patch.py
find -name lavi_proxy.cc|xargs python pyname_patch.py
find -name apdb_proxy.cc|xargs python pyname_patch.py
After that:nox_main.cc:164: error: ‘umask’ was not declared in this scopecd ~/mnox/src
#include<sys/stat.h>mnox is OK!只是编译通过
运行出现如下问题:
./nox_core -v -i ptcp mpls
00001|nox|DBG:Starting nox_core (/home/m/mnox/src/.libs/lt-nox_core)
00002|kernel|DBG:Assigned a new UUID for the container: c6912f6c15becdbe
00003|nox|ERR:Cannot change the state of 'python' to INSTALLED:
'python' ran into an error:
Unable to construct a Python component:
Traceback (most recent call last):
File "./nox/coreapps/pyrt/pyoxidereactor.py", line 327, in instance
return pyoxidereactor(ctxt)
File "./nox/coreapps/pyrt/pyoxidereactor.py", line 102, in __init__
signal.signal(signal.SIGCHLD, self._handleSigchld)
AttributeError: 'pyoxidereactor' object has no attribute '_handleSigchld'
修改./nox/coreapps/pyrt/pyoxidereactor.py文件的第102行如下,注意对齐:
# signal.signal(signal.SIGCHLD, self._handleSigchld)
signal.signal(signal.SIGCHLD, lambda : self.callLater(0,reapAllProcesses))
ok now!二:安装mininet
git clone git://github.com/mininet/mininet
cd mininet/
git tag
git checkout -b 1.0.0 1.0.0
cd ..
~/mininet/util$ ./install.sh -n
sudo: aptitude: command not found
sudo apt-get install aptitude
./install.sh -n(安装耗时)
sudo mnCannot find required executable ovs-dpctl.Please make sure that Open vSwitch (openvswitch.org) is installed and available in your $PATH:(/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin)三:安装movscd ~ git clone git://gitosis.stanford.edu/movs.git cd movs ./boot.sh ./configure make sudo make installchange git://openflowswitch.org/mininet.git by editing the file ~/mininet/.git/config~/mininet/.git$ sudo gedit config
url = git://openflowswitch.org/mininet.git
cd ~/mininet git fetch git checkout lantz/userovs sudo make install四:安装GUIgit clone git://gitosis.stanford.edu/envi-mpls.gitcd envi-mpls/gui/ make~/envi-mpls/gui$ make/bin/sh: ant: not foundsudo apt-get install ant(要下载很多东西,安装过程较长,网速给力的情况下可以很快)再make:~/envi-mpls/gui$ makeUnable to locate tools.jar. Expected to find it in /usr/lib/jvm/java-6-openjdk/lib/tools.jarBuildfile: /home/m/envi-mpls/gui/build.xmlinit:[mkdir] Created dir: /home/m/envi-mpls/gui/bin[copy] Copying 16 files to /home/m/envi-mpls/gui/bin[mkdir] Created dir: /home/m/envi-mpls/gui/bin/images[copy] Copying 14 files to /home/m/envi-mpls/gui/bin/images[unzip] Expanding: /home/m/envi-mpls/gui/lib/jcommon-1.0.15.jar into /home/m/envi-mpls/gui/bin[unzip] Expanding: /home/m/envi-mpls/gui/lib/jfreechart-1.0.12.jar into /home/m/envi-mpls/gui/bin[unzip] Expanding: /home/m/envi-mpls/gui/lib/jung2-layout-min.jar into /home/m/envi-mpls/gui/bin[unzip] Expanding: /home/m/envi-mpls/gui/lib/jyaml-1.3.dgu.jar into /home/m/envi-mpls/gui/bin[delete] Deleting directory /home/m/envi-mpls/gui/bin/META-INFbuild:[javac] /home/m/envi-mpls/gui/build.xml:40: warning: 'includeantruntime' wasnot set, defaulting to build.sysclasspath=last; set to false for repeatable builds[javac] Compiling 124 source files to /home/m/envi-mpls/gui/binBUILD FAILED/home/m/envi-mpls/gui/build.xml:40: Unable to find a javac compiler;com.sun.tools.javac.Main is not on the classpath.Perhaps JAVA_HOME does not point to the JDK.It is currently set to "/usr/lib/jvm/java-6-openjdk/jre"Total time: 0 secondsmake: *** [jar] Error 1BUILD FAILED/home/m/envi-mpls/gui/build.xml:40: Unable to find a javac compiler;com.sun.tools.javac.Main is not on the classpath.Perhaps JAVA_HOME does not point to the JDK.It is currently set to "/usr/lib/jvm/java-6-openjdk/jre"Total time: 0 secondsmake: *** [jar] Error 1sudo apt-get install openjdk-6-jdkexport JAVA_HOME="/usr/lib/jvm/java-6-openjdk"bash: /usr/lib/jvm/java-6-openjdk: is a directory(已醉)没加”“修改过环境变量后/etc/profile文件后还是java -jar bin/openflow_gui.jar 127.0.0.1
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00007fa12da58de0, pid=2284, tid=140330234332944
#
# JRE version: 6.0_20-b20
# Java VM: OpenJDK 64-Bit Server VM (19.0-b09 mixed mode linux-amd64 compressed oops)
# Derivative: IcedTea6 1.9.13
# Distribution: Ubuntu 10.10, package 6b20-1.9.13-0ubuntu1~10.10.1
# Problematic frame:
# C [ld-linux-x86-64.so.2+0x15de0]
#
# An error report file with more information is saved as:
# /home/mpls/envi-mpls/gui/hs_err_pid2284.log
#
# If you would like to submit a bug report, please include
# instructions how to reproduce the bug and visit:
# https://bugs.launchpad.net/ubuntu/+source/openjdk-6/
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
Aborted~/envi-mpls/gui$ java -d32 -jar bin/openflow_gui.jar 127.0.0.1
This Java instance does not support a 32-bit JVM.
Please install the desired version.
切换成sun JDK之后是这样:sudo update-alternatives --config java
java -d32 -jar bin/openflow_gui.jar 127.0.0.1Running a 32-bit JVM is not supported on this platform64bit和32bit的问题错误依旧存在安装java version "1.8.0_45"32bit此错误解决