[LLVMdev] How to install poolalloc?

John Criswell jtcriswel at gmail.com
Sat Jan 31 04:30:06 PST 2015


On 1/30/15 11:32 PM, Qiuping Yi wrote:
> Hi, John Criswell
>
> Thank you very much.
>
> I am installing LLVM-3.2, but I encounter the next error when carrying 
> out "make":

Is this error occurring when compiling the version of Clang within 
SAFECode or standard Clang?  If it's the former, you should know that 
you don't need to compile SAFECode to use poolalloc; the SAFECode 
directions just specify how to download and build the correct version of 
LLVM to match the version of poolalloc that you're using.

If you've downloaded Clang to use with LLVM 3.2, did you download Clang 
3.2, or did you download the latest Clang release?

You need to make sure that all the version numbers match (LLVM 3.2, 
Clang 3.2, Poolalloc 3.2).  If they don't match, it won't compile.

Regards,

John Criswell

>
> llvm[3]: Compiling ClangASTNodesEmitter.cpp for Release+Asserts build
> ClangASTNodesEmitter.cpp: In member function ‘std::pair<llvm::Record*, 
> llvm::Record*><unnamed>::ClangASTNodesEmitter::EmitNode(const 
> std::multimap<llvm::Record*, llvm::Record*, std::less<llvm::Record*>, 
> std::allocator<std::pair<llvm::Record* const, llvm::Record*> > >&, 
> llvm::raw_ostream&, llvm::Record*)’:
> ClangASTNodesEmitter.cpp:80: error: ‘nullptr’ was not declared in this 
> scope
> make[3]: *** 
> [/home/guest/installed/llvm-3.2/tools/clang/utils/TableGen/Release+Asserts/ClangASTNodesEmitter.o] 
> Error 1
> make[3]: Leaving directory 
> `/home/guest/installed/llvm-3.2/tools/clang/utils/TableGen'
> make[2]: *** [all] Error 1
> make[2]: Leaving directory `/home/guest/installed/llvm-3.2/tools/clang'
> make[1]: *** [clang/.makeall] Error 2
> make[1]: Leaving directory `/home/guest/installed/llvm-3.2/tools'
> make: *** [all] Error 1
>
> What's wrong? What should I do?
>
>
> --------------------------------------------
> Qiuping Yi
> Institute Of Software
> Chinese Academy of Sciences
>
> On Sat, Jan 31, 2015 at 12:43 AM, John Criswell <jtcriswel at gmail.com 
> <mailto:jtcriswel at gmail.com>> wrote:
>
>     On 1/30/15 10:24 AM, Qiuping Yi wrote:
>>     I am just not upgrade my LLVM. So I must use some higer LLVM
>>     version, right?
>
>     Yes.  For working with poolalloc, I would recommend using LLVM 3.2
>     as we know poolalloc compiles with LLVM 3.2.
>
>     If there's a release_29 branch for poolalloc, you could use that,
>     but you won't get any bug fixes that we added between poolalloc
>     2.9 and poolalloc 3.2.
>
>
>     Regards,
>
>     John Criswell
>
>>
>>
>>     --------------------------------------------
>>     Qiuping Yi
>>     Institute Of Software
>>     Chinese Academy of Sciences
>>
>>     On Fri, Jan 30, 2015 at 11:21 PM, John Criswell
>>     <jtcriswel at gmail.com <mailto:jtcriswel at gmail.com>> wrote:
>>
>>         On 1/30/15 10:17 AM, Qiuping Yi wrote:
>>>         Thank you. But now I am using LLVM 2.9, so which version of
>>>         poolalloc I should use ?
>>
>>         Why are you using LLVM 2.9?  That's an old version of LLVM
>>         (even by my standards).
>>
>>         Is there some other LLVM-based tool that requires that you
>>         use LLVM 2.9?
>>
>>         Regards,
>>
>>         John Criswell
>>
>>
>>>
>>>
>>>         --------------------------------------------
>>>         Qiuping Yi
>>>         Institute Of Software
>>>         Chinese Academy of Sciences
>>>
>>>         On Fri, Jan 30, 2015 at 11:12 PM, John Criswell
>>>         <jtcriswel at gmail.com <mailto:jtcriswel at gmail.com>> wrote:
>>>
>>>             Dear Qiuping,
>>>
>>>             If you use the release_32 branch of poolalloc, then you
>>>             need to use LLVM 3.2.
>>>
>>>             For directions on compiling poolalloc with LLVM 3.2,
>>>             please the SAFECode build directions at
>>>             http://safecode.cs.illinois.edu/docs/Install.html. You
>>>             can just skip the steps in the directions that compile
>>>             SAFECode.
>>>
>>>             Regards,
>>>
>>>             John Criswell
>>>
>>>
>>>             On 1/30/15 10:05 AM, Qiuping Yi wrote:
>>>>             Hi, all
>>>>
>>>>             I want to use the alias analysises in project
>>>>             poolalloc, but I encounter some problem during
>>>>             installing it. I install poolalloc as follow:
>>>>
>>>>             1) cd llvm/projects
>>>>                 svn co
>>>>             http://llvm.org/svn/llvm-project/poolalloc/branches/release_32
>>>>             poolalloc
>>>>             3) cd LLVM-object-directory
>>>>                 make tools-only
>>>>                 cd projects/poolalloc
>>>>                 make
>>>>
>>>>             When I carried out "make", I get the next error
>>>>             information:
>>>>             llvm[2]: Compiling AddressTakenAnalysis.cpp for
>>>>             Release+Asserts build (PIC)
>>>>             AddressTakenAnalysis.cpp:18:30: fatal error:
>>>>             llvm/IR/CallSite.h: No such file or directory
>>>>             compilation terminated.
>>>>             /bin/rm: cannot remove
>>>>             `/home/gu/installed/llvm-2.9/projects/poolalloc/lib/DSA/Release+Asserts/AddressTakenAnalysis.d.tmp':
>>>>             No such file or directory
>>>>             make[2]: ***
>>>>             [/home/gu/installed/llvm-2.9/projects/poolalloc/lib/DSA/Release+Asserts/AddressTakenAnalysis.o]
>>>>             Error 1
>>>>             make[2]: Leaving directory
>>>>             `/home/gu/installed/llvm-2.9/projects/poolalloc/lib/DSA'
>>>>             make[1]: *** [all] Error 1
>>>>             make[1]: Leaving directory
>>>>             `/home/gu/installed/llvm-2.9/projects/poolalloc/lib'
>>>>             make: *** [all] Error 1
>>>>
>>>>             Does poolalloc dependent on some other project which
>>>>             has not been installed now? What should I do for
>>>>             incorrectly installing poolalloc? Thank you all in advance.
>>>>
>>>>             --------------------------------------------
>>>>             Qiuping Yi
>>>>             Institute Of Software
>>>>             Chinese Academy of Sciences
>>>>
>>>>
>>>>             _______________________________________________
>>>>             LLVM Developers mailing list
>>>>             LLVMdev at cs.uiuc.edu  <mailto:LLVMdev at cs.uiuc.edu>          http://llvm.cs.uiuc.edu
>>>>             http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>>>
>>>
>>>             -- 
>>>             John Criswell
>>>             Assistant Professor
>>>             Department of Computer Science, University of Rochester
>>>             http://www.cs.rochester.edu/u/criswell
>>>
>>>
>>
>>
>>         -- 
>>         John Criswell
>>         Assistant Professor
>>         Department of Computer Science, University of Rochester
>>         http://www.cs.rochester.edu/u/criswell
>>
>>
>
>
>     -- 
>     John Criswell
>     Assistant Professor
>     Department of Computer Science, University of Rochester
>     http://www.cs.rochester.edu/u/criswell
>
>


-- 
John Criswell
Assistant Professor
Department of Computer Science, University of Rochester
http://www.cs.rochester.edu/u/criswell

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150131/27078386/attachment.html>


More information about the llvm-dev mailing list