[Pacemaker] building dev on Solaris

Paul Walsh Paul.Walsh at bcu.ac.uk
Fri Sep 12 10:13:02 EDT 2008

David Lee wrote:
> On Fri, 12 Sep 2008, Paul Walsh wrote:
>>> ../lib/common/.libs/libcrmcommon.so: attempted multiple inclusion of file
>>> Undefined                       first referenced
>>>  symbol                             in file
>>> vasprintf                           ../lib/common/.libs/libcrmcommon.so
>>> ld: fatal: Symbol referencing errors. No output written to .libs/cib
>>> collect2: ld returned 1 exit status
>>> make[1]: *** [cib] Error 1
>>> make[1]: Leaving directory `/software/Pacemaker-Devel-d3799a333adb/cib'
>>> make: *** [all-recursive] Error 1
>>> [...]
>>> But I suspect I'm missing a shared library somewhere.
>> [...]
>> Need to find a way round this for Pacemaker to build on Solaris :(
> In heartbeat this sort of thing occured with several routines, and the
> subdirectory "replace/" was designed and maintained to handle it.
> Presumably there is a "replace/" in pacemaker?
> The alternative thing we did on such occurences was to see whether there
> was a nearby routine of similar functionality but wider availability, and
> adjust the source code, if reasonably possible, to use that.
 So a suitably modified version of an "offending" piece of code placed in replace/ would take precedence over the original?

I suppose the question here is whether to have a modified version of lib/common/xml.c (the code that calls vasprintf)
put in replace/ or whether to attempt to get a version of vasprintf working on Solaris.

Should be quite a challenge for someone who's hardly ever touched C ;)

Paul Walsh

More information about the Pacemaker mailing list