rpath versus dynlib on MacOS
Ben Abbott
bpabbott at mac.com
Sun Jan 13 09:37:15 CST 2008
On Jan 13, 2008, at 10:05 AM, Thomas Weber wrote:
> Hi,
>
> after revamping Octaviz' build system, I encountered (as in: someone
> told me) a problem with MacOS.
>
> Octaviz builds a shared library. In order for its .oct files to find
> this .so library, I add an rpath under Linux to the build flags.
> It seems MacOS' linker doesn't know rpath, but uses '-bundles'
> instead.
>
> Can someone give me a hint how to use this flag?
>
> In case someone wonders: I don't use mkoctfile, because I want to use
> precompiled headers. Somehow, the precise order of argurments seem to
> matter there, so I must control the order in wich I pass flags to the
> compiler (it's entirely possible that I'm just too stupid, but I
> couldn't get it to work with mkoctfile and it works using plain g++).
>
Thomas, are you asking how to use the "-bundles" flag?
If so, I assume you know it is a linker option. I haven't tried to
compile any oct-files yet. However, for Matlab, I created mex-files
using a makefile. The link phase is
gfortran -funroll-loops -ftree-vectorize -O5 -Wl,-flat_namespace -
undefined suppress -bundle -Wl,-exported_symbols_list,/Applications/
MATLAB_R2007b/extern/lib/maci/fexport.map -o my_mex_function.mexmaci
my_object_code.o /Applications/MATLAB_R2007b/extern/lib/maci/
version4.o -L/Applications/MATLAB_R2007b/bin/maci -lmx -lmex -lmat -lm
I hope that is some help.
Ben
More information about the Help-octave
mailing list