I’m running into these errors while building Linux LLDB with clang 3.3 right now and r192738 for llvm, clang, and lldb:
/home/mikesart/data/src/llvm.svn/llvm/tools/lldb/source/Plugins/Platform/Windows/PlatformWindows.cpp:114:18: error: redefinition of ‘Initialize’
/home/mikesart/data/src/llvm.svn/llvm/tools/lldb/source/Plugins/Platform/Windows/PlatformWindows.cpp:133:18: error: redefinition of ‘Terminate’
To fix these, I had to undo the change in r192724 (see down below).
I’m also now hitting this error when linking after I fixed the above two though:
/usr/lib/gcc/x86_64-linux-gnu/4.6/…/…/…/…/include/c++/4.6/chrono:535:6: error: no matching constructor for initialization of ‘duration’ (aka ‘std::chrono::duration<long, std::ratio<1, 1000000> >’)
: __d(__t.time_since_epoch())
^ ~~~~~~~~~~~~~~~~~~~~~~
Anyone else seeing this?
Thanks.
-Mike
Michael,
that is correct
I did make the changes to Init/Terminate because somehow the OSX build was confused as to the absence of a definition at link-time. I sent an email to the list asking if anyone had a proper fix for the issue, however to no avail yet
I am planning to see what is wrong there ASAP today, but if this is blocking you more critically, feel free to revert while I take a closer look
With that said, I am not sure what the other problem is, a GCC bug maybe?
Enrico Granata
egranata@.com
27683
With that said, I am not sure what the other problem is, a GCC bug maybe?
I’m using Clang 3.3, but this looks like it might be a bug with libstdc++ 4.6 (see bottom entry on this page):
http://stackoverflow.com/questions/15747223/why-does-this-basic-thread-program-fail-with-clang-but-pass-in-g
Drat. If this is the case, it’s going to cause a lot of people on Ubuntu 12.04 some pain.
In any case, I’ve reverted back to r192702 for now and am working from there - so I’m not blocked at the moment. Not able to sync really either though. 
I’m also behind a firewall here at Valve so I can’t check to see what the Linux buildbot is doing - I’m guessing it’s broken as well?
Thanks Enrico.
-Mike
Thanks Enrico for fixing the OSX build.
We had built on Linux and Windows without issues.
Will look into the issue ASAP.
Thanks,
Deepak
Yes - the Linux and FreeBSD buildbots are both failing the same way.
PlatformWindows.cpp:114:18: error: redefinition of 'Initialize'
PlatformWindows::Initialize(void)
I don't see the problem with the stock FreeBSD 10 toolchain on my
laptop, with clang and libc++.
Given some of the ABI differences I'm reading about on Linux with libc++
and libstdc++, I assume it's a bad idea to build the LLDB so with libc++ on
this platform?
If so, that means we'd need to install gcc 4.7 or gcc 4.8 to build on
Ubuntu 12.04 now, and that's decently painful.
-Mike