RDK Services on x86 PC based Emulator

Created on November 30, 2020

Build Instructions

Host Setup for Morty Build

How to Build#SettinguptheHostEnvironment

Build Workspace Setup

build setup
repo init -u https://code.rdkcentral.com/r/manifests -b rdk-next -m rdkv-nosrc.xml
repo sync -j `nproc` --no-clone-bundle --no-tags

apply bug fixes Expand source
# enabling RDK services for emulator
(cd meta-rdk-bsp-emulator; git fetch "https://code.rdkcentral.com/r/components/asp/rdk-oe/meta-rdk-bsp-emulator" refs/changes/62/47062/8 && git cherry-pick FETCH_HEAD)

Note: The above bug fixes changes are temporary given as instructions. This is not required once the change is get merged into the appropriate repo

Image build

    image build
    MACHINE=qemux86mc-morty source meta-cmf-bsp-emulator/setup-environment
    bitbake rdk-generic-mediaclient-wpe-image
    image build
    MACHINE=qemux86hyb-morty source meta-cmf-bsp-emulator/setup-environment
    bitbake rdk-generic-hybrid-wpe-image

    JIRA Issues

    Key Summary T Created Updated Due Assignee Reporter P Status Resolution

    11 responses to “RDK Services on x86 PC based Emulator”

    1. Unknown User (yun5) says:


      when i do repo init -u https://code.rdkcentral.com/r/manifests -b rdk-next -m rdkv-nosrc.xml ,output information:

                           fatal: remote error: access at least one ref not permitted 

       so , What should I do next,username:yun5  


      • Yogomaya Maharana says:

        Hello Knight Wang, 

        Thank you for reaching out to RDK Support. While most of the RDK components are available free, a handful of components are distributed under the free RDK License Agreement.
        To obtain the RDK License Agreement, please fill in the form on the right side of this page and click submit. Upon full execution of the agreement, you will be provided access to the RDK source code components. Please contact RDK Management at info@rdkcentral.com in case you need more information.

    2. Z-Ashutosh Joglekar says:


      when I try to perform repo sync for the first time to checkout the code I get "[Errno 13] Permission denied" 

      Any idea why that might be? username: ashfreesat



      • Yogomaya Maharana says:

        Hello Ashutosh,

        Thank you for reaching out to RDK Support. Could you please login to code.rdkcentral.com with username – ashfreesat and then try to attempt code checkout. Let us know if problem still persists.

        RDK Support

        • Z-Ashutosh Joglekar says:


          Thanks for the reply, I have logged into code.rdkcentral.com with my username and tried to checkout but it still returns the same error for checking the code out.

          is there anything additional i need to do from command line before running the sync command?



    3. Z-Moorthy Baskar says:

      Hi Z-Ashutosh Joglekar , Unknown User (yun5) 

      Please add rdkcentral’s credential in ~/.netrc file. Please refer How to Build#SettinguptheHostEnvironment to how to do

    4. Z-Ashutosh Joglekar says:

      hi Z-Moorthy Baskar  / Yogomaya Maharana 

      I have the credentials entered into .netrc file and repo init works fine. but I get below errors when I try to sync the repo

      ashutosh@LAPTOP-UAHNSI5R:~/freesat/rdk$ repo sync -j`nproc` –no-clone-bundle -j1 –fail-fast

      … A new version of repo (2.12) is available.
      … You should upgrade soon:
          cp /mnt/d/freesat/rdk/.repo/repo/repo /home/ashutosh/bin/repo

      error: Cannot fetch docs (Error: [(‘/mnt/d/freesat/rdk/.repo/project-objects/docs.git/branches’, ‘/mnt/d/freesat/rdk/.repo/projects/docs.git/branches’, “[Errno 13] Permission denied: ‘/mnt/d/freesat/rdk/.repo/projects/docs.git/branches'”)])
      Traceback (most recent call last):
        File “/mnt/d/freesat/rdk/.repo/repo/main.py”, line 629, in <module>
        File “/mnt/d/freesat/rdk/.repo/repo/main.py”, line 603, in _Main
          result = run()
        File “/mnt/d/freesat/rdk/.repo/repo/main.py”, line 596, in <lambda>
          run = lambda: repo._Run(name, gopts, argv) or 0
        File “/mnt/d/freesat/rdk/.repo/repo/main.py”, line 260, in _Run
          result = cmd.Execute(copts, cargs)
        File “/mnt/d/freesat/rdk/.repo/repo/subcmds/sync.py”, line 889, in Execute
          fetched = self._Fetch(to_fetch, opt, err_event)
        File “/mnt/d/freesat/rdk/.repo/repo/subcmds/sync.py”, line 446, in _Fetch
        File “/mnt/d/freesat/rdk/.repo/repo/subcmds/sync.py”, line 323, in _FetchProjectList
          success = self._FetchHelper(opt, project, *args, **kwargs)
        File “/mnt/d/freesat/rdk/.repo/repo/subcmds/sync.py”, line 373, in _FetchHelper
        File “/mnt/d/freesat/rdk/.repo/repo/project.py”, line 1093, in Sync_NetworkHalf
          self._InitGitDir(force_sync=force_sync, quiet=quiet)
        File “/mnt/d/freesat/rdk/.repo/repo/project.py”, line 2452, in _InitGitDir
        File “/mnt/d/freesat/rdk/.repo/repo/project.py”, line 2698, in _ReferenceGitDir
          shutil.copytree(src, dst)
        File “/usr/lib/python3.6/shutil.py”, line 365, in copytree
          raise Error(errors)
      shutil.Error: [(‘/mnt/d/freesat/rdk/.repo/project-objects/docs.git/branches’, ‘/mnt/d/freesat/rdk/.repo/projects/docs.git/branches’, “[Errno 13] Permission denied: ‘/mnt/d/freesat/rdk/.repo/projects/docs.git/branches'”)]

    5. Z-Michel LE HENAFF says:


      I followed the "How to Build#SettinguptheHostEnvironment" part : installing Ubuntu 16.04 and all  other steps.
      But the repo init to get emulator is failing, due to python 3.5 version in Ubuntu 16.04 it seems.

      With recomnended repo tool, error is
      repo init -u https://code.rdkcentral.com/r/manifests -b rdk-next -m rdkv-nosrc.xml
      Downloading Repo source from https://gerrit.googlesource.com/git-repo
      remote: Finding sources: 100% (5/5)
      remote: Total 5 (delta 0), reused 5 (delta 0)
      repo: warning: your Python 3 version is no longer supported; Please upgrade to Python 3.6+.
      Traceback (most recent call last):
        File "/home/sdtv/Projets/rdk_emulator/.repo/repo/main.py", line 630, in <module>
        File "/home/sdtv/Projets/rdk_emulator/.repo/repo/main.py", line 604, in _Main
          result = run()
        File "/home/sdtv/Projets/rdk_emulator/.repo/repo/main.py", line 597, in <lambda>
          run = lambda: repo._Run(name, gopts, argv) or 0
        File "/home/sdtv/Projets/rdk_emulator/.repo/repo/main.py", line 205, in _Run
          git_trace2_event_log = EventLog()
        File "/home/sdtv/Projets/rdk_emulator/.repo/repo/git_trace2_event_log.py", line 86, in __init__
        File "/home/sdtv/Projets/rdk_emulator/.repo/repo/git_trace2_event_log.py", line 96, in _AddVersionEvent
          version_event[‘exe’] = RepoSourceVersion()
        File "/home/sdtv/Projets/rdk_emulator/.repo/repo/git_command.py", line 166, in RepoSourceVersion
          encoding=’utf-8′, env=env, check=False)
        File "/usr/lib/python3.5/subprocess.py", line 693, in run
          with Popen(*popenargs, **kwargs) as process:
      TypeError: __init__() got an unexpected keyword argument ‘encoding’

      Any support is welcome, thanks

    6. Z-Michel LE HENAFF says:

      Hi Deepthi,

      Thanks for help, but repo init error is now

      Get https://gerrit.googlesource.com/git-repo/clone.bundle
      Get https://gerrit.googlesource.com/git-repo
      remote: Finding sources: 100% (33/33)
      remote: Total 33 (delta 15), reused 33 (delta 15)
      Unpacking objects: 100% (33/33), 18.00 KiB | 526.00 KiB/s, done.
      From https://gerrit.googlesource.com/git-repo
         ddab060..6a2f4fb  main       -> origin/main
         d34af28..ddab060  stable     -> origin/stable
       * [new tag]         v2.13.8    -> v2.13.8

      fatal: branch ‘v2.9’ has not been signed

      • Deepthi Suseelan says:

        Z-Michel LE HENAFF 

        In that case, delete the existing folder (to ensure deleting old .repo)
        Take a new terminal – to ensure no existing exports are present.

        Then add –repo-branch=v2.9 at the end of repo init command

        repo init -u <manifest_repo> -b <branch> -m <manifest.xml> –repo-branch=v2.9

        If this also doesnt work, please share the output of command : which repo

    Leave a Reply

    Your email address will not be published.

    Go To Top