Hello Mr. knudfl,
I am a new user at the Linux and I would like to work at the same issue that shojaru worked on post #4. I want to install ns-2.28 in order to work on the IEEE802.11e MAC layer and the only source I found is written in ns-2.28 so as I understand after a week of testing and searching that I have to install the gcc-3.4 version but I got lost, the gcc compiler doesn't work in each try. I am working on Ubuntu 11.10, So I would like first to know exactly what are the required packages to install it and if you can give me the exact steps which I should do to install it correctly. I try the following command but I got error as you suggest to Zahraa85 gcc / g++ : sudo apt-get install gcc-3.4 Use this export line : export CC=gcc-3.4 CXX=g++-3.4 #sudo apt-get install gcc-3.4 Reading package lists... Done Building dependency tree Reading state information... Done E: Unable to locate package gcc-3.4 E: Couldn't find any package by regex 'gcc-3.4' Do I need to install all those packages to make it working from this link. http://packages.ubuntu.com/source/hardy/gcc-3.4 I really need your help, Thanks in advance. |
Post # 61, @rose24 : Please read post # 60 ...
" There are new instructions ... for Ubuntu .." http://www.linuxquestions.org/questi...4-a-842773/#15 > post # 15. 1) tar xvf ns-allinone-2.28.tar.gz 2) patch -p0 < ns228-gcc40.patch 3) patch -p0 < ns-2.28-gcc410.patch <Enter> <Enter> <Enter> 4) export CC=gcc41 CXX=g++41 5) cd ns-allinone-2.28/ 6) ./install ......... So that's not "gcc-3.4", but gcc41 / g++41. gcc41-compat for Ubuntu 11.10 : gcc41-compat-4.1.2.ubu1110_i386.deb https://docs.google.com/open?id=0B7S...NjZmMHkyaE9Odw g++-compat : g++41-compat-4.1.2_i386.deb https://docs.google.com/open?id=0B7S...hjMjljN2M2MGU4 Install : sudo dpkg -i gcc41-compat-4.1.2.ubu1110_i386.deb g++41-compat-4.1.2_i386.deb .. Then reboot, and the compilers can be used. . |
@knudfl : Thanks for your quick reply, I really appreciate it
actually, I downgrade my system to 10.10 since I think that the problem with the gcc34 but I see post 15 in the link you suggest and I follow the same instructions. I got the following error when I make install, So what should I do ?? ./install ============================================================ * Testing for Cygwin environment ============================================================ Cygwin not detected, proceeding with regular install. ============================================================ * Build XGraph-12.1 ============================================================ loading cache ./config.cache checking for a BSD compatible install... (cached) /usr/bin/install -c checking whether build environment is sane... yes checking whether make sets ${MAKE}... (cached) yes checking for working aclocal... found checking for working autoconf... found checking for working automake... found checking for working autoheader... found checking for working makeinfo... missing checking if malloc debugging is wanted... no checking for gcc... (cached) gcc-3.4 checking whether the C compiler (gcc-3.4 ) works... yes checking whether the C compiler (gcc-3.4 ) is a cross-compiler... no checking whether we are using GNU C... (cached) yes checking whether gcc-3.4 accepts -g... (cached) yes checking how to run the C preprocessor... (cached) gcc-3.4 -E checking for X... (cached) no checking for float.h... (cached) yes checking for limits.h... (cached) yes checking for stdlib.h... (cached) yes checking for string.h... (cached) yes checking for strings.h... (cached) yes checking for unistd.h... (cached) yes checking for strcasecmp... (cached) yes creating ./config.status creating Makefile creating autoconf.h autoconf.h is unchanged gcc-3.4 -DHAVE_CONFIG_H -I. -I. -I. -g -c dialog.c dialog.c: In function `make_msg_box': dialog.c:780: warning: passing arg 2 of `getline' from incompatible pointer type dialog.c:780: error: too few arguments to function `getline' dialog.c: In function `getline': dialog.c:899: error: argument "lptr" doesn't match prototype /usr/include/stdio.h:673: error: prototype declaration dialog.c:899: error: number of arguments doesn't match prototype /usr/include/stdio.h:673: error: prototype declaration make: *** [dialog.o] Error 1 Can not create xgraph; But xgraph is an optional package, continuing... ============================================================ * Build CWeb ============================================================ Making cweb gcc -g -c -o ctangle.o ctangle.c ctangle.w:75: warning: conflicting types for built-in function ‘strlen’ gcc -g -DCWEBINPUTS=\"/usr/local/lib/cweb\" -c common.c common.w:1409: warning: conflicting types for built-in function ‘strlen’ common.w: In function ‘fatal’: common.w:1176: warning: format not a string literal and no format arguments gcc -g -o ctangle ctangle.o common.o gcc -g -c -o cweave.o cweave.c cweave.w:79: warning: conflicting types for built-in function ‘strlen’ cweave.w: In function ‘print_cat’: cweave.w:1739: warning: format not a string literal and no format arguments gcc -g -o cweave cweave.o common.o ln: creating symbolic link `cweave': File exists ln: creating symbolic link `ctangle': File exists ============================================================ * Build Stanford GraphBase ============================================================ Making sgb gcc41 -g -I/usr/local/sgb/include test_io.c gb_io.o -o test_io make: gcc41: Command not found make: *** [test_io] Error 127 Unable to create sgb library, but it's optional, so continuing... ============================================================ * Build GT-ITM ============================================================ sgb lib not found. gt-itm & sgb2ns could not be installed. Continuing.. ============================================================ * Build zlib ============================================================ Building static library libz.a version 1.1.4 with gcc41. Checking for unistd.h... No. Checking for errno.h... No. Checking for mmap support... No. make: Nothing to be done for `all'. Zlib has been installed successfully. ============================================================ * Build tcl8.4.5 ============================================================ loading cache ./config.cache checking whether to use symlinks for manpages... no checking compression for manpages... no checking for gcc... gcc41 checking whether the C compiler (gcc41 ) works... no configure: error: installation or configuration problem: C compiler cannot create executables. tcl8.3.2 configuration failed! Exiting ... Tcl is not part of the ns project. Please see www.Scriptics.com to see if they have a fix for your platform. |
Post # 63 : Did you change OS to Ubuntu 10.10 ? ?
Ubuntu 10.10 is unsupported, but makes the perfect ns2 result ! ( None of the other versions can do that.) Ubuntu 10.10 : Please uninstall the Ubuntu 11.10 "gcc41-compat" compiler, and install one for Ubuntu 10.10 : gcc41-compat-4.1.2_i386.deb https://docs.google.com/open?id=0B7S...RjNjJhOTZjNjI2 Note : The g++41-compat part is the same for all Ubuntu 10.xx .. 12.04 : "g++41-compat-4.1.2_i386.deb". . |
Yes, I install Ubuntu 10.10 But in a new virtual machine which will not affect my work.
I install the gcc41-compat-4.1.2_i386.deb package and remove that one related to Ubuntu 11.10 besides the gcc34 and g++34 since I will not use them as I understand. However, I still have the same error that I post it in my previous comment which means that the gcc41 doesn't work :(, I followed all the steps in post #62 one by one. So any suggestions?? One more thing I don't understand, the ns2 tries to build tcl8.4.5 and the error I got related to tcl8.3.2 which makes me confused !! Is there something wrong ? |
I tried to make sure that the gcc that is running is the default one from this link:
http://ubuntuguide.net/how-to-instal...ntu-10-0410-10 when I type gcc --version before It was gcc (Ubuntu/Linaro 4.4.4-14ubuntu5.1) 4.4.5 But after following the instructions in the above link it is now gcc (GCC) 4.1.3 20080704 (prerelease) (Ubuntu 4.1.2-29ubuntu1). And I use the hello.c in order to compile it and check that it is working and I don't get any errors! But when I run the ./install command I got this error: ============================================================ * Build tcl8.4.5 ============================================================ loading cache ./config.cache checking whether to use symlinks for manpages... no checking compression for manpages... no checking for gcc... gcc41 checking whether the C compiler (gcc41 ) works... no configure: error: installation or configuration problem: C compiler cannot create executables. tcl8.3.2 configuration failed! Exiting ... Does the ns2.28 works on gcc41? or I need to install another version ?? Sorry for posting many questions, but this problem bothering me a lot. |
# 66
Which OS are you using now ? ? Please read this again ( post # 15 ) : http://www.linuxquestions.org/questi...4-a-842773/#15 . |
Now, I am using Ubuntu release 10.10
I read post #15 carefully and I follow all the instructions but still having the same error. But I want to ask you about the g++, you told me that is installed by default with 10.X .. 12.X However, when I run the command g++ --version, I notice that it used g++ (Ubuntu/Linaro 4.4.4-14ubuntu5.1) 4.4.5. So I installed it from this link g++-compat : g++41-compat-4.1.2_i386.deb https://docs.google.com/open?id=0B7S...hjMjljN2M2MGU4 I use this command to check if it installed:#ls /usr/bin/g++* and I got /usr/bin/g++ /usr/bin/g++-4.4 But when I use the command # dpkg -l | grep g++ , I found it in the listed packages: ii g++ 4:4.4.4-1ubuntu2 The GNU C++ compiler ii g++-4.4 4.4.4-14ubuntu5.1 The GNU C++ compiler ii g++41-compat 4.1.2 No description Does this mean that it is having a problem with g++ not the gcc since g++ is a part of GNU and cause the gcc compiler error??? |
#67
Finally the error related to gcc solved :) But I am stuck in a new error which is the following: ============================================================ * Build Tclcl-1.16 ============================================================ No .configure file found in current directory Continuing with default options... checking build system type... i686-pc-linux-gnu checking host system type... i686-pc-linux-gnu checking target system type... i686-pc-linux-gnu checking for gcc... gcc checking for C compiler default output... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ANSI C... none needed checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking how to run the C preprocessor... gcc -E checking for egrep... grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for string.h... (cached) yes checking for main in -lXbsd... no checking for socket in -lsocket... no checking for gethostbyname in -lnsl... yes checking for dcgettext in -lintl... no checking for getnodebyname in -ldnet_stub... no checking that g++ can handle -O2... no checking standard STL is available... no checking for ranlib... ranlib checking for snprintf... yes checking for ANSI C header files... (cached) yes checking for strtoq... yes checking for strtoll... yes checking for long... yes checking size of long... 4 checking for __int64_t... no checking for long long... yes checking for int64_t... yes checking which kind of 64-bit int to use... int64_t checking for tcl.h... -I../include checking for libtcl8.4... -L../lib -ltcl8.4 checking for init.tcl... ../lib/tcl8.4 checking for http.tcl... ../lib/tcl8.4/http2.4 checking Tcl http.tcl library... yes checking for tclsh8.4.5... no checking for tclsh8.4... ../bin/tclsh8.4 checking for tk.h... -I../include checking for libtk8.4... -L../lib -ltk8.4 checking for tk.tcl... ../lib/tk8.4 checking for otcl.h... -I../otcl-1.9 checking for libotcl1.9... -L../otcl-1.9 -lotcl checking for X11 header files checking for X11 library archive checking for XOpenDisplay in -lX11... yes checking for XShmAttach in -lXext... yes No explicit static compilation flag; setting V_STATIC to "" checking for dlopen in -ldl... yes checking for a BSD-compatible install... /usr/bin/install -c configure: creating ./config.status config.status: creating Makefile g++ -c -DNO_TK -DNDEBUG -DUSE_SHM -DHAVE_LIBOTCL1_9 -DHAVE_OTCL_H -DHAVE_LIBTK8_4 -DHAVE_TK_H -DHAVE_LIBTCL8_4 -DHAVE_TCL_H -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_STRING_H=1 -DHAVE_SNPRINTF=1 -DSTDC_HEADERS=1 -DHAVE_STRTOQ=1 -DHAVE_STRTOLL=1 -DSIZEOF_LONG=4 -DHAVE_INT64=1 -DHAVE_TCL_H=1 -DHAVE_LIBTCL8_4=1 -DHAVE_TK_H=1 -DHAVE_LIBTK8_4=1 -DHAVE_OTCL_H=1 -DHAVE_LIBOTCL1_9=1 -I. -I/home/heba/Desktop/ns-allinone-2.28/otcl-1.9 -I/home/heba/Desktop/ns-allinone-2.28/include -I/home/heba/Desktop/ns-allinone-2.28/include -o Tcl.o Tcl.cc Tcl.cc: In member function ‘void Tcl::eval(char*)’: Tcl.cc:180: warning: deprecated conversion from string constant to ‘char*’ Tcl.cc: In member function ‘int TclObject::traceVar(const char*, TclObject*)’: Tcl.cc:419: warning: deprecated conversion from string constant to ‘char*’ Tcl.cc: In static member function ‘static int TclClass::create_shadow(void*, Tcl_Interp*, int, const char**)’: Tcl.cc:507: warning: deprecated conversion from string constant to ‘char*’ Tcl.cc:509: warning: deprecated conversion from string constant to ‘char*’ Tcl.cc: In static member function ‘static int TclClass::dispatch_instvar(void*, Tcl_Interp*, int, const char**)’: Tcl.cc:564: error: expected primary-expression before ‘char’ Tcl.cc:564: error: expected ‘;’ before ‘char’ Tcl.cc:565: error: ‘p’ was not declared in this scope Tcl.cc:569: warning: deprecated conversion from string constant to ‘char*’ Tcl.cc: In member function ‘virtual void TclClass::bind()’: Tcl.cc:601: warning: deprecated conversion from string constant to ‘char*’ Tcl.cc:603: warning: deprecated conversion from string constant to ‘char*’ make: *** [Tcl.o] Error 1 tclcl-1.16 make failed! Exiting ... See http://www.isi.edu/nsnam/ns/ns-problems.html for problems I tried the suggested solution in this link http://ramakrishnamundugar.blogspot....ulator-v2.html which is to change the Tcl.cc - char *p =strchr(localName, '('); to + char *p =const_cast<char*>( strchr(localName, '(')); But it didn't solve the problem. Any suggestions regarding this error type??? |
# 68
Please try the 'which' command : which gcc41 And : which g++41 gcc version 4.4.4 is not supposed to work with ns-allinone-2.28. Please make sure that the right gcc41-compat is installed. Should be gcc41-compat-4.1.2_i386.deb, not gcc41-compat-4.1.2.ubu1110_i386.deb . |
#70
I try those command and I don't get anything! I'm sure that the gcc is successfully installed because I run a hello.cc script and I don't get any errors. Also I manage to make it the default one. Now my problem is with the g++, I installed and compiled the "g++41-compat-4.1.2_i386.deb" since it was not installed. However when I run the ls /usr/bin/g++* I got the following /usr/bin/g++ /usr/bin/g++-4.4 which means that the g++-4.1 is not installe and when I run the ns2.28 I got the following error: ============================================================ * Build ns-2.28 ============================================================ No .configure file found in current directory Continuing with default options... checking build system type... i686-pc-linux-gnu checking host system type... i686-pc-linux-gnu checking target system type... i686-pc-linux-gnu checking for gcc... gcc checking for C compiler default output... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ANSI C... none needed checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking how to run the C preprocessor... gcc -E checking for egrep... grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for string.h... (cached) yes checking for main in -lXbsd... no checking for socket in -lsocket... no checking for gethostbyname in -lnsl... yes checking for dcgettext in -lintl... no checking for getnodebyname in -ldnet_stub... no checking that g++ can handle -O2... no checking if C++ libraries work without any namespace... no checking if C++ libraries work with namespace std... yes checking if STL works without any namespace... no checking if STL works with namespace std... yes checking should use STL... yes checking for tcl.h... -I../include checking for libtcl8.4... -L../lib -ltcl8.4 checking for init.tcl... ../lib/tcl8.4 checking for tclsh8.4.5... no checking for tclsh8.4... ../bin/tclsh8.4 checking for tk.h... -I../include checking for libtk8.4... -L../lib -ltk8.4 checking for tk.tcl... ../lib/tk8.4 checking for otcl.h... -I../otcl-1.9 checking for libotcl1.9... -L../otcl-1.9 -lotcl checking for tclcl.h... -I../tclcl-1.16 checking for libtclcl... -L../tclcl-1.16 -ltclcl checking for tcl2c++... ../tclcl-1.16 checking for X11 header files checking for X11 library archive checking for XOpenDisplay in -lX11... yes checking for XShmAttach in -lXext... yes checking for libtcldbg... no checking dmalloc... not requested with --with-dmalloc checking for perl... /usr/bin checking for ANSI C header files... (cached) yes checking arpa/inet.h usability... yes checking arpa/inet.h presence... yes checking for arpa/inet.h... yes checking fenv.h usability... yes checking fenv.h presence... yes checking for fenv.h... yes checking netinet/in.h usability... yes checking netinet/in.h presence... yes checking for netinet/in.h... yes checking for string.h... (cached) yes checking for strings.h... (cached) yes checking time.h usability... yes checking time.h presence... yes checking for time.h... yes checking for unistd.h... (cached) yes checking net/ethernet.h usability... yes checking net/ethernet.h presence... yes checking for net/ethernet.h... yes checking for main in -lm... yes checking for bcopy... yes checking for bzero... yes checking for fesetprecision... no checking for feenableexcept... yes checking for getrusage... yes checking for sbrk... yes checking for snprintf... yes checking return type of random... long checking for int8_t... yes checking for int16_t... yes checking for int32_t... yes checking for u_int8_t... yes checking for u_int16_t... yes checking for u_int32_t... yes checking for u_char... yes checking for u_int... yes checking for strtoq... yes checking for strtoll... yes checking for long... yes checking size of long... 4 checking for __int64_t... no checking for long long... yes checking for int64_t... yes checking which kind of 64-bit int to use... int64_t checking for struct ether_header... found checking for struct ether_addr... found checking for addr2ascii... no checking for Linux compliant tcphdr... found checking for BSD compliant tcphdr... not found checking for socklen_t... yes checking for main in -lpcap... no checking to make nse... no Explicitly disabling static compilation checking for dlopen in -ldl... yes checking for a BSD-compatible install... /usr/bin/install -c configure: creating ./config.status config.status: creating Makefile config.status: creating tcl/lib/ns-autoconf.tcl config.status: creating indep-utils/webtrace-conv/ucb/Makefile config.status: creating indep-utils/webtrace-conv/dec/Makefile config.status: creating indep-utils/webtrace-conv/nlanr/Makefile config.status: creating indep-utils/webtrace-conv/epa/Makefile config.status: creating indep-utils/cmu-scen-gen/setdest/Makefile config.status: creating autoconf.h g++-41 -c -DTCP_DELAY_BIND_ALL -DNO_TK -DTCLCL_CLASSINSTVAR -DNDEBUG -DLINUX_TCP_HEADER -DUSE_SHM -DHAVE_LIBTCLCL -DHAVE_TCLCL_H -DHAVE_LIBOTCL1_9 -DHAVE_OTCL_H -DHAVE_LIBTK8_4 -DHAVE_TK_H -DHAVE_LIBTCL8_4 -DHAVE_TCL_H -DHAVE_CONFIG_H -DNS_DIFFUSION -DSMAC_NO_SYNC -DCPP_NAMESPACE=std -DUSE_SINGLE_ADDRESS_SPACE -Drng_test -I. -I/home/heba/Desktop/ns-allinone-2.28/tclcl-1.16 -I/home/heba/Desktop/ns-allinone-2.28/otcl-1.9 -I/home/heba/Desktop/ns-allinone-2.28/include -I/home/heba/Desktop/ns-allinone-2.28/include -I/usr/include/pcap -I./tcp -I./sctp -I./common -I./link -I./queue -I./adc -I./apps -I./mac -I./mobile -I./trace -I./routing -I./tools -I./classifier -I./mcast -I./diffusion3/lib/main -I./diffusion3/lib -I./diffusion3/lib/nr -I./diffusion3/ns -I./diffusion3/filter_core -I./asim/ -I./qs -I./diffserv -I./wpan -o tools/random.o tools/random.cc make: g++-41: Command not found make: *** [tools/random.o] Error 127 Ns make failed! See http://www.isi.edu/nsnam/ns/ns-problems.html for problems please help me solving the g++ error?? |
# 71
sudo apt-get remove gcc41-compat sudo dpkg -i gcc41-compat-4.1.2_i386.deb g++41-compat-4.1.2_i386.deb ... Then reboot. Else no /usr/gcc41/bin/:gcc41:g++41 in the PATH. ! gcc41 and g++41 are not in /usr/bin/ ! gcc41-compat https://docs.google.com/open?id=0B7S...RjNjJhOTZjNjI2 g++41-compat https://docs.google.com/open?id=0B7S...hjMjljN2M2MGU4 . |
Finally I managed to install the gcc4.1/g++4.1 and the ns2.28 successfully.
Thanks for your help, I really appreciate it :) |
help regarding ns-2.31 validation test
Hello everyone,
I have installed Ns-2.31 and CRCN patch on ubuntu 16.10 and then try to validate the tests then following errors occurred validate overall report: some tests failed: ./test-all-srm ./test-all-diffusion3 ./test-all-smac ./test-all-smac-multihop ./test-all-hier-routing ./test-all-algo-routing ./test-all-mcast ./test-all-vc ./test-all-session ./test-all-mixmode ./test-all-webcache ./test-all-mcache ./test-all-plm ./test-all-wireless-shadowing ./test-all-wireless-lan-aodv ./test-all-wireless-tdma ./test-all-wireless-gridkeeper ./test-all-wireless-diffusion ./test-all-wireless-lan-newnode ./test-all-satellite ./test-all-WLtutorial ./test-all-tagged-trace ./test-all-wpan ./test-all-energy to re-run a specific test, cd tcl/test; ./test-all-TEST-NAME Notice that some tests in webcache will fail on freebsd when -O is turned on. This is due to some event reordering, which will disappear when -g is turned on. If anyone knows its solution then kindly let me know about it. i shall be thankful for your support in this regard. Thank you in advance |
All times are GMT -5. The time now is 06:58 AM. |