-
Notifications
You must be signed in to change notification settings - Fork 38
Build
The following instructions are for building distribution packages from EMANE source. The emane git repository master branch always contains the latest EMANE release. Older versions are available as tags. Use the develop branch for access to the latest non-stable source.
See the Install page for information on installing EMANE from pre-built packages.
The general steps to build EMANE are the same across all distributions.
-
Install the required build dependencies. The following dependencies are available via your distribution package manager:
- libxml2
- libpcap
- pcre
- libuuid
- protobuf
- python-protobuf
- python-lxml
Dependency package names vary slightly between distributions. Consult the below instructions for distribution specifics.
-
Clone the EMANE repo:
# git clone https://github.com/adjacentlink/emane.git
-
Build and install EMANE:
# cd emane # ./autogen.sh && ./configure --prefix=/usr && make install
-
Install EMANE build dependencies and tools:
# sudo yum install autoconf automake git libtool libxml2-devel libpcap-devel \ pcre-devel libuuid-devel python-devel python-setuptools rpm-build make gcc-c++
-
Enable the EPEL package repository and install Google Protocol Buffer dependencies:
# sudo yum install epel-release # sudo yum install protobuf protobuf-devel protobuf-compiler protobuf-python
-
C++17 support:
# sudo yum install centos-release-scl # sudo yum install devtoolset-9
-
Clone the EMANE repo:
# git clone https://github.com/adjacentlink/emane.git
-
Build RPMs using devtoolset:
# scl enable devtoolset-9 bash # cd emane # ./autogen.sh && ./configure && make rpm
-
Install RPMs:
# cd .rpmbuild # sudo yum install $(ls RPMS/x86_64/*.rpm RPMS/noarch/*.rpm | grep -v debuginfo)
-
Enable the EPEL package repository and powertools:
# sudo dnf install epel-release # sudo dnf config-manager --set-enabled powertools
-
Install EMANE build dependencies:
# dnf install gcc-c++ autoconf automake libtool libxml2-devel protobuf-devel \ python3-protobuf libpcap-devel pcre-devel libuuid-devel rpm-build \ python3-setuptools python3-devel git make
-
Clone the EMANE repo:
# git clone https://github.com/adjacentlink/emane.git
-
Build RPMs:
# cd emane # ./autogen.sh && ./configure && make rpm
-
Install RPMs:
# cd .rpmbuild # sudo dnf install $(ls RPMS/x86_64/*.rpm RPMS/noarch/*.rpm | grep -v debuginfo)
-
Install EMANE build dependencies:
# dnf install gcc-c++ autoconf automake libtool libxml2-devel protobuf-devel \ python3-protobuf libpcap-devel pcre-devel libuuid-devel rpm-build \ python3-setuptools python3-devel git make
-
Clone the EMANE repo:
# git clone https://github.com/adjacentlink/emane.git
-
Build RPMs:
# cd emane # ./autogen.sh && ./configure && make rpm
-
Install RPMs:
# cd .rpmbuild # sudo dnf install $(ls RPMS/x86_64/*.rpm RPMS/noarch/*.rpm | grep -v debuginfo)
-
Install EMANE build dependencies:
# sudo apt-get install gcc g++ autoconf automake libtool libxml2-dev libprotobuf-dev \ libpcap-dev libpcre3-dev uuid-dev debhelper pkg-config protobuf-compiler git dh-python \ python3-protobuf python3-setuptools
-
Clone the EMANE repo:
# git clone https://github.com/adjacentlink/emane.git
-
Build debs:
# cd emane # ./autogen.sh && ./configure && make deb
-
Install debs:
# cd .debbuild # sudo dpkg -i *.deb # sudo apt-get install -f
- Home
- Introduction
- EMANE Shell
- Emulator Physical Layer
- Radio Models
- Utility Models
- Transports
- Event Generators
- Event Agents
- Building Packages
- Installing Packages
- Developer Documentation
- FAQ
- Copyright