Bug #35

Failed to build the source

Added by jass-zhao-gmail-com - almost 13 years ago. Updated almost 13 years ago.

Status:ClosedStart date:
Priority:HighDue date:
Assignee:Javi Fontan% Done:

0%

Category:Core & System
Target version:Release 1.0
Resolution:fixed Pull request:
Affected Versions:

Description

Hi,

I downloaded the 1.0 release package. When I tried to build it, it ran onto some errors:

/one-1.0$ scons
scons: Reading SConscript files ...
share/scons/get_xmlrpc_config:186:in @delete': No such file or directory - .xmlrpc_test/xmlrpc_test.7982ad.cc.out (Errno::ENOENT)
from share/scons/get_xmlrpc_config:186:in @test_config'
from share/scons/get_xmlrpc_config:198:in @search_config'
from share/scons/get_xmlrpc_config:197:in @each'
from share/scons/get_xmlrpc_config:197:in @search_config'
from share/scons/get_xmlrpc_config:209
OSError: 'share/scons/get_xmlrpc_config server' exited 1:
File "/home/karen/Dev/Virtual/OpenNebula/package/one-1.0/SConstruct", line 72:
main_env.ParseConfig('share/scons/get_xmlrpc_config server')
File "/usr/lib/scons/SCons/Environment.py", line 1288:
return function(self, self.backtick(command))
File "/usr/lib/scons/SCons/Environment.py", line 514:
raise OSError("'%s' exited %d" % (command, status))

It may be very basic issue and may be just my env setup. However, things will be much better if a build guide is included in the package.

Thanks,
Peng

History

#1 Updated by DiscoFever - almost 13 years ago

Have you installed 'libxmlrpc-c3-dev' and 'libxmlrpc-c3'?

#2 Updated by dzsivacsgeza-gmail-com - almost 13 years ago

I get the same error. I have those two packages installed. Is there anything else I should install (I installed everything which is listed int the requirements page).

Thanks!

#3 Updated by Peng - almost 13 years ago

Yes. I installed both packages, but still get this error.

The difference is my Sqlite3 version is 3.4 (lower than required), also I have no sqlite3-dev and sqlite3-ruby installed. But it should not make the build failed.

BTW, I'm running Ubunto 8.04.

Peng

#4 Updated by bbaptist-iexposure-com - almost 13 years ago

I was also getting this error on Ubuntu 8.04. I had to install libcurl3-dev. The way I found out was removing the g++ output pipe to /dev/null. Not good error handling.

Thanks.

Bret.

#5 Updated by mendes-bdaamv-eb-mil-br - almost 13 years ago

I just installed libcurl3-dev but still having the same error, how do i remove the g++ output pipe to /dev/null?
The Open Nebula documentation says in: http://www.opennebula.org/doku.php?id=documentation:ig#installation

On section "File system Layout", just before the ONE instalation, there is something about the NFS sharings required, such as $ONE_LOCATION, and most of the compiling error says about files not found. 'no such file or directory'.

#6 Updated by anonymous - almost 13 years ago

Oops, i forgot to say, i'm using ONE 1.0 on Debian Etch.
Still having the same building error.

#7 Updated by Javi Fontan almost 13 years ago

  • Status changed from New to Assigned

#8 Updated by Javi Fontan almost 13 years ago

I have sent this response to the mailing list but I am also copying it here so you can follow the status:

The library we use to provide xmlrpc services in one server is xmlrpc-c (http://xmlrpc-c.sourceforge.net/). Depending on how it was compiled it needs to know what libraries it needs to link with the executable. The standard procedure to know this is using the script provided with the libraries, it is called xmlrpc-c-config. You have to tell the script what kind of executable you are creating and it tells you the linking parameters you have to provide to link successfully. The problem is that this information is not always correct in all installations of this library. To overcome the issue I have created an script that tries to compile and link two programs with different options until it finds the correct libraries for that xmlrpc-c installation.

That very script has a bug when deleting files after it tries to compile test code, it does not check for the output executable to exist, so if in that try it could not compile the test it will break after trying to delete the file that does not exist. In the svn there is a version of the script that does checks the file before trying to delete it. You can get latest version using svn (svn co http://svn.opennebula.org/one/trunk one) or using the track interface, going to browser and downloading this specific file (http://trac.opennebula.org/browser/one/trunk/share/scons/get_xmlrpc_config). I recomend you to use the svn procedure as we are testing one in more installations/linux flavors and adding recipes on how to link to xmlrpc-c.

Concerning people asking on how to debug this (not sending gcc output to dev null) I have to say that it is a very good idea to have some kind of debug or log information to get a clue on how it is happening. I will try to add this as soon as I can (there are still lots of tasks in my todo list). Meanwhile I have updated the script with two more recipes and it now also prints what it is trying to do so you can test g++ compile lines from the command line.

#9 Updated by jason-mennonite-net - almost 13 years ago

I have encountered the same problem as above, but even after usign svn to copy the latest files I still get the same error:

OSError: 'share/scons/get_xmlrpc_config server' exited 1:
File "/opt/one/one_svn/one/SConstruct", line 72:
main_env.ParseConfig('share/scons/get_xmlrpc_config server')
File "/usr/lib64/scons-0.97/SCons/Environment.py", line 1134:
return function(self, self.backtick(command))
File "/usr/lib64/scons-0.97/SCons/Environment.py", line 473:
raise OSError("'%s' exited %d" % (command, status))

I am running the latest version of Gentoo.

Any more progress?

Thanks,
Jason

#10 Updated by anonymous - almost 13 years ago

Hi,
i had an error in svn copy, whwn i tried to use
$svn co http://svn.opennebula.org/one/trunk one

I got this error message :
svn: REPORT requesition failed in '/!svn/vcc/default'
svn: REPORT of '/!svn/vcc/default': 400 Bad Request (http://svn.opennebula.org)

Despite this, i downloaded manually the SConstruct file, still having the same problem building the source.

About the libs problem, The ONE documentation in 'technology dependences' section asks some components and their respective versions. I'm using debian etch and Debian's apt-get installs different (lower) versions of the required packages as follows:

Required by ONE docs Installed by Debian's apt-get
ruby >= 1.8.5 1.8.2-1
sqlite3 >= 3.5.2 3.3.8-1.1
sqlite3-dev >= 3.5.6-3 3.3.8-1.1
sqlite3-ruby 1.1.0-2
libxmlrpc-c >= 1.06 0.9.10-4
scons >= 0.97 0.96.93-2

Can this cause the build problem?

Thanks

#11 Updated by anonymous - almost 13 years ago

Required by ONE docs..................Installed by Debian's apt-get
ruby >= 1.8.5.........................1.8.2-1
sqlite3 >= 3.5.2......................3.3.8-1.1
sqlite3-dev >= 3.5.6-3................3.3.8-1.1
sqlite3-ruby..........................1.1.0-2
libxmlrpc-c >= 1.06...................0.9.10-4
scons >= 0.97.........................0.96.93-2

Can this cause the build problem?
Thanks

#12 Updated by anonymous - almost 13 years ago

Replying to [comment:12 anonymous]:

Required by ONE docs..................Installed by Debian's apt-get
ruby >= 1.8.5.........................1.8.2-1
sqlite3 >= 3.5.2......................3.3.8-1.1
sqlite3-dev >= 3.5.6-3................3.3.8-1.1
sqlite3-ruby..........................1.1.0-2
libxmlrpc-c >= 1.06...................0.9.10-4
scons >= 0.97.........................0.96.93-2

Can this cause the build problem?

The version of libxmlrpc is what is making the build break. If you change your repositories to "lenny" you will have appropriate packages.

#13 Updated by anonymous - almost 13 years ago

Replying to [comment:11 anonymous]:

Hi,
i had an error in svn copy, whwn i tried to use
$svn co http://svn.opennebula.org/one/trunk one

I got this error message :
svn: REPORT requesition failed in '/!svn/vcc/default'
svn: REPORT of '/!svn/vcc/default': 400 Bad Request (http://svn.opennebula.org)

Despite this, i downloaded manually the SConstruct file, still having the same problem building the source.

You need to download share/scons/get_xmlrpc_config. That is the file that checks for xmlrpc-c libraries.

#14 Updated by Javi Fontan almost 13 years ago

  • Resolution set to fixed

Improved build system and debugging logs added.

Also available in: Atom PDF