I am trying to download, build and test NS-3 using bake by typing the following commands on Cygwin on windows 7:
$ cd
$ mkdir workspace
$ cd workspace
$ hg clone http://code.nsnam.org/bake
Then I changed the directory to bake directory and typed:
$ export BAKE_HOME=`pwd`
$ export PATH=$PATH:$BAKE_HOME:$BAKE_HOME/build/bin
$ export PYTHONPATH=$PYTHONPATH:$BAKE_HOME:$BAKE_HOME/build/lib
Then :
./bake.py configure -e ns-3.25
I got nothing displayed on the screen and then typed:
./bake.py check
I got the following displayed on the screen:
> 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
Then I typed on the command prompot:
$ ./bake.py download
I have to get the following in order to complete this process:
>> 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
But I got the following problems and I do not have an idea how to get the needed dependencies:
$ ./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)
It seems you are missing "Unrar tool". I don't have cygwin to test here, but you migth try:
wget http://www.rarlab.com/rar/unrarsrc-5.1.7.tar.gz
tar -xzvf unrarsrc-5.1.7.tar.gz
cd unrar
make
and then run bake download again.
Source: https://wjianz.wordpress.com/2014/09/28/howto-extract-rar-files-on-cygwin/