You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 14 Next »

Linux Platform (RaspberryPi4) 

Build steps for compilation on Raspberry Pi with Raspbian OS:

Prerequisites

  1. Install the Raspian Pi OS from the “Raspberry Pi Imager” software. Select the Raspberry Pi Os (64-bit) image. 
  2. After installation below are additional packages to be installed for build, db and execution.

    1. sudo apt-get update;
      sudo apt-get upgrade;
      sudo apt-get install vim;
      sudo apt-get install libev-dev;
      sudo apt-get install libjansson-dev;
      sudo apt-get install zlib1g-dev;
      sudo apt-get install libnl-3-dev;
      sudo apt-get install libnl-genl-3-dev;
      sudo apt-get install libnl-route-3-dev;
      sudo apt-get install libavro-dev;
      sudo apt-get install libcjson1 libcjson-dev;
      sudo apt-get install libssl-dev;
      sudo apt-get install uuid-dev;
      sudo apt-get install libmysqlcppconn-dev; 
      sudo apt-get install libreadline-dev;
      sudo apt-get install iptables;
      sudo apt install mariadb-server;

Build Instructions

  1.  In a working directory git clone the OneWifi in generic folder and unified-wifi-mesh repository
    1. ashraf@raspberrypi:~ $ ls
      Bookshelf  Desktop  Documents  Downloads  Music  Pictures  Public  Templates  Videos
      ashraf@raspberrypi:~ $ mkdir easymesh_project
      ashraf@raspberrypi:~ $ cd easymesh_project/
      ashraf@raspberrypi:~/easymesh_project $ git clone https://github.com/rdkcentral/OneWifi.git
      ashraf@raspberrypi:~/easymesh_project $ ls
      OneWifi  unified-wifi-mesh
  2. Run the makefile of OneWifi with setup option to pull in other dependent repository. This is a one time operation. 
    1. ashraf@raspberrypi:~/easymesh_project $ cd OneWifi/
      ashraf@raspberrypi:~/easymesh_project/OneWifi $ ls
      AUTHORS     build      cmpnt_build_custom_pre_arm.mk   CODE_STYLE.md  configure.ac     COPYING  genautotools.ini  lib      Makefile.am  NOTICE  README.md  source
      autogen.sh  ChangeLog  cmpnt_build_custom_pre_atom.mk  config         CONTRIBUTING.md  custom   include           LICENSE  NEWS         README  scripts
      ashraf@raspberrypi:~/easymesh_project/OneWifi $ make -f build/linux/makefile setup
  3. Build the Onewifi with make command
    1. ashraf@raspberrypi:~/easymesh_project/OneWifi $ make -f build/linux/makefile all
  4. Build easymesh components in the 
    unified-wifi-mesh folder
    1. Controller
      1. ashraf@raspberrypi:~/easymesh_project $ cd unified-easy-mesh/build/ctrl
        -bash: cd: unified-easy-mesh/build/ctrl: No such file or directory
        ashraf@raspberrypi:~/easymesh_project $ ls
        halinterface  OneWifi  rdk-wifi-hal  rdk-wifi-libhostap  unified-wifi-mesh
        ashraf@raspberrypi:~/easymesh_project/unified-wifi-mesh/build/ctrl $ ls
        makefile
        ashraf@raspberrypi:~/easymesh_project/unified-wifi-mesh/build/ctrl $ make all
    2. Cli
      1. ashraf@raspberrypi:~/easymesh_project/unified-wifi-mesh/build/ctrl $ cd ../../../
        ashraf@raspberrypi:~/easymesh_project $ cd unified-wifi-mesh/build/cli/
        ashraf@raspberrypi:~/easymesh_project/unified-wifi-mesh/build/cli $ ls
        makefile
        ashraf@raspberrypi:~/easymesh_project/unified-wifi-mesh/build/cli $ make all#If any issues in building cli, please follow below steps: 
        1.cd /etc/ld.so.conf.d
        2.sudo vi libemcli.conf
        3.In this file specify the path where libemcli.so is built. (install/lib - do pwd). If no libemcli.so present, install golang and build cli again with "sudo apt install golang" and "/unified-wifi-mesh/build/cli $ make all" . With this "libemcli.so" listed under "unified-wifi-mesh/install/lib". Now in "libemcli.conf" specify the path where libemcli.so is built. (install/lib - do pwd).
        4.install/bin/sudo ldconfig
        #Now "onewifi_em_cli" is listed under "/unified-wifi-mesh/install/bin"
        ashraf@raspberrypi:~/easymesh_project/unified-wifi-mesh/install/bin $ ls
        agent.json cli ctrl.json DevTest.json LinkMetric.json onewifi_em_agent Radiocap.json Sample.json Template.json
        CfgRenew.json Clientcap.json DeviceList.json DPPURI.json Network.json onewifi_em_cli RadioConfig.json STAList.json Template.sav
        Channel.json ClientSteer.json DevInit.json interface NetworkSSID.json onewifi_em_ctrl Reset.json STASteer.json
    3. Agent
      1. ashraf@raspberrypi:~/easymesh_project/unified-wifi-mesh/build/agent $ ls
        makefile
        ashraf@raspberrypi:~/easymesh_project/unified-wifi-mesh/build/agent $ make all


OpenWrt Platform

[ToDo]

RDK Platform

mkdir <workspace dir>
cd <workspace dir>
repo init -u https://code.rdkcentral.com/r/manifests -b kirkstone -m rdkb-extsrc.xml
repo sync -j`nproc` --no-clone-bundle
MACHINE=raspberrypi4-64-rdk-broadband source meta-cmf-raspberrypi/setup-environment
bitbake rdk-generic-broadband-image




  • No labels