Build error on ns-3-dev for 5G-LENA NR module

412 views
Skip to first unread message

Kuan-Lin, Liu

unread,
May 16, 2022, 2:37:29 PM5/16/22
to ns-3-users
Hello, everyone,
environmment : Ubuntu 20.04.

I have downloaded ns-3-dev and put 5G-LENA NR module into /ns-3-dev/contrib, when running ./ns3, the following error showed:
ERROR1.jpgERROR2.jpg
1. void __static_initialization_and_destruction_0

[  4%] Building CXX object contrib/nr/CMakeFiles/libnr-obj.dir/model/nr-eesm-t1.cc.o

/home/liu/ns-3-dev/contrib/nr/model/nr-eesm-t1.cc: In function ‘void __static_initialization_and_destruction_0(int, int)’:

/home/liu/ns-3-dev/contrib/nr/model/nr-eesm-t1.cc:8196:1: note: variable tracking size limit exceeded with ‘-fvar-tracking-assignments’, retrying without

 8196 | } // namespace ns3

      | ^

[  4%] Building CXX object contrib/nr/CMakeFiles/libnr-obj.dir/model/nr-eesm-t2.cc.o

/home/liu/ns-3-dev/contrib/nr/model/nr-eesm-t2.cc: In function ‘void __static_initialization_and_destruction_0(int, int)’:

/home/liu/ns-3-dev/contrib/nr/model/nr-eesm-t2.cc:7492:1: note: variable tracking size limit exceeded with ‘-fvar-tracking-assignments’, retrying without

 7492 | } // namespace ns3

      | ^

2. SQLiteOutput

[  8%] Building CXX object contrib/nr/examples/CMakeFiles/lena-lte-comparison-campaign.dir/lena-lte-comparison/lena-lte-comparison.cc.o

/home/liu/ns-3-dev/contrib/nr/examples/lena-lte-comparison/lena-lte-comparison.cc: In function ‘void ns3::LenaLteComparison(const ns3::Parameters&)’:

/home/liu/ns-3-dev/contrib/nr/examples/lena-lte-comparison/lena-lte-comparison.cc:255:89: error: no matching function for call to ‘ns3::SQLiteOutput::SQLiteOutput(std::__cxx11::basic_string<char>, const char [20])’

  255 | .outputDir + "/" + params.simTag + ".db", "lena-lte-comparison");

      |                                                               ^


In file included from /home/liu/ns-3-dev/contrib/nr/examples/lena-lte-comparison/lena-lte-comparison.cc:36:

/home/liu/ns-3-dev/build/include/ns3/sqlite-output.h:52:3: note: candidate: ‘ns3::SQLiteOutput::SQLiteOutput(const string&)’

   52 |   SQLiteOutput (const std::string &name);

      |   ^~~~~~~~~~~~

/home/liu/ns-3-dev/build/include/ns3/sqlite-output.h:52:3: note:   candidate expects 1 argument, 2 provided

make[2]: *** [contrib/nr/examples/CMakeFiles/lena-lte-comparison-campaign.dir/build.make:80: contrib/nr/examples/CMakeFiles/lena-lte-comparison-campaign.dir/lena-lte-comparison/lena-lte-comparison.cc.o] Error 1

make[1]: *** [CMakeFiles/Makefile2:3889: contrib/nr/examples/CMakeFiles/lena-lte-comparison-campaign.dir/all] Error 2

make: *** [Makefile:141: all] Error 2

Finished executing the following commands:




I am a begginner and don't know how to resolve this,  I hope your help. 
Thanks so much.


lena-lte-comparison.cc
nr-eesm-ir-t2.cc
nr-eesm-ir-t1.cc

Bruno

unread,
May 16, 2022, 2:56:20 PM5/16/22
to ns-3-users
Unless you need to enable SQLite support, that should not be a problem.
Message has been deleted
Message has been deleted
Message has been deleted
Message has been deleted

Biljana Bojovic

unread,
May 19, 2022, 2:46:41 AM5/19/22
to ns-3-users
Thanks a lot Gabriel. 

Here is just a small summary what is there, and what are plans:
  • 5G-LENA NR Release 2.1 along with ns3.36 is tested with several clang compilers and GCC compilers and it works fine. However, it is not tested with some newer compilers.
  • If you are trying to build the NR Release 2.1. with the latest ns-3-dev master that includes this change in SQLiteOutput, which entered right after releasing ns-3.36, you can do what Gabriel suggests, just remove the second parameter from the function call in which the compilation fails.
  • With some newer compilers, people can detect other issues that are actually those detected with ns-3.36 being built alone (without the NR module) on newer compilers and are resolved with ns-3.36.1 which is going to be released soon.
  • Once ns-3.36.1 is released we will release the NR module that will be compatible with ns-3.36.1 in order to make available the NR module also for these new compilers.
Hope this helps.

On Wed, May 18, 2022 at 9:33 PM Gabriel Ferreira <gabriel...@gmail.com> wrote:
The NR module is targeting ns-3.36, but some changes meant for 3.37 were already merged. 
One of them is the switch from posix semaphore to C++ locking primitives. 
The second parameter for this SQLite call was the name of the semaphore. 
Removing the last argument from the call should fix the issue.

--
Posting to this group should follow these guidelines https://www.nsnam.org/wiki/Ns-3-users-guidelines-for-posting
---
You received this message because you are subscribed to the Google Groups "ns-3-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ns-3-users+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ns-3-users/73ec99be-67c3-4ab6-85a9-4c653436f8f7n%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages