, когда я использую NS2 через терминал, я продолжаю получать сообщение об ошибке сегмента (дамп ядра).
g_0zek@g-0zeK-pc:~$ ns lab1.tcl
g_0zek@g-0zeK-pc:~$ nam lab1.nam
Segmentation fault (core dumped)
несмотря на то, что xgraph
работает нормально
код в tcl
кажется нормальным, так как он был предоставлен университетом, и один мой друг отлично справился с ним.
Есть идеи?
Я думаю, что в пакете Ubuntu 14.04 должна быть ошибка. Вероятно, лучшая вещь сделать установить из источника, пока специалист по обслуживанию пакета не решает проблему. Я шел вперед , сообщил об ошибке .
Удостоверьтесь, что Вы установили NS правильно. Как? восток загружает один файл TCl, который не выполняет nam. Если Вы не знаете, что nam только для изображения алгоритма графически. После того, как загрузка и выполненный файл TCL (Поскольку я сказал, загружают бесплатно nam, или по крайней мере Ваш сам отключают ту строку или делают их как комментарий к Вашему файлу TCL.
существуют некоторые проблемы при выполнении nam на 14,04. Необходимо загрузить nam от здесь и скопировать извлеченный файл в в/usr/local/bin. Но я просто тестирую это на человечность 32 бита 14.04.
Между прочим, если Вы плохо знакомы с NS2. Я должен сказать Вам его не необходимый для следования методу erlang NS2. Если Вы находитесь достаточно не в horry, я рекомендую Вам посмотреть на здесь: http://www.linuxquestions.org/questions/linux-newbie-8/ns2-version-2-34-is-too-old-wpan-802-15-4-a-4175499373/
Не устанавливайте через терминал.
Загрузите ns-allinone-2.35.tar.gz файл с https://sourceforge.net/projects/nsnam/
Установите следующий dependicies
sudo apt-get install tcl8.5-dev tk8.5-dev gcc-4.4 g++-4.4 build-essential autoconf automake perl xgraph libxt-dev libx11-dev libxmu-dev.
Извлечение ns-allinone-2.35.tar.gz
открытый ns-allinone-2.35/ns-2.35/linkstate/ls.h
файл.
перейдите к номеру строки 137.
изменение
"void eraseAll() {erase(baseMap::begin(), baseMap::end());}"
кому:
"void eraseAll() { this->erase(baseMap::begin(), baseMap::end()); }"
затем goto ns-allinone-2.35 каталог
cd home/isysway/ns-allinone-2.35/
./install
это занимает время
придите к корневому каталогу
isysway@isysway:~$ sudo gedit .bashrc
текстовый файл откроется
перейдите к концу файла
добавьте следующую строку
PATH=$PATH:/home/isysway/ns-allinone-2.35/bin:/home/isysway/ns-allinone-2.35/tcl8.5.10/unix:/home/isysway/ns-allinone-2.35/tk8.5.10/unix
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/isysway/ns-allinone-2.35/otcl-1.14/lib:/home/isysway/ns-allinone-2.35/lib
TCL_LIBRARY=$TCL_LIBRARY:/home/isysway/ns-allinone-2.35/tcl8.5.10/library
export PATH
export LD_LIBRARY_PATH
export TCL_LIBRARY
примечание: мое имя пользователя является "isysway", Вы заменяете его Вашим
isysway@isysway:~$source .bashrc
затем
isysway@isysway:~$ns
%
если символ по модулю прибывает, Вы сделали это.