[LLVMdev] Extracting an AST to Graphviz using Clang

Carlos Andrade carlosviansi at gmail.com
Sat Jun 9 14:38:18 PDT 2012


Just to add one more thing. I have been trying to install the gv on my mac
os but I have not been successful either. The gv build requires xaw3d (
http://directory.fsf.org/wiki/Xaw3d ) which apparently has not been updated
for quite few years and the download is not even available anymore.

Carlos Andrade
http://carlosandrade.co



2012/6/9 Carlos Andrade <carlosviansi at gmail.com>

> Hi Joey,
>
> I think there is still something missing.
>
> I ignored the -j as you mentioned and saw on the documentation that to
> compile on debug mode I could do so using:
>
> $./configure --disable-optimized
>
> As a result by the end I compiled llvm2.9 I got:
>
> llvm[0]: ***** Completed Debug Build
> llvm[0]: ***** Note: Debug build can be 10 times slower than an
> llvm[0]: ***** optimized build. Use make ENABLE_OPTIMIZED=1 to
> llvm[0]: ***** make an optimized build. Alternatively you can
> llvm[0]: ***** configure with --enable-optimized.
>
>
> Which lead me to believe I end up getting what you suggested on debug
> mode. I also put clang 2.9 inside /tools/clang (renamed the clang-2-9) so
> that the configure could notice it and ran $make test inside the clang
> folder after it.
>
> Still I executed $ ./clang -cc1 -ast-view smd.c only to get
>
> Stmt::viewAST is only available in debug builds on systems with Graphviz
> or gv!
>
> Mixed up with the output and nothing being show on graphviz. What am I
> missing? Again, I have graphviz but I don't think I have gv and I am
> running an OS X Lion 10.7.4 (latest version).
>
> Thanks,
>
> Carlos Andrade
> http://carlosandrade.co
>
>
>
> 2012/6/9 Joey Gouly <joel.gouly at gmail.com>
>
>> Hi,
>>
>> The -j option just says how many processes are started to parallelise the
>> build.
>>
>> The default option is to build Debug+Asserts, so unless you add any extra
>> arguments when you run './configure', you should be fine!
>>
>> Joey
>>
>>
>> On 9 June 2012 21:29, Carlos Andrade <carlosviansi at gmail.com> wrote:
>>
>>> Hi Joey!
>>>
>>> Thanks I just replied your message on stack and I was actually looking
>>> into this right now. Is this the option? I just wanted to confirm:
>>>
>>>
>>>    - make [-j] - The -j specifies the number of jobs (commands) to run
>>>    simultaneously. This builds both LLVM and Clang for Debug+Asserts mode. The
>>>    --enabled-optimized configure option is used to specify a Release build.
>>>
>>>
>>> The -j parameter is the right one?
>>>
>>> Thank you,
>>>
>>> Carlos Andrade
>>> http://carlosandrade.co
>>>
>>>
>>>
>>> 2012/6/9 Joey Gouly <joel.gouly at gmail.com>
>>>
>>>> Hi Carlos,
>>>>
>>>> You can just download the source code from
>>>> http://llvm.org/releases/download.html#2.9 and then read
>>>> http://llvm.org/docs/GettingStarted.html which should tell you how to
>>>> compile it.
>>>>
>>>> Joey
>>>>
>>>> On 9 June 2012 21:10, Carlos Andrade <carlosviansi at gmail.com> wrote:
>>>>
>>>>> Hi Alex,
>>>>>
>>>>> Would you recommend any specific link in respect on how to compile in
>>>>> debug mode? I downloaded the Mac OS version on the website so I did not
>>>>> compile anything. I am sort of a rookie on bash but I should be able to
>>>>> figure my way around this.
>>>>>
>>>>> Also, is there any particular reason why this functionality is only
>>>>> available on debug mode?
>>>>>
>>>>> Thank you so much for the fast reply, was driving me nuts!
>>>>>
>>>>> Best,
>>>>>
>>>>> Carlos Andrade
>>>>> http://carlosandrade.co
>>>>>
>>>>>
>>>>>
>>>>> 2012/6/9 Alex Rønne Petersen <xtzgzorex at gmail.com>
>>>>>
>>>>>> Hi Carlos,
>>>>>>
>>>>>> > I am new to this list, and hope this question is pertinent to this
>>>>>> mailing
>>>>>> > list.
>>>>>>
>>>>>> Welcome!
>>>>>>
>>>>>> > Stmt::viewAST is only available in debug builds on systems with
>>>>>> Graphviz or
>>>>>> > gv!
>>>>>>
>>>>>> You need to actually build Clang in debug mode for this particular
>>>>>> method to be available, which is very likely why you're seeing this
>>>>>> error. I don't think that Clang builds shipped with Xcode (for
>>>>>> example) are built in debug mode.
>>>>>>
>>>>>> Regards,
>>>>>> Alex
>>>>>>
>>>>>> On Sat, Jun 9, 2012 at 8:54 PM, Carlos Andrade <
>>>>>> carlosviansi at gmail.com> wrote:
>>>>>> > Dears,
>>>>>> >
>>>>>> > I am new to this list, and hope this question is pertinent to this
>>>>>> mailing
>>>>>> > list.
>>>>>> >
>>>>>> > I have been trying to use Clang to extract an AST from my source
>>>>>> code, but
>>>>>> > without success when attempting to do so with Graphviz.
>>>>>> >
>>>>>> > I created a thread on Stackoverflow recently in hope any could help
>>>>>> me [1],
>>>>>> > but the question is actually pretty simple. I keep getting
>>>>>> >
>>>>>> >
>>>>>> > Stmt::viewAST is only available in debug builds on systems with
>>>>>> Graphviz or
>>>>>> > gv!
>>>>>> >
>>>>>> > alongside the code that is output despite having graphviz added to
>>>>>> the path
>>>>>> > and having it installed on my machine. dot works fine from my
>>>>>> console, but I
>>>>>> > have no 'gv' like it is suggested on the documentation (you can
>>>>>> find how I
>>>>>> > attempted that and the versions on the stack link better formatted
>>>>>> than on
>>>>>> > this email).
>>>>>> >
>>>>>> > The command I am running on my console is:
>>>>>> >
>>>>>> > ./clang -cc1 -ast-view smd.c
>>>>>> >
>>>>>> > My graphviz version is 2.28 and my clang version is 2.9 (for a
>>>>>> couple of
>>>>>> > reasons I need to make it work for this version).
>>>>>> >
>>>>>> >
>>>>>> http://stackoverflow.com/questions/10962845/stmtviewast-is-only-available-in-debug-builds-on-systems-with-graphviz-or-gv
>>>>>> >
>>>>>> > I also heard xml output was discontinued, but I still see the
>>>>>> option from
>>>>>> > cc1 to output in such format without any warning message on 2.9
>>>>>> (although no
>>>>>> > apparent output is given in that case), why is that?
>>>>>> >
>>>>>> > Thank you,
>>>>>> >
>>>>>> > Carlos Andrade
>>>>>> > http://carlosandrade.co
>>>>>> >
>>>>>> >
>>>>>> > _______________________________________________
>>>>>> > 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
>>>>>
>>>>>
>>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120609/a709a970/attachment.html>


More information about the llvm-dev mailing list