|
From: Harry M. <man...@ho...> - 2001-11-15 20:11:59
|
Hi Nicholas,
the following is now the Mac OSX section from the INSTALL file. It will be included in the next release of GeneX and will be committed to the CVS tree today or tomorrow.
* Mac OSX - as essentially BSD Unix under the hood, this should be a pretty
straight port and as Daniel E Sabath <dsabath@u.washington.edu> discovered,
it pretty much is.
- Gotchas are that since the g77 package isn't widely available for OSX,
you may have to grab a binary package of R that has it built with another
Fortran compiler, and due to a strange quirk of packaging, Apple has
included the non-GNU version of several file utilities so you'll have to go
get the utilities and compile them yourself. The installer should catch
this deviation and tell you in a (possibly hard to understand) error
message that starts:
"Ugh! What gibberish! The [app] you have certainly does not
taste like GNU [app]."
and then it'll tell you where to get the appropriate one.
- Daniel also mentioned that he had installed Fink:
http://fink.sourceforge.net
which is a collection of unix software and a modified version of the
Debian dpkg package maintenance tools. This may have enabled him to
build xgobi when others failed.
Nicolas Bertrand <nic...@pl...> also had some problems
using a binary installation of R to install the runa.so object file that
CyberT uses. If you're using such an installation, you will probably have
to modify the R_HOME/R/etc/Makeconf file so that these flags are defined as
shown:
SHLIB_CXXLDFLAGS = -bundle -undefined suppress
SHLIB_LDFLAGS = -bundle -flat_namespace -undefined suppress
Thansk for the high wire act...
hjm
Nicolas Bertrand wrote:
>
> Thanks for your help. And sorry I did not get what you meant earlier.
>
> I modified ../R/etc/Makeconf
>
> by adding the -flat_namespace to SHLIB_LDFLAGS as follows:
> SHLIB_CXXLDFLAGS = -bundle -undefined suppress
> SHLIB_EXT = so
> SHLIB_FFLAGS =
> SHLIB_LD = gcc
> SHLIB_LDFLAGS = -bundle -flat_namespace -undefined suppress
> ^
>
> Cheers!
>
> That is perhaps one thing to add to the INSTALL file. It is a problem
> specific to MacOSX v10.1
>
> Nicolas
>
> On Thursday, November 15, 2001, at 10:15 PM, Harry Mangalam wrote:
>
> > Nicolas Bertrand wrote:
> >>
> >> Hello
> >>
> >> On Thursday, November 15, 2001, at 09:47 , Harry Mangalam wrote:
> >>
> >>> OK - this is a Mac OSX-specific problem with R and gcc that I can't
> >>> really help you with except via the grungiest of suggestions.
> >>>
> >>> R's SHLIB command calls gcc with the arguments that you see echoed to
> >>> the screen, so somewhere you cshould be able to set them..
> >>>
> >>> AHA! Brian D. Ripley, one of R's authors, indicates:
> >>>
> >>> http://www.ens.gu.edu.au/robertk/R/help/01a/0881.html
> >>>
> >>> [don't forget that google is your friend..)
> >>>
> >>> that you have to enter these flags in R_HOME/etc/Makeconf as part of
> >>> the CFLAGS string, so you'll probably have to append '-flat_namespace
> >>> -undefined suppress' to the CFLAGS string there. It wasn't
> >>> cleear to me whether you'll have to recompile R to have this take
> >>> effect, but I'd try it without the recompile 1st.
> >>>
> >>> Helpful...?
> >>>
> >>> hjm
> >>>
> >>
> >> I don't exactly know... I installed R from binaries.
> >
> > OK - it should still have installed the R_HOME/etc/Makeconf - does it
> > exist?
> >
> > If so, edit it to add the the options recommended by the guy who gave
> > you the advice previously. ie:
> >
> > CFLAGS = -g -O2 -flat_namespace -undefined suppress
> >
> > Taking a longer look at the file, I see that there are a lot of
> > SHLIB-related flags which might benefit from those options as well.
> > I'm not an R expert, and certainly not on OSX, so your best bet
> > wold be to query the R user group to see if they have a solution:
> >
> > r-...@st...
> >
> > This group is EXCEPTIONALLY good at responding to questions.
> >
> >
> >> cc -bundle -undefined suppress -o runa.so runa.o -L/usr/local/lib
> >> /usr/bin/ld: -undefined error must be used when -twolevel_namespace is
> >> in effect
> >> make: *** [runa.so] Error 1
> >>
> >> Doesn't it mean that runa.so could not be compiled because of a linker
> >> error? I have been advised by Keisuke Fujii to run cc with the
> >> -flat_namespace -undefined supress flags.
> >> That would give the following command to avoid this error:
> >> cc -bundle -flat_namespace -undefined suppress -o runa.so runa.o
> >> -L/usr/local/lib
> >
> > The linker is usually invoked automatically by the compiler if you ask
> > it to produce an object file requiring fn()s from system libs. I THINK
> > that appro flags are essentially passed thru to the
> > linker in this case. Hencve adding these
> >
> >> Which Make has to be modified to had this flag?
> >
> > Seee previous message
> >
> >> !! System Error: No such file or directory @ line: 2190 (cd
> >> /Users/Shared/Downloads/GeneX-Server-1.0.4/CyberT-dist; R SHLIB runa.c)
> >> cp: cannot stat `runa.so': No such file or directory
> >>
> >> !! System Error: No such file or directory @ line: 2195 (cd
> >> /Users/Shared/Downloads/GeneX-Server-1.0.4/CyberT-dist; cp hdarray
> >> runa.c runa.so /usr/local/genex/lib/R/library/hdarray/R/)
> >>
> >> I suspect these errors pop up because runa.so failed to compile, right?
> >
> > Yup.
> >
> > --
> > Cheers, Harry
> >
> > Harry J Mangalam -- (949) 856 2847 (v&f) -- man...@ho...
> > [plain text appreciated]
> >
>
> _______________________________________________
> Genex-dev mailing list
> Gen...@li...
> https://lists.sourceforge.net/lists/listinfo/genex-dev
--
Cheers, Harry
Harry J Mangalam -- (949) 856 2847 (v&f) -- man...@ho...
[plain text appreciated]
|