Forums

F.A.Q. F.A.Q.    Register Register    Login Login    Home Home
Search Search
SBML Discussions » sbml-interoperability » Problems compiling libsbml on the Mac
Show: Today's Posts  :: Message Navigator
| Subscribe to topic 
Return to the default flat view Create a new topic Submit Reply
AuthorTopic
Ben Bornstein


Posts: 287
Registered:
September 2003
Re: Re: Problems compiling libsbml on the Mac 31 Jan '06 11:27 Go to previous messageGo to previous message

Hi Anthony,

Thanks for the problem report. However, I must say I'm perplexed. I
develop libSBML on my Mac laptop and have never encountered this
problem nor do I recall any other Mac users reporting it. Not to
mention that #include <expat.h> should search in standard system
location (e.g. /usr/local/include) and not the current directory. See:

http://c-faq.com/cpp/cppsearchpath.html

That's not to say I don't believe you. I certainly do. I also know
the Mac OS filesystem is case-insensitive. I'm just curious what's
different about your build setup. Can you send me (privately) your
config.log file or the command-line used to compile
xml/StreamFormatTarget.cpp? I'm most interested in the order of the
include directories passed to g++.

I'll fix this by renaming those two files in the next release.

Thanks (and sorry for the trouble).

Ben


On Jan 31, 2006, at 10:43 AM, Anthony Liekens wrote:

> I have found the problem, and was able to solve my libsbml+expat
> compilation problems on the mac.
>
> The problem resides in the weirdness of case-insensitivity in the mac
> file system (i.e. a file "file.cpp" is the same as "FiLe.CpP" on a
> mac):
> * src/xml/StreamFormatTarget.cpp has an #include <expat.h>
> * the src/xml directory contains Expat.h and Expat.cpp files to wrap
> expat.h as a C++ classes
> * instead of including /usr/include/expat.h (or wherever the header
> file may reside) in StreamFormatTarget.cpp, it looked no further than
> its local directory for includes, and included "Expat.h" where
> /usr/include/expat.h was intended
>
> A solution for this problem:
> * rename the Expat.h and Expat.cpp files in src/xml to ExpatWrapper.h
> and ExpatWrapper.cpp
> * make sure that the files that include Expat.h (with capital) are
> updated with this new filename (not only in src/xml but also in
> src/math/MathMLHandler.h, src/sbml/SBMLHandler.h, )
> * make sure that makefile(.in) files are also updated
> * try compiling, and it'll work!
>
> I know, it's really weird and un-UNIX-y, but unfortenately this is how
> Mac OS X is built ... I hope this solution can be patched in future
> libsbml releases!

      

SubjectPosterDate
Read Message   Problems compiling libsbml on the Mac Anthony Liekens31 Jan '06 00:28
Read Message   Re: Problems compiling libsbml on the Mac Anthony Liekens31 Jan '06 02:43
Read Message   Re: Re: Problems compiling libsbml on the Mac  Ben Bornstein31 Jan '06 11:27
Read Message   Re: Re: Problems compiling libsbml on the Mac Anthony Liekens22 Feb '06 02:56
Read Message   Re: Re: Re: Problems compiling libsbml on the Mac Ben Bornstein22 Feb '06 12:14
Read Message   Re: Re: Re: Problems compiling libsbml on the Mac Ben Bornstein22 Feb '06 12:14
Read Message   Re: Re: Problems compiling libsbml on the Mac Anthony Liekens22 Feb '06 10:34
Read Message   Re: Re: Problems compiling libsbml on the Mac darndt23 Jun '06 21:09
Read Message   Re: Problems compiling libsbml on the Mac darndt23 Jun '06 21:13
Previous Topic:java binding classes and MathML
Next Topic:installing libsbml
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.