Building OpenNebula from source on Ubuntu 20.04

Hi All,

I am building OpenNebula from source on Ubuntu 20.04. This is the documentation that I am following - https://docs.opennebula.io/5.12/integration/references/compile.html. However, I am not able to run scons to compile OpenNebula. The error I am getting is in the current results section below.

Versions of the related components and OS (frontend, hypervisors, VMs):
OS - Ubuntu 20.04 (Canonical-Ubuntu-20.04-2020.10.14-0)
The machine is a Bare Metal running on Oracle Cloud (BM.DenseIO2.52).

Steps to reproduce:
Spin up a BM.DenseIO2.52 compute instance with Ubuntu 20.04 image on Oracle Cloud. Install a VNC server and a desktop environment to connect to the machine using VNC Viewer (This step is optional). Git clone the repo. Download all the libraries required and mentioned here for Ubuntu 20.04 - https://docs.opennebula.io/5.12/integration/references/build_deps.html#build-deps. Change to the directory “one”. And then run scons.

Current results:

ubuntu@ds-opennebula:~/one$ scons new_xmlrpc=yes
scons: Reading SConscript files …
Testing recipe: xmlrpc-c-config
g++ .xmlrpc_test/xmlrpc_test.a04ce0.cc -o .xmlrpc_test/xmlrpc_test.a04ce0.cc.out -pthread -L/usr/lib/x86_64-linux-gnu -lxmlrpc_server_abyss++ -lxmlrpc_server++ -lxmlrpc_server_abyss -lxmlrpc_server -lxmlrpc_abyss -lpthread -lxmlrpc++ -lxmlrpc -lxmlrpc_xmlparse -lxmlrpc_xmltok -lxmlrpc_util -I/usr/include 1>>.xmlrpc_test/xmlrpc_test.a04ce0.cc.log 2>&1

Testing recipe: pkg-config
Error calling pkg-config xmlrpc_server_abyss++ --static --libs
Testing recipe: mixed hardcoded libraries and xmlrpc-c-config (debian lenny)
g++ .xmlrpc_test/xmlrpc_test.a04ce0.cc -o .xmlrpc_test/xmlrpc_test.a04ce0.cc.out -pthread -L/usr/lib/x86_64-linux-gnu -lxmlrpc_server_abyss++ -lxmlrpc_server++ -lxmlrpc_server_abyss -lxmlrpc_server -lxmlrpc_abyss -lpthread -lxmlrpc++ -lxmlrpc -lxmlrpc_xmlparse -lxmlrpc_xmltok -lxmlrpc_util -I/usr/include 1>>.xmlrpc_test/xmlrpc_test.a04ce0.cc.log 2>&1

Testing recipe: hardcoded libraries for Mac OS X (installed using port)
g++ .xmlrpc_test/xmlrpc_test.a04ce0.cc -o .xmlrpc_test/xmlrpc_test.a04ce0.cc.out -pthread -I/opt/local/include -L/opt/local/lib -lwwwxml -lxmltok -lxmlparse -lwwwzip -lwwwinit -lwwwapp -lwwwtelnet -lwwwhtml -lwwwnews -lwwwhttp -lwwwmime -lwwwgopher -lwwwftp -lwwwfile -lwwwdir -lwwwcache -lwwwstream -lwwwmux -lwwwtrans -lwwwcore -lwwwutils -lmd5 -ldl -lz -lpthread -lxmlrpc_client++ -lxmlrpc_client -lxmlrpc++ -lxmlrpc -lxmlrpc_util -lxmlrpc_xmlparse -lxmlrpc_xmltok -lxmlrpc_server_abyss++ -lxmlrpc_server++ -lxmlrpc_server_abyss -lxmlrpc_server -lxmlrpc_abyss 1>>.xmlrpc_test/xmlrpc_test.a04ce0.cc.log 2>&1

Error searching for xmlrpc-c libraries. Please check this things:

  • You have installed development libraries for xmlrpc-c.One way to check
    this is calling xmlrpc-c-config that is provided with the development
    package.
  • Check that the version of xmlrpc-c is at least 1.06. You can do this also
    calling:
    $ xmlrpc-c-config --version
  • If all this requirements are already met please send log
    TypeError: unsupported operand type(s) for +: ‘NoneType’ and ‘str’:
    File “/home/ubuntu/one/SConstruct”, line 257:
    print(" * If all this requirements are already met please send log") +\

Expected results:
No error

Appreciate your help. Thanks!