如何使用烘焙安装和构建NS-3

时间:2016-09-03 13:40:38

标签: python c++ g++ cygwin cygpath

我试图通过在Windows 7上的Cygwin上键入以下命令来使用bake下载,构建和测试NS-3:

$ cd
$ mkdir workspace
$ cd workspace
$ hg clone http://code.nsnam.org/bake

然后我将目录更改为bake目录并输入:

$ export BAKE_HOME=`pwd`
$ export PATH=$PATH:$BAKE_HOME:$BAKE_HOME/build/bin
$ export PYTHONPATH=$PYTHONPATH:$BAKE_HOME:$BAKE_HOME/build/lib

然后:

./bake.py configure -e ns-3.25

屏幕上没有显示任何内容,然后输入:

./bake.py check

我在屏幕上显示以下内容:

> Python - OK
> GNU C++ compiler - OK
> Mercurial - OK
> CVS - OK
> GIT - OK
> Bazaar - OK
> Tar tool - OK
> Unzip tool - OK
> Unrar tool - is missing
> 7z data compression utility - OK
> XZ data compression utility - OK
> Make - OK
> cMake - OK
> patch tool - OK
> autoreconf tool - OK


 > Path searched for tools: /usr/local/bin /usr/bin /cygdrive/d/app/user/product/11.2.0/DB_HOME/bin /cygdrive/d/app/user/product/11.2.0/dbhome_1/bin /cygdrive/c/Windows/system32 /cygdrive/c/Windows /cygdrive/c/Windows/System32/Wbem /cygdrive/c/Windows/System32/WindowsPowerShell/v1.0 /cygdrive/c/Program Files (x86)/Microsoft SQL Server/100/Tools/Binn /cygdrive/c/Program Files (x86)/Microsoft SQL Server/100/DTS/Binn /cygdrive/c/Program Files (x86)/Skype/Phone /cygdrive/c/Users/user/AppData/Local/Programs/MiKTeX 2.9/miktex/bin/x64 /usr/lib/lapack /home/user-PC/ns-3-allinone-74b94ecd0120/ns-3-dev/bake/workspace/bake /home/user-PC/ns-3-allinone-74b94ecd0120/ns-3-dev/bake/workspace/bake/build/bin bin  /home/user-PC/ns-3-allinone-74b94ecd0120/ns-3-dev/bake/workspace/bake /home/user-PC/ns-3-allinone-74b94ecd0120/ns-3-dev/bake/workspace/bake/build/lib

然后我输入了命令提示符:

$ ./bake.py download

为了完成这个过程,我必须得到以下信息:

>> Downloading gccxml-ns3 (target directory:gccxml) - OK
>> Searching for system dependency python-dev - OK
>> Searching for system dependency pygraphviz - OK
>> Searching for system dependency pygoocanvas - OK
>> Searching for system dependency setuptools - OK
>> Searching for system dependency g++ - OK
>> Searching for system dependency qt4 - OK
>> Downloading pygccxml - OK
>> Downloading netanim-3.107 - OK
>> Downloading pybindgen-0.17.0.post49+ng0e4e3bc (target directory:pybindgen) - OK
>> Downloading ns-3.25 - OK

但是我遇到了以下问题,我不知道如何获得所需的依赖项:

 $ ./bake.py download
 >> Searching for system dependency qt4 - OK
 >> Searching for system dependency g++ - OK
 >> Searching for system dependency setuptools - Problem
 > Problem: Optional dependency, module "setuptools" not available
   This may reduce the  functionality of the final build.
   However, bake will continue since "setuptools" is not an essential dependency.
   For more information call bake with -v or -vvv, for full verbose mode.

 >> Searching for system dependency pygoocanvas - Problem
 > Problem: Optional dependency, module "pygoocanvas" not available
   This may reduce the  functionality of the final build.
   However, bake will continue since "pygoocanvas" is not an essential dependency.
   For more information call bake with -v or -vvv, for full verbose mode.

 >> Searching for system dependency pygraphviz - Problem
 > Problem: Optional dependency, module "pygraphviz" not available
   This may reduce the  functionality of the final build.
   However, bake will continue since "pygraphviz" is not an essential dependency.
   For more information call bake with -v or -vvv, for full verbose mode.

 >> Searching for system dependency python-dev - OK
 >> Downloading gccxml-ns3 (target directory:gccxml) - Problem
 > Problem: Optional dependency, module "gccxml-ns3" failed
   This may reduce the  functionality of the final build.
   However, bake will continue since "gccxml-ns3" is not an essential dependency.
   For more information call bake with -v or -vvv, for full verbose mode.

 >> Downloading pygccxml - Problem
 > Problem: Optional dependency, module "pygccxml" failed
   This may reduce the  functionality of the final build.
   However, bake will continue since "pygccxml" is not an essential dependency.
   For more information call bake with -v or -vvv, for full verbose mode.

 >> Downloading netanim-3.107 - Problem
 > Problem: Optional dependency, module "netanim-3.107" failed
   This may reduce the  functionality of the final build.
   However, bake will continue since "netanim-3.107" is not an essential dependency.
   For more information call bake with -v or -vvv, for full verbose mode.

 >> Downloading pybindgen-0.17.0.post49+ng0e4e3bc (target directory:pybindgen) - Problem
 > Problem: Optional dependency, module "pybindgen-0.17.0.post49+ng0e4e3bc" failed
   This may reduce the  functionality of the final build.
   However, bake will continue since "pybindgen-0.17.0.post49+ng0e4e3bc" is not an essential dependency.
   For more information call bake with -v or -vvv, for full verbose mode.

 >> Downloading ns-3.25 - Problem
 > Error:  Critical dependency, module "ns-3.25" failed
   For more information call Bake with --debug and/or -v, -vvv, for full verbose mode (bake --help)

1 个答案:

答案 0 :(得分:0)

您似乎缺少“Unrar工具”。我没有cygwin在这里测试,但你试试:

wget http://www.rarlab.com/rar/unrarsrc-5.1.7.tar.gz
tar -xzvf unrarsrc-5.1.7.tar.gz
cd unrar
make

然后再次运行bake download。

来源:https://wjianz.wordpress.com/2014/09/28/howto-extract-rar-files-on-cygwin/