Forums

F.A.Q. F.A.Q.    Register Register    Login Login    Home Home
Search Search
SBML Discussions » sbml-interoperability » Re: compiling libsbml on AIX[Scanned]
Show: Today's Posts  :: Message Navigator
| Subscribe to topic 
Return to the default flat view Create a new topic Submit Reply
AuthorTopic
Eric Fernandez


Posts: 15
Registered:
February 2007
Re: compiling libsbml on AIX[Scanned] 20 Feb '07 14:34 Go to previous message

Hello Stefan,

Actually, the .a library was correctly compiled, despite the error (maybe this is done during a previous step with ar, I should check this).

Moreover, I have done some more research, and thanks to this table: http://www.fortran-2000.com/ArnaudRecipes/sharedlib.html I was able to figure out the -G switch, which replace the -shared -o in Linux. this compilation step was successful, however, I got a libsbml.* file (and not a libsbml.so as I expected). I'll see if I can figure out the problem and correct this.

By the way: to whom should I submit patches for AIX ? And how to make the makefile specific to AIX. Probably Ben will be able to integrate these specificities more cleanly than I could do...

Regards,
Eric


-----Original Message-----
From: libsbml-discuss-bounces@caltech.edu on behalf of Stefan Hoops
Sent: Tue 2/20/2007 9:48 PM
To: LibSBML Discussion List
Subject: Re: [libsbml-discuss] compiling libsbml on AIX[Scanned]

Hello Eric,

It looks like the linker is missing the directive to create a library.
The target is an executable called libsbml, which of course will be
missing the entry point main.

I am also not familiar with AIX but if you can live with a static
library you may just use ar to create libsbml.a

I hope that helps!
Stefan


On Tue, 20 Feb 2007 20:40:51 -0000
"Eric Fernandez" <efernandez@physiomics-plc.com> wrote:

> Dear Stefan,
>
> Thanks a lot. I did google but did not figure out what the problem
> was. I am not very familiar with AIX and the native tools on that
> platform. I am close to success, however, I have another issue when
> building the last piece:
>
>
> xlC_r -L/hpc/work/fernandz/local/lib -o ../libsbml. Compartment.o
> CompartmentType.o Constraint.o Delay.o Event.o EventAssignment.o
> FunctionDefinition.o InitialAssignment.o KineticLaw.o ListOf.o Model.o
> Parameter.o Reaction.o Rule.o SBML.o SBMLConvert.o SBMLDocument.o
> SBMLErrorLog.o SBMLReader.o SBMLTypeCodes.o SBMLVisitor.o SBMLWriter.o
> SBase.o Species.o SpeciesReference.o SpeciesType.o Trigger.o Unit.o
> UnitDefinition.o UnitKind.o ../util/List.o ../util/Stack.o
> ../util/StringBuffer.o ../util/StringMap.o ../util/memory.o
> ../util/util.o ../xml/XMLAttributes.o ../xml/XMLBuffer.o
> ../xml/XMLError.o ../xml/XMLErrorLog.o ../xml/XMLFileBuffer.o
> ../xml/XMLHandler.o ../xml/XMLInputStream.o ../xml/XMLMemoryBuffer.o
> ../xml/XMLNamespaces.o ../xml/XMLNode.o ../xml/XMLOutputStream.o
> ../xml/XMLParser.o ../xml/XMLToken.o ../xml/XMLTokenizer.o
> ../xml/XMLTriple.o ../xml/XercesAttributes.o ../xml/XercesHandler.o
> ../xml/XercesNamespaces.o ../xml/XercesParser.o ../math/ASTNode.o
> ../math/FormulaFormatter.o ../math/FormulaParser.o
> ../math/FormulaTokenizer.o ../math/MathML.o
> ../validator/ConsistencyValidator.o ../validator/Constraint.o
> ../validator/L1CompatibilityValidator.o ../validator/Validator.o
> ../validator/constraints/ArgumentsUnitsCheck.o
> ../validator/constraints/AssignmentCycles.o
> ../validator/constraints/CiElementMathCheck.o
> ../validator/constraints/CompartmentOutsideCycles.o
> ../validator/constraints/ConsistencyConstraints.o
> ../validator/constraints/EqualityArgsMathCheck.o
> ../validator/constraints/FunctionApplyMathCheck.o
> ../validator/constraints/FunctionDefinitionVars.o
> ../validator/constraints/FunctionReferredToExists.o
> ../validator/constraints/IdBase.o ../validator/constraints/IdList.o
> ../validator/constraints/KineticLawVars.o
> ../validator/constraints/L1CompatibilityConstraints.o
> ../validator/constraints/LambdaMathCheck.o
> ../validator/constraints/LocalParameterMathCheck.o
> ../validator/constraints/LogicalArgsMathCheck.o
> ../validator/constraints/MathMLBase.o
> ../validator/constraints/NumberArgsMathCheck.o
> ../validator/constraints/NumericArgsMathCheck.o
> ../validator/constraints/NumericReturnMathCheck.o
> ../validator/constraints/OverDeterminedCheck.o
> ../validator/constraints/PieceBooleanMathCheck.o
> ../validator/constraints/PiecewiseValueMathCheck.o
> ../validator/constraints/SpeciesReactionOrRule.o
> ../validator/constraints/StoichiometryMathVars.o
> ../validator/constraints/UniqueIdBase.o
> ../validator/constraints/UniqueIdsForUnitDefinitions.o
> ../validator/constraints/UniqueIdsInKineticLaw.o
> ../validator/constraints/UniqueIdsInModel.o
> ../validator/constraints/UniqueMetaId.o
> ../validator/constraints/UniqueSpeciesTypesInCompartment.o
> ../validator/constraints/UniqueSymbolsInInitialAssignments.o
> ../validator/constraints/UniqueVarsInEventAssignments.o
> ../validator/constraints/UniqueVarsInEventsAndRules.o
> ../validator/constraints/UniqueVarsInInitialAssignmentsAndRules.o
> ../validator/constraints/UniqueVarsInRules.o
> ../validator/constraints/UnitsBase.o ../units/FormulaUnitsData.o
> ../units/UnitFormulaFormatter.o ../units/UnitKindList.o
> ../units/Utils_Unit.o ../units/Utils_UnitDefinition.o
> ../annotation/CVTerm.o ../annotation/ModelHistory.o
> ../annotation/RDFAnnotation.o -lxerces-c -lm ld: 0711-224 WARNING:
> Duplicate symbol: .xercesc_2_7::SAX2XMLReaderImpl::endIntSubset() ld:
> 0711-224 WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::endAttList(const
> xercesc_2_7::DTDElementDecl&) ld: 0711-224 WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::elementDecl(const
> xercesc_2_7::DTDElementDecl&,bool) ld: 0711-224 WARNING: Duplicate
> symbol: .xercesc_2_7::SAX2XMLReaderImpl::doctypeWhitespace(const
> unsigned short*,unsigned int) ld: 0711-224 WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::endDocument() ld: 0711-224 WARNING:
> Duplicate symbol: .xercesc_2_7::SAX2XMLReaderImpl::doctypePI(const
> unsigned short*,const unsigned short*) ld: 0711-224 WARNING: Duplicate
> symbol: .xercesc_2_7::SAX2XMLReaderImpl::doctypeDecl(const
> xercesc_2_7::DTDElementDecl&,const unsigned short*,const unsigned
> short*,bool,bool) ld: 0711-224 WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::doctypeComment(const unsigned short*)
> ld: 0711-224 WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::resetDocument() ld: 0711-224 WARNING:
> Duplicate symbol: .xercesc_2_7::SAX2XMLReaderImpl::attDef(const
> xercesc_2_7::DTDElementDecl&,const xercesc_2_7::DTDAttDef&,bool) ld:
> 0711-224 WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::startEntityReference(const
> xercesc_2_7::XMLEntityDecl&) ld: 0711-224 WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::startElement(const
> xercesc_2_7::XMLElementDecl&,unsigned int,const unsigned short*,const
> xercesc_2_7::RefVectorOf<xercesc_2_7::XMLAttr>&,unsigned
> int,bool,bool) ld: 0711-224 WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::startDocument() ld: 0711-224 WARNING:
> Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::ignorableWhitespace(const unsigned
> short*,unsigned int,bool) ld: 0711-224 WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::endEntityReference(const
> xercesc_2_7::XMLEntityDecl&) ld: 0711-224 WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::endElement(const
> xercesc_2_7::XMLElementDecl&,unsigned int,bool,const unsigned short*)
> ld: 0711-224 WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::docPI(const unsigned short*,const
> unsigned short*) ld: 0711-224 WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::docComment(const unsigned short*) ld:
> 0711-224 WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::docCharacters(const unsigned
> short*,unsigned int,bool) ld: 0711-224 WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::TextDecl(const unsigned short*,const
> unsigned short*) ld: 0711-224 WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::startExtSubset() ld: 0711-224
> WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::startInputSource(const
> xercesc_2_7::InputSource&) ld: 0711-224 WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::resolveEntity(xercesc_2_7::XMLResour
> ceIdentifier*) ld: 0711-224 WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::resolveEntity(const unsigned
> short*,const unsigned short*,const unsigned short*) ld: 0711-224
> WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::startIntSubset() ld: 0711-224
> WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::resetEntities() ld: 0711-224 WARNING:
> Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::expandSystemId(const unsigned
> short*,xercesc_2_7::XMLBuffer&) ld: 0711-224 WARNING: Duplicate
> symbol: .xercesc_2_7::SAX2XMLReaderImpl::startAttList(const
> xercesc_2_7::DTDElementDecl&) ld: 0711-224 WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::endInputSource(const
> xercesc_2_7::InputSource&) ld: 0711-224 WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::notationDecl(const
> xercesc_2_7::XMLNotationDecl&,bool) ld: 0711-224 WARNING: Duplicate
> symbol: .xercesc_2_7::SAX2XMLReaderImpl::resetDocType() ld: 0711-224
> WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::resetErrors() ld: 0711-224 WARNING:
> Duplicate symbol: .xercesc_2_7::SAX2XMLReaderImpl::error(unsigned
> int,const unsigned
> short*,xercesc_2_7::XMLErrorReporter::ErrTypes,const unsigned
> short*,const unsigned short*,const unsigned short*,long,long) ld:
> 0711-224 WARNING: Duplicate symbol:
> .xercesc_2_7::SAX2XMLReaderImpl::entityDecl(const
> xercesc_2_7::DTDEntityDecl&,bool,bool) ld: 0711-224 WARNING: Duplicate
> symbol: .xercesc_2_7::SAX2XMLReaderImpl::endExtSubset() ld: 0711-224
> WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::error(unsigned int,const unsigned
> short*,xercesc_2_7::XMLErrorReporter::ErrTypes,const unsigned
> short*,const unsigned short*,const unsigned short*,long,long) ld:
> 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::resetErrors() ld: 0711-224 WARNING:
> Duplicate symbol: xercesc_2_7::SAX2XMLReaderImpl::endInputSource(const
> xercesc_2_7::InputSource&) ld: 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::expandSystemId(const unsigned
> short*,xercesc_2_7::XMLBuffer&) ld: 0711-224 WARNING: Duplicate
> symbol: xercesc_2_7::SAX2XMLReaderImpl::resetEntities() ld: 0711-224
> WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::resolveEntity(const unsigned
> short*,const unsigned short*,const unsigned short*) ld: 0711-224
> WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::resolveEntity(xercesc_2_7::XMLResourc
> eIdentifier*) ld: 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::startInputSource(const
> xercesc_2_7::InputSource&) ld: 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::docCharacters(const unsigned
> short*,unsigned int,bool) ld: 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::docComment(const unsigned short*) ld:
> 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::docPI(const unsigned short*,const
> unsigned short*) ld: 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::endDocument() ld: 0711-224 WARNING:
> Duplicate symbol: xercesc_2_7::SAX2XMLReaderImpl::endElement(const
> xercesc_2_7::XMLElementDecl&,unsigned int,bool,const unsigned short*)
> ld: 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::endEntityReference(const
> xercesc_2_7::XMLEntityDecl&) ld: 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::ignorableWhitespace(const unsigned
> short*,unsigned int,bool) ld: 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::resetDocument() ld: 0711-224 WARNING:
> Duplicate symbol: xercesc_2_7::SAX2XMLReaderImpl::startDocument() ld:
> 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::startElement(const
> xercesc_2_7::XMLElementDecl&,unsigned int,const unsigned short*,const
> xercesc_2_7::RefVectorOf<xercesc_2_7::XMLAttr>&,unsigned
> int,bool,bool) ld: 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::startEntityReference(const
> xercesc_2_7::XMLEntityDecl&) ld: 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::attDef(const
> xercesc_2_7::DTDElementDecl&,const xercesc_2_7::DTDAttDef&,bool) ld:
> 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::doctypeComment(const unsigned short*)
> ld: 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::doctypeDecl(const
> xercesc_2_7::DTDElementDecl&,const unsigned short*,const unsigned
> short*,bool,bool) ld: 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::doctypePI(const unsigned short*,const
> unsigned short*) ld: 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::doctypeWhitespace(const unsigned
> short*,unsigned int) ld: 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::elementDecl(const
> xercesc_2_7::DTDElementDecl&,bool) ld: 0711-224 WARNING: Duplicate
> symbol: xercesc_2_7::SAX2XMLReaderImpl::endAttList(const
> xercesc_2_7::DTDElementDecl&) ld: 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::endIntSubset() ld: 0711-224 WARNING:
> Duplicate symbol: xercesc_2_7::SAX2XMLReaderImpl::endExtSubset() ld:
> 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::entityDecl(const
> xercesc_2_7::DTDEntityDecl&,bool,bool) ld: 0711-224 WARNING: Duplicate
> symbol: xercesc_2_7::SAX2XMLReaderImpl::resetDocType() ld: 0711-224
> WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::notationDecl(const
> xercesc_2_7::XMLNotationDecl&,bool) ld: 0711-224 WARNING: Duplicate
> symbol: xercesc_2_7::SAX2XMLReaderImpl::startAttList(const
> xercesc_2_7::DTDElementDecl&) ld: 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::startIntSubset() ld: 0711-224 WARNING:
> Duplicate symbol: xercesc_2_7::SAX2XMLReaderImpl::startExtSubset() ld:
> 0711-224 WARNING: Duplicate symbol:
> xercesc_2_7::SAX2XMLReaderImpl::TextDecl(const unsigned short*,const
> unsigned short*) ld: 0711-345 Use the -bloadmap or -bnoquiet option to
> obtain more information. ld: 0711-317 ERROR: Undefined symbol: .main
> gmake[3]: *** [../libsbml.] Error 8
> gmake[3]: Leaving directory `/hpc/work/fernandz/src/libsbml/src/sbml'
> gmake[2]: *** [all-this-dir] Error 2
> gmake[2]: Leaving directory `/hpc/work/fernandz/src/libsbml/src/sbml'
> gmake[1]: *** [sbml-recurse] Error 2
> gmake[1]: Leaving directory `/hpc/work/fernandz/src/libsbml/src'
> gmake: *** [src-recurse] Error 2
>
>
> The -bnoquiet option shows:
> ld: 0711-318 ERROR: Undefined symbols were found.
> The following symbols are in error:
> Symbol Inpndx TY CL Source-File(Object-File) OR
> Import-File{Shared-object}
> RLD: Address Section Rld-type
> Referencing Symbol
> --------------------------------------------------------------------
> -------------------------- .main [10] ER PR
> crt0_64.s(/lib/crt0_64.o)
> 00000090 .text R_RBR [34]
> .__start
> ER: The return code is 8.
> ld: 0711-317 ERROR: Undefined symbol: .main
>
> I know that in AIX linking is different from the Linux one, and this
> might be the reason ofthe error. Any idea?
>
> Eric
>
> -----Original Message-----
> From: libsbml-discuss-bounces@caltech.edu on behalf of Stefan Hoops
> Sent: Tue 2/20/2007 6:14 PM
> To: LibSBML Discussion List
> Subject: Re: [libsbml-discuss] compiling libsbml on AIX[Scanned]
>
> Dear Eric,
>
> A little google on the issue revealed that the offending statement in
> UniqueIDBase.h is:
> typedef std::map<const std::string, const SBase*> IdObjectMap;
>
> it should read:
> typedef std::map<std::string, const SBase*> IdObjectMap;
>
> Some compiler fall over the unnecessary const. It makes no sense to
> declare the key as const as it may not be modified anyway. You will
> probably encounter similar problems more often during compilation.
>
> Thanks,
> Stefan


--
Stefan Hoops, Ph.D.
Senior Project Associate
Virginia Bioinformatics Institute - 0477
Virginia Tech
Bioinformatics Facility I
Blacksburg, Va 24061, USA

Phone: (540) 231-1799
Fax: (540) 231-2606
Email: shoops@vbi.vt.edu
____________________________________________________________
To manage your libsbml-discuss list subscription, visit
https://utils.its.caltech.edu/mailman/listinfo/libsbml-discuss

For a web interface to the libsbml-discuss mailing list, visit
http://sbml.org/forums/

For questions or feedback about the libsbml-discuss list,
contact sbml-team@caltech.edu.


      

SubjectPosterDate
Read Message   Re: compiling libsbml on AIX[Scanned]  Eric Fernandez20 Feb '07 14:34
Read Message   Re: compiling libsbml on AIX[Scanned] Mike Hucka21 Feb '07 00:41
Previous Topic:Patches for AIX
Next Topic:Re: compiling libsbml on AIX[Scanned]
Go to forum:
-=] Back to Top [=-

Powered by FUDforum. (Copyright Advanced Internet Designs Inc.)

Please use our issue tracking system for any questions or suggestions about this website.