From: Andrew F. <af...@ph...> - 2006-06-15 07:46:04
|
Rainer I can't really comment on this stuff I'm only going on what I read in the autoconf pdf I don't think affects library searches I think its just about what you can and cannot have as #define in config.h I don't think it matters very much yours Andrew=20 > -----Original Message----- > From: Rainer Machne [mailto:ra...@tb...]=20 > Sent: 14 June 2006 18:41 > To: Andrew Finney > Cc: SOSlib Development > Subject: Re: [SOSlib-devel] internal headers may need to be=20 > in the installation for dynamic compilation + RE: AIX built +=20 > dynamic compilation using gcc + help required[Scanned] >=20 > Andrew >=20 >=20 > > Actually using AC_DEFINE and inserting hardcoded directories into=20 > > config.h is against GNU coding standards >=20 > But the values of these variables (SUNDIALS_CFLAGS etc) are=20 > not hardcoded but actually passed via the commandline=20 > arguments to configure >=20 > ./configure -prefix=3DSOSLIB_INSTALL = --with-sundials=3DSUNDIALS_INSTALL >=20 > or automatically set by the search for specific headers in > config/sundials.m4 in various default directories, e.g. /usr/local >=20 > Am i missing something here? > Are our library searches in the m4 file against GNU coding standards? >=20 > Rainer >=20 >=20 >=20 > On Wed, 14 Jun 2006, Andrew Finney wrote: >=20 > > Rainer > > > > Be aware that some of the 'internal' headers containing structure=20 > > definitions will need to be put into the installation so that the=20 > > dynamic compilation can reach it. > > > > On the build stuff > > > > Actually using AC_DEFINE and inserting hardcoded directories into=20 > > config.h is against GNU coding standards (I assume there is some=20 > > subtlty I can't think of!) according to the automake and=20 > autoconf pdfs > > > > So I plan to add > > > > SUNDIALS_CFLAGS=3D"-I$with_sundials/include > > -DSUNDIALS_INCLUDE=3D$with_sundials/include > > -DSOSLIB_INCLUDE=3D$(includedir)" > > > > etc > > > > to config/sundials.m4 > > > > I'll try it tomorrow > > > > yours Andrew > > > >> -----Original Message----- > >> From: Rainer Machne [mailto:ra...@tb...] > >> Sent: 14 June 2006 17:54 > >> To: Andrew Finney > >> Cc: SOSlib Development > >> Subject: Re: [SOSlib-devel] AIX built + dynamic=20 > compilation using gcc=20 > >> + help required[Scanned] > >> > >> Andrew > >> > >> great news! > >> > >> > >>> Is there a way to have something like: > >>> > >>> #define SUNDIALS_INSTALLATION "/usr/local/" > >>> #define SOSLIB_INSTALLATION "/usr/home/finney" > >> > >> i guess, all we need to do is add some lines like > >> > >> AC_DEFINE([USE_SUNDIALS_SUNDIALS], 1, > >> [Define to 1 to use the SUNDIALS Library]) > >> > >> to the config/sundials.m4 file using the existing variables=20 > >> $SUNDIALS_CFLAGS, $SUNDIALS_LDFLAGS and $SUNDIALS_LIBS that we=20 > >> discussed earlier. Their value is printed as the final=20 > output of the=20 > >> configure process. They already contain the -L and -I switches. > >> > >> The $prefix variable should contain the SOSlib installation path. > >> > >> Maybe these variables could be used directly and you only=20 > need to add=20 > >> the following lines to config/sundials.m4 > >> > >> AC_DEFINE([SUNDIALS_CFLAGS], $SUNDIALS_CFLAGS, > >> [SUNDIALS include directory]) > >> AC_DEFINE([SUNDIALS_LDFLAGS], $SUNDIALS_LDFLAGS, > >> [SUNDIALS lib directory]) > >> AC_DEFINE([SUNDIALS_LIBS], $SUNDIALS_LIBS, > >> [SUNDIALS lib switches]) > >> > >> If we don't want the -L, -I, or the specific include and lib=20 > >> subdirectories we could use sed to remove these and define new=20 > >> variables. > >> > >> For SOSlib directories, the line > >> > >> AC_DEFINE([SOSLIB_INSTALLATION], $prefix, > >> [SSOSlib install directory]) > >> > >> should be in the configure.in file. > >> > >> I think that should do it, but i am also not an expert on this. > >> > >> Xtof, what do you think? > >> > >> Rainer > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> > >> On Wed, 14 Jun 2006, Andrew Finney wrote: > >> > >>> Rainer > >>> > >>> I have managed get SOSlib to build on AIX and more > >> importantly I have > >>> managed to implement dynamic compilation using > >>> g++ and shared libraries the same way as I did for windows > >> using tcc. > >>> The performance seems to be in the same ball park as the > >> compiled code > >>> was achieving on windows. I assumed that tcc is i386 specific. > >>> > >>> I'm effectively working on my own branch as I have not=20 > resolved the=20 > >>> `bug` in the most recent checked in source that's caused > >> our model to > >>> fail. So I'll probably just email you the relevant source files. > >>> I'll try to document all the hacks required to get SOSlib > >> to build on > >>> AIX. > >>> > >>> One issue: > >>> > >>> I need to get hold of the include directory for sundials=20 > and SOSlib=20 > >>> for the dynamic compilation, that is in the code and not in > >> a build file. > >>> All the files use temporary filenames > >>> > >>> Is there a way to have something like: > >>> > >>> #define SUNDIALS_INSTALLATION "/usr/local/" > >>> #define SOSLIB_INSTALLATION "/usr/home/finney" > >>> > >>> or > >>> > >>> #define SUNDIALS_INCLUDE "/usr/local/include" > >>> #define SOSLIB_INCLUDE "/usr/home/finney/include" > >>> > >>> inserted into config.h > >>> > >>> ? > >>> > >>> I assume this means some kind of configure.in hack I'm not > >> exactly a > >>> guru on that so guidance would be nice. > >>> > >>> Background: > >>> > >>> At the moment I have to hard code the include path which is > >> not ideal. > >>> I tried using the same technique as windows: locate the sos=20 > >>> shared/dynamic library and then locate the include > >> directory relative > >>> to that. I ran into a showstopper on that on AIX :=20 > missing struct=20 > >>> definition in the include files. Anyway that's not the > >> ideal approach > >>> using the above would be better in an open-source build=20 > to install=20 > >>> environment. > >>> > >>> yours Andrew > >>> > >>> > >>> > >>> > >>> > >>> > >>> > >>> _______________________________________________ > >>> sbmlsolver-devel mailing list > >>> sbm...@li... > >>> https://lists.sourceforge.net/lists/listinfo/sbmlsolver-devel > >>> > >> > > > > > > _______________________________________________ > > sbmlsolver-devel mailing list > > sbm...@li... > > https://lists.sourceforge.net/lists/listinfo/sbmlsolver-devel > > >=20 |