[lldb-dev] Compiling LLDB on Linux, certain types don't exist at all?

Stephen Wilson wilsons at start.ca
Tue Dec 14 22:02:06 PST 2010


austin seipp <as at hacks.yi.org> writes:
> Stephen,
> I've replaced & forked your repository on github and have a change
> that will let it LLDB compile under gcc 4.5. Also tested your branch
> with this change on OS X snow leopard with xcodebuild.

Very nice!  It is *so* helpful to have these changes tested as I do not
have access ATM to a Darwin box.

> Also I fixed a build failure for gcc 4.3 on my linux machine and
> tested it w/ xcodebuild on OS X.

I pulled your changes.  However, I am not too sure about turning off
warnings about VLA's.

The only point I see where a VLA is an issue is in ClangASTContext.cpp
(around line 1217).  In this case, IMHO, it would be much better to use
an llvm::SmallVector instead.

> I'll also be putting warning cleanups and whatnot on my lldb-linux
> branch.

Great!  I feel we need to get all the warnings out of the way before we
even think about supporting the wider LLDB infrastructure (aka "real"
functionality) on Linux.

> I suppose the easiest way would be for you to just pull them
> (pull requests?) into your branch so they can be put into SVN trunk
> soon. 

I will definitely submit a series of patches to the list for review that
at least gets LLDB to compile again on Linux.  So pull requests are fine
and I will queue them up -- I am more than happy to review and post the
changes to the list.

But please do not think of me as a gatekeeper or any kind of authority.
If you send me a patch, that is cool.  If you send one to the list and
it is accepted that is cool too -- I (and everyone else) will pick it

> Git doesn't seem to track the git-svn metadata associated with
> the original svn repository, since I am working from a clone of your
> repository (since I want your changes,) so I can't easily 'svn rebase'
> my master branch and then merge to update my trunk - I'm basically
> left to tracking your repository at the moment. I'll have to figure
> that one out until the svn trunk builds cleanly on linux.

You _could_ just setup a tracking branch so that you do not depend on me
staying active.  For example, if you have a "git svn clone" of the LLDB
repo then try (untested):

    #> git remote add steve git://github.com/eightcien/lldb.git 
    #> git fetch steve
    #> git branch --track steve steve/lldb-linux

The above creates a local branch named "steve" that tracks my lldb-linux
branch on github (so if you have the "steve" branch checked out a "git
pull" will bring in the current changes I have published).  That way
your master branch can stay in sync with LLDB's SVN server and you need
not care if I get hit by a bus :)

However, I will try to stay more active in LLDB development than I have
in the past, so a clone might be just fine.  Time will tell ;)

Take care and thanks a lot!

> Regards,
> Austin


More information about the lldb-dev mailing list