[LLVMbugs] [PATCH] Remove useless workaround from llvm-config
Reid Spencer
reid at x10sys.com
Fri Mar 24 07:23:37 PST 2006
On Fri, 2006-03-24 at 08:02 -0500, Eric Kidd wrote:
> On Mar 24, 2006, at 3:08 AM, Reid Spencer wrote:
> > It allows you to specify, in a Makefile:
> >
> > LLVMLIBS := config --libs <components>
> >
> > which invokes 'llvm-config --libs <components>' to derive the library
> > names that should be linked against. The problem is: it doesn't work
> > for even something like Fibonacci. Could you apply this patch to
> > example/Fibonacci/Makefile:
>
> Unfortunately, I don't have time to resync with CVS this morning and
> do a fresh build. :-( Maybe tonight.
I'm in no hurry :)
>
> In the meantime, some suggestions:
>
> 1) You might want to try --libnames instead of --libs. This will
> give you bare library names suitable for in-tree linking.
Okay, perhaps Makefile.rules should automatically supply that option.
>
> 2) If you're missing components, try "llvm-config --components" to
> get a list. The old "JIT" magic corresponds to "--libnames engine
> bcreader scalaropts" in the new system.
That still doesn't work. I get:
llvm[0]: Linking Debug executable Fibonacci
/proj/llvm/llvm2/examples/Fibonacci/Debug/fibonacci.o: In function `ForceInterpreterLinking':
/proj/llvm/llvm2/include/llvm/ExecutionEngine/Interpreter.h:35: undefined reference to `llvm::LinkInInterpreter()'
/proj/llvm/llvm2/Debug/lib/libLLVMTransformUtils.a(LoopSimplify.o): In function `__static_initialization_and_destruction_0':
/proj/llvm/llvm2/include/llvm/Analysis/AliasAnalysis.h:325: undefined reference to `llvm::BasicAAStub()'
/proj/llvm/llvm2/Debug/lib/libLLVMTransformUtils.a(LoopSimplify.o): In function `llvm::PassInfo const* llvm::Pass::getClassPassInfo<llvm::AliasAnalysis>()':
/proj/llvm/llvm2/include/llvm/Pass.h:136: undefined reference to `typeinfo for llvm::AliasAnalysis'
/proj/llvm/llvm2/Debug/lib/libLLVMTransformUtils.a(LoopSimplify.o): In function `llvm::AliasAnalysis* llvm::Pass::getAnalysisToUpdate<llvm::AliasAnalysis>() const':
/proj/llvm/llvm2/include/llvm/PassAnalysisSupport.h:151: undefined reference to `typeinfo for llvm::AliasAnalysis'
collect2: ld returned 1 exit status
make: *** [/proj/llvm/llvm2/Debug/examples/Fibonacci] Error 1
> 3) You'll need to conditionalize anything that uses llvm-config
> using "ifeq ($(HAVE_PERL),1)" unless you're prepared to add Perl as
> an official dependency (which might not go down well with the GCC
> folks).
Yes, that's an issue we'll have to ponder once this is working. The
answer will likely be "no" which means we might need to make llvm-config
a C/C++ program.
>
> Let me know if you have any trouble, and I'll try to resync soon.
Thanks,
Reid.
-------------- 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-bugs/attachments/20060324/8d59c257/attachment.sig>
More information about the llvm-bugs
mailing list