1. 程式人生 > >在Mac os 10.9(Mavericks)中安裝NS-2.35附自己製作的patch[修正一個錯誤]

在Mac os 10.9(Mavericks)中安裝NS-2.35附自己製作的patch[修正一個錯誤]

#! /bin/sh
#
# Copyright (C) 2000 by USC/ISI
# All rights reserved.
#
# Redistribution and use in source and binary forms are permitted
# provided that the above copyright notice and this paragraph are
# duplicated in all such forms and that any documentation, advertising
# materials, and other materials related to such distribution and use
# acknowledge that the software was developed by the University of
# Southern California, Information Sciences Institute.  The name of the
# University may not be used to endorse or promote products derived from
# this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
# $Header: /cvsroot/nsnam/ns-2/allinone/install,v 1.31 2007/03/10 23:40:05 tom_henderson Exp $

die() {
	echo "
[email protected]
" 1>&2 test ! -z "$blame" && echo "$blame" 1>&2 exit 1 } warn() { echo "[email protected]" } test_proceed() { echo ""; echo "The above test indicates that your installation of Cygwin"; echo "is probably NOT SUITABLE for installing ns-2 allinone."; echo "(More details can be found in the specific error message above.)"; echo ""; echo -n "Do you wish to proceed regardless? [y/N] " read answer; if [ "$answer" != "y" ] && [ "$answer" != "Y" ]; then die "Installation aborted..."; exit 1; fi; echo ""; echo "*** OK, but you're on your own... ***"; echo ""; } test_packages() { for i in
[email protected]
; do echo -n "Checking for ${i}... "; cygcheck -c ${i} | grep ${i} >/dev/null 2>&1; if [ "$?" -eq "0" ]; then echo "ok"; else echo "NO!"; echo ""; echo "Package ${i} is not present on your system."; echo ""; echo "Please install it using Cygwin's setup.exe"; echo "before trying to install the ns-2 distribution."; test_proceed; fi; done; } cygwin_tests() { echo -n "Checking Cygwin version is >= 1.7.1... " cmaj=` uname -r | sed -e 's/^\([0-9]*\)\.\([0-9]*\).\([0-9]*\).*/\1/'`; echo $cmaj | grep -v [0-9] >/dev/null 2>&1 if [ "$?" -eq "0" ]; then cmaj=0; fi; cmin=` uname -r | sed -e 's/^\([0-9]*\)\.\([0-9]*\).\([0-9]*\).*/\2/'`; echo $cmin | grep -v [0-9] >/dev/null 2>&1 if [ "$?" -eq "0" ]; then cmin=0; fi; cpat=` uname -r | sed -e 's/^\([0-9]*\)\.\([0-9]*\).\([0-9]*\).*/\3/'`; echo $cpat | grep -v [0-9] >/dev/null 2>&1 if [ "$?" -eq "0" ]; then cpat=0; fi; echo -n "$cmaj.$cmin.$cpat "; if ([ "$cmaj" -gt "1" ]) || ([ "$cmaj" -eq "1" ] && [ $cmin -gt "7" ]) || ([ "$cmaj" -eq 1 ] && [ $cmin -eq "7" ] && [ "$cpat" -ge "1" ]); then echo "(should be ok)"; else echo "(NO!)"; echo ""; echo "ns-allinone-${NSVER} has not been tested under versions of Cygwin older than"; echo "1.7.1. Your version ($cmaj.$cmin.$cpat) appears to be older than that. Success of"; echo "the install process is therefore NOT GUARANTEED."; echo ""; cygversion="failed"; test_proceed; fi; echo -n "Checking filesystems are mounted as UNIX filetype... "; mount | grep "textmode" >/dev/null 2>&1; if [ "$?" -eq "0" ]; then echo "NO!"; mount_test="failed"; echo ""; echo "It appears that some of your Cygwin shares are mounted as DOS file"; echo "type. This has not been tested, but is likely to result in failure of"; echo "validation tests. Success of the install process is also NOT"; echo "GUARANTEED."; echo ""; echo "Refer to the Cygwin user guide for how to install Cygwin with the UNIX"; echo "file text mode."; test_proceed; else echo "yes"; echo -n "Checking default mode is binmode... "; echo ${CYGWIN} | grep "nobinmode" >/dev/null 2>&1; if [ "$?" -eq "0" ]; then cyg_env_var="failed"; echo "*** NO! ***"; echo ""; echo "Your \$CYGWIN environment variable specifies \"nobinmode\". This is"; echo "likely to result in failure of validation tests, and (possibly) of"; echo "the whole install process. You need to have the \$CYGWIN environment"; echo "variable set to \"binmode\". Please refer to the Cygwin user guide for"; echo "details on how to change this."; test_proceed; else echo "yes"; fi; fi; login=`whoami` echo -n "Checking legitimate login name... "; echo ${login} | grep " " >/dev/null 2>&1; if [ "$?" -eq "0" ]; then echo "NO!"; echo ""; echo "Your username (${login}) contains spaces,"; echo "which makes the installation of ns-2 impossible."; echo "Please try to install ns-2 as a different user, whose"; echo "name does not contain any spaces."; test_proceed; else echo "ok"; fi; echo -n "Checking legitimate path name... "; installpath=`cygpath -d /`; echo ${installpath} | grep " " >/dev/null 2>&1; if [ "$?" -eq "0" ]; then echo "NO!"; echo ""; echo "Your Cygwin installation path (${installpath}) contains spaces,"; echo "which makes the installation of ns-2 impossible."; echo "Please reinstall Cygwin in a different directory, which"; echo "does not contain any spaces."; test_proceed; else echo "ok"; fi; test_packages ${packages_base} echo -n "Checking for diff... "; diff -v 2>&1 | grep -iv "not found" >/dev/null 2>&1; if [ "$?" -eq "0" ]; then echo "ok"; else echo "NO!"; echo ""; echo "diff is not present on your system."; echo ""; echo "Please install it using Cygwin's setup.exe"; echo "before trying to install the ns-2 distribution."; test_proceed; fi; echo -n "Checking for X... "; test_packages ${packages_xorg} } # Package VERSIONs. Change these when releasing new packages TCLVER=8.5.10 TKVER=8.5.10 OTCLVER=1.14 TCLCLVER=1.20 NSVER=2.35 NAMVER=1.15 XGRAPHVER=12.2 ZLIBVER=1.2.3 DEI80211MRVER=1.1.4 # Get current path CUR_PATH=`pwd` echo "============================================================" echo "* Testing for Darwin (OS X) environment" echo "============================================================" if [ `uname` = "Darwin" ]; then echo "Darwin detected"; DYLD_LIBRARY_PATH=$CUR_PATH/tcl$TCLVER/unix:$CUR_PATH/tk$TKVER/unix:$DYLD_LIBRARY_PATH export DYLD_LIBRARY_PATH export LDFLAGS="-framework CoreFoundation" test_darwin=true fi # A Cygwin install requires these packages: packages_base="gcc4 gcc4-g++ gawk tar gzip make patch perl w32api" packages_xorg="xorg-server xinit libX11-devel libXmu-devel" # Check if we are using Cygwin, and if so, if it is a good install # Most Cygwin fixes in the tree and this part of the install script were # contributed by Nicolas Christin <
[email protected]
> echo "============================================================" echo "* Testing for Cygwin environment" echo "============================================================" if [ -x /usr/bin/uname ]; then # it may be a Cygwin install test_cygwin=`uname | tr [a-z] [A-Z] | sed -e 's|.*CYGWIN.*|true|'`; if [ "${test_cygwin}" = "true" ]; then echo "Cygwin detected"; echo "Note: Cygwin install is still considered EXPERIMENTAL"; echo ""; cygwin_tests; echo "Patching Tcl/Tk for Cygwin."; if [ ! -f ./tcl${TCLVER}/generic/tcl.h.orig ]; then cp ./tcl${TCLVER}/generic/tcl.h ./tcl${TCLVER}/generic/tcl.h.orig; echo "The original tcl${TCLVER}/generic/tcl.h is backed up as tcl${TCLVER}/generic/tcl.h.orig"; sed -e 's/\#define _TCL/\#define _TCL\`\`\#ifdef __CYGWIN__\`\#define HAVE_TM_ZONE 1\`\#endif \/\* __CYGWIN__ \*\//g' ./tcl${TCLVER}/generic/tcl.h.orig | tr '\`' '\n' > ./tcl${TCLVER}/generic/tcl.h; cp ./tk${TCLVER}/generic/default.h ./tk${TCLVER}/generic/default.h.orig; echo "The original tk${TKVER}/generic/default.h is backed up as tk${TKVER}/generic/default.h.orig"; sed -e 's/defined(__CYGWIN__) || defined(__MINGW32__)/0/g' ./tk${TKVER}/generic/default.h.orig > ./tk${TKVER}/generic/default.h; fi; touch ./tcl${TCLVER}/generic/tclStubInit.c; echo "Patching sgb for Cygwin."; cp ./sgb/Makefile ./sgb/Makefile.orig; echo "The original sgb/Makefile is backed up as sgb/Makefile.orig"; sed -e 's|rm \(.*\)test_io test_graph test_flip test_sample\(.*\)|rm -f \1test_io.exe test_graph.exe test_flip.exe test_sample.exe\2|' ./sgb/Makefile.orig > ./sgb/Makefile; echo "Setting executable format to .exe..."; EXE=".exe"; else echo "Cygwin not detected, proceeding with regular install."; EXE=; fi; else echo "Cygwin not detected, proceeding with regular install."; fi; echo "============================================================" echo "* Testing for FreeBSD environment" echo "============================================================" # See if we need to use gmake. if [ "`uname -s`" = "FreeBSD" ]; then echo "FreeBSD detected; using gmake instead of make" if (type gmake &>/dev/null); then alias make="gmake" fi else echo "FreeBSD not detected" fi # Compile and install xgraph echo "============================================================" echo "* Build XGraph-$XGRAPHVER" echo "============================================================" cd ./xgraph-$XGRAPHVER ./configure --prefix=../ if [ "${test_cygwin}" = "true" ]; then touch stamp-h; fi; if make then echo "xgraph has been installed successfully. " else echo "Can not create xgraph; But xgraph is an optional package, continuing..." fi cd ../ # Compile and install cweb and sgblib echo "============================================================" echo "* Build CWeb" echo "============================================================" cd ./cweb if [ ! -f ./Makefile ] then echo "ns-allinone unable to install cweb for you. Please install it manually. cweb is used by sgb to create sgblibrary needed by scenario-generator. But this will not affect the use of ns as such, so continue.." else echo "Making cweb" touch *.c make all || warn "cweb failed to make, but it's optional" # xxx: other stuff will fail... chmod 755 cweave${EXE} chmod 755 ctangle${EXE} cd .. #echo "cd .." if [ ! -d bin ] then mkdir bin fi cd bin ln -s $CUR_PATH/cweb/cweave${EXE} cweave${EXE} ln -s $CUR_PATH/cweb/ctangle${EXE} ctangle${EXE} fi cd .. PATH=$CUR_PATH/bin:$PATH export PATH echo "============================================================" echo "* Build Stanford GraphBase" echo "============================================================" cd ./sgb if [ ! -f ./Makefile ] then echo "Unable to create sgb library. This library is used by gt-itm and so for scenario generators. If you already have sgblib (possible if you are on solaris,sunos or freebsd platforms) you may still be able to run gt-itm. so continuing.." else echo "Making sgb" if make tests then if [ -f libgb.a ] ; then rm -f ../gt-itm/lib/libgb.a cp libgb.a ../gt-itm/lib/libgb.a else echo "* Weird: sgb said it has been built but we can't find libgb.a! " exit -1 fi else echo "Unable to create sgb library, but it's optional, so continuing..." fi fi cd .. # Compile and install gt-itm & sgb2ns echo "============================================================" echo "* Build GT-ITM" echo "============================================================" if [ -f ./gt-itm/lib/libgb.a ] then if [ ! -f ./gt-itm/src/Makefile ] then echo "ns-alline is unable to install gt-itm sgb2ns for you, please install" echo "them manually. You can't run scenario generator without gt-itm" echo "and sgb2ns. But it will not affect you use ns, so continue ..." else cd ./gt-itm/src if make then echo "gt-itm has been installed successfully." fi cd ../sgb2ns if make then echo "sgb2ns has been installed successfully." fi cd ../../ fi else echo "sgb lib not found. gt-itm & sgb2ns could not be installed. Continuing.." fi # Build zlib echo "============================================================" echo "* Build zlib" echo "============================================================" cd ./zlib-$ZLIBVER if ./configure --exec-prefix=../ --prefix=../ then if make then echo "Zlib has been installed successfully." else warn "Zlib make failed, but it's optional Continue ..." fi else warn "Zlib-$ZLIBVER configuration failed, but it's optional, so continuing ..." fi cd ../ # Build Tcl8.4.18 echo "============================================================" echo "* Build tcl$TCLVER" echo "============================================================" cd ./tcl$TCLVER/unix if [ -f Makefile ] ; then make distclean fi blame='Tcl is not part of the ns project. Please see www.Scriptics.com to see if they have a fix for your platform.' autoconf ./configure --enable-gcc --disable-shared --prefix=$CUR_PATH || die "tcl$TCLVER configuration failed! Exiting ..." if make then echo "tcl$TCLVER make succeeded." make install || die "tcl$TCLVER installation failed." make install-private-headers || die "tcl$TCLVER installation failed." echo "tcl$TCLVER installation succeeded." #cp ../generic/*.h ../../include else echo "tcl$TCLVER make failed! Exiting ..." echo "For problems with Tcl/Tk see http://www.scriptics.com" exit fi cd ../../ # compile and install tk echo "============================================================" echo "* Build Tk$TKVER" echo "============================================================" cd ./tk$TKVER/unix if [ -f Makefile ] ; then make distclean fi blame='Tk is not part of the ns project. Please see www.Scriptics.com to see if they have a fix for your platform.' autoconf ./configure --enable-gcc --disable-shared --disable-xft --disable-xss --prefix=$CUR_PATH || die "tk$TKVER configuration failed! Exiting ..." if make then echo "tk$TKVER build succeeded." make install || die "tk$TKVER installation failed." make install-private-headers || die "tcl$TCLVER installation failed." echo "tk$TKVER installation succeeded." else echo "tk$TKVER make failed! Exiting ..." echo "For problems with Tcl/Tk see http://www.scriptics.com" exit fi cd ../../ # # Since our configures search for tclsh in $PATH, the following # is needed. This is necessary for otcl/tclcl/ns/nam # #PATH=$CUR_PATH/tcl$TCLVER/unix:$CUR_PATH/tk$TKVER/unix:$PATH #LD_LIBRARY_PATH=$CUR_PATH/tcl$TCLVER/unix:$CUR_PATH/tk$TKVER/unix:$LD_LIBRARY_PATH # However, the above library path setting has been found to be still # fragile for systems that have multiple versions of Tcl/Tk installed # in various places, so in the below, we will force the allinone build # to use the tcl/tk version installed with allinone by passing the # --with-tcl-ver and --with-tk-ver options # Build otcl echo "============================================================" echo "* Build OTcl-$OTCLVER" echo "============================================================" cd ./otcl-$OTCLVER blame='Please check http://www.isi.edu/nsnam/ns/ns-problems.html for common problems and bug fixes.' if [ "${test_cygwin}" = "true" ]; then ./configure --x-libraries=/usr/X11R6/lib --x-includes=/usr/X11R6/include --with-tcl-ver=$TCLVER --with-tk-ver=$TKVER --disable-shlib || die "otcl-$OTCLVER configuration failed! Exiting ..."; if make then echo "otcl-$OTCLVER has been installed successfully." else echo "otcl-$OTCLVER make failed! Exiting ..." echo "See http://www.isi.edu/nsnam/ns/ns-problems.html for problems" exit fi else ./configure --with-tcl-ver=$TCLVER --with-tk-ver=$TKVER || die "otcl-$OTCLVER configuration failed! Exiting ..."; if make then echo "otcl-$OTCLVER has been installed successfully." else echo "otcl-$OTCLVER make failed! Exiting ..." echo "See http://www.isi.edu/nsnam/ns/ns-problems.html for problems" exit fi fi cd .. # Build tclcl echo "============================================================" echo "* Build Tclcl-$TCLCLVER" echo "============================================================" cd ./tclcl-$TCLCLVER if [ "${test_cygwin}" = "true" ]; then ./configure --x-libraries=/usr/X11R6/lib --x-includes=/usr/X11R6/include --with-tcl-ver=$TCLVER --with-tk-ver=$TKVER || die "tclcl-$TCLCLVER configuration failed! Exiting ..."; else ./configure --with-otcl=../otcl-$OTCLVER --with-tcl-ver=$TCLVER --with-tk-ver=$TKVER || die "tclcl-$TCLCLVER configuration failed! Exiting ..." fi if make then echo "tclcl-$TCLCLVER has been installed successfully." else echo "tclcl-$TCLCLVER make failed! Exiting ..." echo "See http://www.isi.edu/nsnam/ns/ns-problems.html for problems" exit fi cd ../ # John's hack test -f ./otcl-$OTCLVER/libotcl.a && rm ./otcl-$OTCLVER/libotcl.so echo "============================================================" echo "* Build ns-$NSVER" echo "============================================================" cd ./ns-$NSVER if [ -f Makefile ] ; then make distclean fi if [ "${test_cygwin}" = "true" ]; then ./configure --x-libraries=/usr/X11R6/lib --x-includes=/usr/X11R6/include --with-tcl-ver=$TCLVER --with-tk-ver=$TKVER || die "Ns configuration failed! Exiting ..."; else ./configure --with-otcl=../otcl-$OTCLVER --with-tclcl=../tclcl-$TCLCLVER --with-tcl-ver=$TCLVER --with-tk-ver=$TKVER || die "Ns configuration failed! Exiting ..."; fi if make then echo " Ns has been installed successfully." else echo "Ns make failed!" echo "See http://www.isi.edu/nsnam/ns/ns-problems.html for problems" exit fi cd ../ # Build nam echo "============================================================" echo "* Build nam-$NAMVER" echo "============================================================" ln -s otcl-$OTCLVER otcl ln -s tclcl-$TCLCLVER tclcl cd ./nam-$NAMVER if [ "${test_cygwin}" = "true" ]; then ./configure --x-libraries=/usr/X11R6/lib --x-includes=/usr/X11R6/include --with-tclcl=$CUR_PATH/tclcl-$TCLCLVER --with-tcl-ver=$TCLVER --with-tk-ver=$TKVER || die "Nam configuration failed! Exiting ..."; else ./configure --with-otcl=../otcl-$OTCLVER --with-tclcl=../tclcl-$TCLCLVER --with-tcl-ver=$TCLVER --with-tk-ver=$TKVER || die "Nam configuration failed! Exiting ..."; fi if make then echo "Nam has been installed successfully." elif [ "${test_darwin}" = "true" ]; then # XXX workaround for OS X nam Tcl/Tk problems echo "Nam make failed! Trying to relink..." echo "g++ -o nam tkcompat.o tkUnixInit.o xwd.o netview.o netmodel.o edge.o packet.o node.o main.o trace.o queue.o drop.o animation.o agent.o feature.o route.o transform.o paint.o state.o monitor.o anetmodel.o rng.o view.o graphview.o netgraph.o tracehook.o lan.o psview.o group.o editview.o tag.o address.o animator.o wnetmodel.o nam_stream.o enetmodel.o testview.o parser.o trafficsource.o lossmodel.o queuehandle.o gen/version.o gen/nam_tcl.o ../tcl8.5.10/unix/libtcl8.5.a ../tk8.5.10/unix/libtk8.5.a ../tcl8.5.10/unix/libtclstub8.5.a -L../tclcl-1.20 -ltclcl -L../otcl -lotcl -L/usr/lib -lz -L/usr/X11R6/lib -lXext -lX11 -lm -L. -lcorefoundation" g++ -o nam tkcompat.o tkUnixInit.o xwd.o netview.o netmodel.o edge.o packet.o node.o main.o trace.o queue.o drop.o animation.o agent.o feature.o route.o transform.o paint.o state.o monitor.o anetmodel.o rng.o view.o graphview.o netgraph.o tracehook.o lan.o psview.o group.o editview.o tag.o address.o animator.o wnetmodel.o nam_stream.o enetmodel.o testview.o parser.o trafficsource.o lossmodel.o queuehandle.o gen/version.o gen/nam_tcl.o ../tcl8.5.10/unix/libtcl8.5.a ../tk8.5.10/unix/libtk8.5.a ../tcl8.5.10/unix/libtclstub8.5.a -L../tclcl-1.20 -ltclcl -L../otcl -lotcl -L/usr/lib -lz -L/usr/X11R6/lib -lXext -lX11 -lm -L. -lcorefoundation if [ -e nam ]; then echo "Nam relinking succeeded; nam has been installed successfully." else echo "Nam make failed! You may want to tweak the above linker path if libraries are not being picked up successfuly. Continue ..." echo "See http://www.isi.edu/nsnam/ns-problems.html for problems" fi else echo "Nam make failed! Continue ..." echo "See http://www.isi.edu/nsnam/ns-problems.html for problems" fi cd ../ # Building dei80211mr cd ./dei80211mr-${DEI80211MRVER} ./configure --with-ns-allinone=${CUR_PATH} --prefix=${CUR_PATH} \ && make \ && make install cd .. # Install nam, ns, xgraph into bin if [ ! -d bin ] ; then mkdir bin fi cd bin ln -s $CUR_PATH/ns-$NSVER/ns${EXE} ns${EXE} if test -x $CUR_PATH/nam-$NAMVER/nam${EXE} then ln -s $CUR_PATH/nam-$NAMVER/nam${EXE} nam${EXE} else echo "Please compile your nam separately." fi if test -x $CUR_PATH/xgraph-$XGRAPHVER/xgraph${EXE} then ln -s $CUR_PATH/xgraph-$XGRAPHVER/xgraph${EXE} xgraph${EXE} else echo "Please compile your xgraph separately." fi if test -x $CUR_PATH/gt-itm/bin/sgb2ns${EXE} then ln -s $CUR_PATH/gt-itm/bin/sgb2ns${EXE} sgb2ns${EXE} ln -s $CUR_PATH/gt-itm/bin/sgb2hierns${EXE} sgb2hierns${EXE} ln -s $CUR_PATH/gt-itm/bin/sgb2comns${EXE} sgb2comns${EXE} ln -s $CUR_PATH/gt-itm/bin/itm${EXE} itm${EXE} ln -s $CUR_PATH/gt-itm/bin/sgb2alt${EXE} sgb2alt${EXE} ln -s $CUR_PATH/gt-itm/bin/edriver${EXE} edriver${EXE} else echo "Please compile your gt-itm & sgb2ns separately." fi echo "" echo "Ns-allinone package has been installed successfully." echo "Here are the installation places:" echo "tcl$TCLVER: $CUR_PATH/{bin,include,lib}" echo "tk$TKVER: $CUR_PATH/{bin,include,lib}" echo "otcl: $CUR_PATH/otcl-$OTCLVER" echo "tclcl: $CUR_PATH/tclcl-$TCLCLVER" echo "ns: $CUR_PATH/ns-$NSVER/ns" if [ -x $CUR_PATH/nam-$NAMVER/nam ] then echo "nam: $CUR_PATH/nam-$NAMVER/nam" fi if [ -x $CUR_PATH/xgraph-$XGRAPHVER/xgraph ] then echo "xgraph: $CUR_PATH/xgraph-$XGRAPHVER" fi if [ -x $CUR_PATH/gt-itm/bin/sgb2ns ] then echo "gt-itm: $CUR_PATH/itm, edriver, sgb2alt, sgb2ns, sgb2comns, sgb2hierns" fi echo "" echo "----------------------------------------------------------------------------------" echo "The install script will automatically add environment variable to your system,if you run \"ns\" and then system says \"command not found\", you should check your environment varible (~/.bash_profile or ~/.bash_rc)" echo "Please put $CUR_PATH/bin:$CUR_PATH/tcl$TCLVER/unix:$CUR_PATH/tk$TKVER/unix" echo "into your PATH environment; so that you'll be able to run itm/tclsh/wish/xgraph." #Add env var echo "export PATH=$PATH:$CUR_PATH/bin:$CUR_PATH/tcl$TCLVER/unix:$CUR_PATH/tk$TKVER/unix" >>~/.bash_profile echo "" echo "IMPORTANT NOTICES:" echo "" echo "(1) You MUST put $CUR_PATH/otcl-$OTCLVER, $CUR_PATH/lib, " echo " into your LD_LIBRARY_PATH environment variable." #Add env var echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CUR_PATH/otcl-$OTCLVER:$CUR_PATH/lib" >>~/.bash_profile echo " If it complains about X libraries, add path to your X libraries " echo " into LD_LIBRARY_PATH." echo " If you are using csh, you can set it like:" echo " setenv LD_LIBRARY_PATH <paths>" echo " If you are using sh, you can set it like:" echo " export LD_LIBRARY_PATH=<paths>" echo "" echo "(2) You MUST put $CUR_PATH/tcl$TCLVER/library into your TCL_LIBRARY environmental" #Add env var echo "export TCL_LIBRARY=$TCL_LIBRARY:$CUR_PATH/tcl$TCLVER/library " >>~/.bash_profile echo " variable. Otherwise ns/nam will complain during startup." echo "" echo "" echo "After these steps, you can now run the ns validation suite with" echo "cd ns-$NSVER; ./validate" echo "" echo "For trouble shooting, please first read ns problems page " echo "http://www.isi.edu/nsnam/ns/ns-problems.html. Also search the ns mailing list archive" echo "for related posts." echo "" exit 0


相關推薦

Mac os 10.9(Mavericks)安裝NS-2.35自己製作patch[修正一個錯誤]

#! /bin/sh # # Copyright (C) 2000 by USC/ISI # All rights reserved. # # Redistribution and use in source and binary forms are permitted # provided that the

結構體位元組對齊筆記(Mac OS 10.9 測試)

前言     結構體位元組對齊相關的文章網路上有很多,看了其中幾篇寫的不錯的之後,做了一點總結,僅供自己日後回憶,請網友忽略。看過眾多關於位元組對齊的博文中,寫的我認為比較好的是實驗室蘇同學(ACM大神)寫的http://c4fun.cn/blog/2014/01/11/s

VirtualBox安裝Mac OS 10.11——虛擬機安裝黑蘋果

cmd set 安裝完成 環境 config true == 時區 tail 由於需要安裝mac環境跑IOS應用,所以在虛擬機裝個黑蘋果. 一、下載虛擬機安裝包,VirtualBox是官網下的最新版: 5.0.6 for Windows hosts x86/amd64

VirtualBox安裝Mac OS 10.11——虛擬機器安裝黑蘋果

VirtualBox安裝Mac OS 10.11 ,安裝日期:2016 / 5 / 14 用虛擬機器裝黑蘋果本人也裝了不下3次了,這次為了做這個教程還特意把virtualbox和舊版的Mac OS刪了,重新再裝一遍。 所以保證能執行,不像網上其他教程都是匯出複製,還不要臉

Appium之mac OS 10.12.5+Xcode 8.3.2 配置使用

1、下載或者更新Homebrew:        homebrew官網 macOS 不可或缺的套件管理器 $ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebre

mac os 10.13下安裝配置cocoapods並在xcode使用

關閉SIP保護 10.3.4版本下macOS開啟了SIP保護,即便是root使用者也不能修改系統目錄中的檔案,所以要安裝cocoapods,需要先關閉這個服務 方法如下 1. 重啟電腦按住comm

《VMware安裝Mac OS 10.11.6》

leo cbe 權限 截圖 watermark 中文簡體 紅色 密碼 跟著 準備工作:VMware 11.1.0(虛擬化平臺)Unlocker204(破解VMware插件)El Capitan 10.11.6 Installer.cdr(Mac OS X鏡像) 百度資源:u

Mac OS 10.12安裝caffe的步驟記錄

準本工作: 1、安裝Xcode,MacOS下的編譯工作需要用到,如果沒有安裝,可以到AppStore裡進行安裝 2、Python 可以不用安裝,系統自帶了2.7版本的python 3、brew,這個是個智慧化的安裝工具,非常好用,如果沒有安裝可以用下面的方法來安裝 ruby -e "$(cu

VMware 15 安裝 MAC OS 10.13 原版(詳細圖文教程)

VMware 15 安裝 MAC OS 10.13 原版(詳細圖文教程) 生命在於折騰,之前本想裝個雙系統黑蘋果,什麼 U 盤啟動盤,四葉草引導,都配置好了,最後跪在一個動態捲上,備份格盤現在弄不了,先裝個 VMware 上跑的。 本篇文章收錄所有新手常見問題,如果不是第一次安裝

Mac OS 10.11上安裝python, pyqt

1.首先安裝homebrew,通過在終端中執行如下的命令: ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go/install)"  2.接著安裝python brew install python

VMware15安裝MACMAC OS 10.13)(OS X 10.14)原版可升級最新可解鎖macOS Unlocker3.0(OS X 10.13)

  目錄樹 1.1.2安裝環境: 1.1.5 配置環境 1.1.4 Unlocker 3.0解鎖 1.1.3所需資源: 1.1.6開始安裝 1.1.7開啟虛擬機器進入MAC安裝介面 1.1.8 macOS 10.13 安裝允許任何來源沒了怎

virtualbox虛擬機器安裝Mac OS 10.6.x全過程

注意:                 要先檢查你的機器是否符合安裝虛擬Mac OS的條件,下載cpu_zs.zip,我就不給下載地址了,很好找                                                             

在MyEclipse CI 2018.9.0 安裝 SVN 1.10.13-1.9.x

相關連結: 開啟MyEclipse CI 2018.9.0,選擇Help,點選Install from Site: 點選Add: 點選Archive(Local為選擇資料夾,Archive為選擇檔案): 選擇已下載的SV

2018VMware虛擬機器安裝Mac OS 10.12.1

說明:該篇部落格是博主一字一碼編寫的,實屬不易,請尊重原創,謝謝大家! 一.下載安裝中所需的映象檔案以及補丁工具 Mac OS 10.12.1 Sierra (16B2555) 懶人版(下載地址):https://pan.baidu.com/s/1y7XCqsWuxrLtmBY

蘋果系統 Mac OS X Yosemite 正式版安裝程式映象下載 (10.10 新功能特性總結)

轉自:http://www.iplaysoft.com/osx-yosemite.html 最新版的 Mac OS X Yosemite 系統採用了扁平化的設計風格,增加了大量的新特性,其中蘋果重點針對跨裝置跨平臺無縫切換的需求,提供了全新的 HandOff 、iC

虛擬機器VirtualBox安裝MAC OS 10.12圖文教程

注:本文來自轉載,原文連結https://www.cnblogs.com/liming2017/p/7566953.html,只不過加了一個紫色注意部分,我自己在解壓時候操作不對,導致安裝失敗,所以發個部落格VirtualBox虛擬機器安裝Mac OS 10.12圖文教程的準

vmware workstation 12 pro 安裝Mac OS 10.12.4系統

6、開啟虛擬機器,新建 虛擬機器點選下一步,選中系統E:\BaiduYunDownload\macOS S 10.12.4(16E195)(MD5-44E6A3EC38BB85CA49A68382D10FB264).cdr

Mac OS 10.13 安裝telnet

Mac OS 10.13把telnet刪掉了,如果要是有telnet,需要安裝,執行如下指令進行安裝 brew install telnet  如安裝報錯,需先執行如下指令,再執行:brew install telnet /usr/bin/ruby -e "$(curl

mac os 10.10.4 上安裝mysql5.6.26

在 Mac 系統上, 安裝 MySQL Server 一般是用 DMG 包在圖形化介面下按提示安裝, 此外 MySQL 還提供了 Compressed TAR Archive 二進位制包安裝方式, 即免安裝解壓執行版, 相比 DMG 包, 免安裝版過程更為簡潔, 純命令列

win10下使用VMware12安裝MAC OS 10.12遇到的問題,無MAC OS安裝選項,無法安裝VMwareTools等

參考教程為:http://bbs.pcbeta.com/forum.php?mod=viewthread&tid=1726460&page=21#pid46861638 個人補充的地方:虛擬機器預設使用虛擬記憶體功能(即使用硬碟代替部分記憶體),導致宿主機和