Ошибка сегментации (дамп ядра) в ubuntu 14.04 [закрыто]

, когда я использую NS2 через терминал, я продолжаю получать сообщение об ошибке сегмента (дамп ядра).

g_0zek@g-0zeK-pc:~$ ns lab1.tcl
g_0zek@g-0zeK-pc:~$ nam lab1.nam
Segmentation fault (core dumped)

несмотря на то, что xgraph работает нормально

код в tcl кажется нормальным, так как он был предоставлен университетом, и один мой друг отлично справился с ним. Есть идеи?

6
задан 8 April 2016 в 02:29

3 ответа

Я думаю, что в пакете Ubuntu 14.04 должна быть ошибка. Вероятно, лучшая вещь сделать установить из источника, пока специалист по обслуживанию пакета не решает проблему. Я шел вперед , сообщил об ошибке .

0
ответ дан 23 November 2019 в 07:39

Удостоверьтесь, что Вы установили 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/

1
ответ дан 23 November 2019 в 07:39

Не устанавливайте через терминал.

Загрузите 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

%

если символ по модулю прибывает, Вы сделали это.

7
ответ дан 23 November 2019 в 07:39

Другие вопросы по тегам:

Похожие вопросы: