[LLVMdev] Dynamically loaded passes under OS X
Reid Spencer
reid at x10sys.com
Sun Jan 8 14:55:00 PST 2006
Here's why I was questioning the change to sample/lib/sample Makefile:
make[4]: Entering directory
`/proj/llvm/build/projects/sample/lib/sample'
llvm[4]: Compiling sample.c for Debug build (PIC)
llvm[4]: Linking Debug Shared Library sample.so
llvm[4]: Linking Debug Object Library sample.o
/proj/install/lib/libstdc++.a: member /proj/install/lib/libstdc++.a
(allocator-inst.o) in archive is not an object
collect2: ld returned 1 exit status
make[4]: *** [/proj/llvm/build/projects/sample/Debug/lib/sample.la]
Error 1
Reid.
On Fri, 2006-01-06 at 16:53 -0600, Robert L. Bocchino Jr. wrote:
> When I tried this a while back, the .so file wasn't being built on Mac
> OS X. Now it looks like it is. I got dynamic loading to work
> following the instructions
> in http://llvm.cs.uiuc.edu/docs/WritingAnLLVMPass.html. However,
> there was a typo in the instructions (it should say LOADABLE_MODULE =
> 1), and I fixed that and committed it. I also fixed the
> sample/lib/sample Makefile to conform to these instructions.
>
>
> So problem solved, thanks.
>
>
> Rob
>
> On Jan 6, 2006, at 3:29 PM, Reid Spencer wrote:
>
> > The answer lies in the lib/System/ltdl.c which is the dynamic loader
> > used by LLVM for cross platform dynamic loading. If there are paths
> > or
> > files that we're not looking for on OS/X then that needs to be
> > fixed.
> > Could you be a little more specific about what failures you are
> > experiencing?
> >
> >
> > Reid.
> >
> >
> > On Fri, 2006-01-06 at 14:25 -0600, Robert L. Bocchino Jr. wrote:
> > > Hi,
> > >
> > >
> > >
> > >
> > > In the past, I haven't been able to get dynamically loaded passes
> > > to
> > > work under OS X. When I follow the instructions in the LLVM
> > > documentation, everything works fine for Linux, but OS X has a
> > > different way of handling dynamic loading, and the files that the
> > > dynamic loader is trained to look for don't exist. In the past,
> > > I've
> > > worked around this by just linking all my passes into opt, but
> > > this
> > > isn't going to work for me anymore.
> > >
> > >
> > >
> > >
> > > So how do I get dynamically loaded passes to work on the Mac?
> > > Chris,
> > > you probably know the answer to this since you're a Mac user now.
> > >
> > >
> > >
> > >
> > > Rob
> > >
> > >
> > >
> > >
> > >
> > >
> > > Robert L. Bocchino Jr.
> > >
> > >
> > > Ph.D. Student
> > >
> > >
> > > University of Illinois, Urbana-Champaign
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > > _______________________________________________
> > > LLVM Developers mailing list
> > > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> > > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
> > _______________________________________________
> > LLVM Developers mailing list
> > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
>
>
> Robert L. Bocchino Jr.
>
> Ph.D. Student, Computer Science
>
> University of Illinois, Urbana-Champaign
>
>
>
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20060108/c89b6b1f/attachment.sig>
More information about the llvm-dev
mailing list