[LLVMbugs] [Bug 3356] New: using llvm-config --libs results in missing symbols

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Mon Jan 19 19:48:07 PST 2009


http://llvm.org/bugs/show_bug.cgi?id=3356

           Summary: using llvm-config --libs results in missing symbols
           Product: new-bugs
           Version: unspecified
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: new bugs
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: alexei.svitkine at gmail.com
                CC: llvmbugs at cs.uiuc.edu


Consider the following example:

echo "int main(void) { return 0; }" > a.cpp
g++ a.cpp `llvm-config --ldflags` `llvm-config --libs`

The expected result is that a.cpp will compile and link properly. However,
instead there are link errors.

It turns out that LLVMCBase.o and LLVMCClang.o which are both output by
`llvm-config --libs` depend on symbols that are not found in any library given
by `llvm-config --libs`.

Some of the undefined symbols are:

  "llvmc::CompilationGraph::insertEdge(std::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, llvmc::Edge*)",
  "llvmc::CompilationGraph::insertNode(llvmc::Tool*)",
  "_OutputFilename",
  "llvmc::Tool::OutFilename(llvm::sys::Path const&, llvm::sys::Path const&,
bool, char const*) const",

Either the output of `llvm-config --libs` should include the missing libraries,
or LLVMCBase.o and LLVMCClang.o should be removed from that output. This would
allow projects using LLVM to link properly based on the output of `llvm-config
--libs`.


-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list