[lldb-dev] lldb test suite on macOS 10.13 (High Sierra)

Jim Ingham via lldb-dev lldb-dev at lists.llvm.org
Wed Nov 15 10:16:18 PST 2017

Xcode and general development on macOS has moved from using headers in the base OS (/System/Library/Frameworks…) for building programs to using SDK’s to contain all the header files.  The installed tools will know how to find the correct SDK.  

On a clean install of 10.13 there are no headers anywhere in the /System/Library/Frameworks frameworks; I’m a little surprised you can build anything w/o an Xcode install.  There’s a “command line tools” package in the Developer tools that puts some stuff back in /usr but that has had some issues, mostly it overwrites the /usr/bin/clang etc. tools that Xcode uses - which are just shims that find the correct version of the tools in the xcode-selected Xcode - with fixed versions of the tools which can lead to subtle errors if you ever try to use Xcode, so I don’t suggest that.

I think you need to put an Xcode install on your bot.


> On Nov 15, 2017, at 8:20 AM, Pavel Labath via lldb-dev <lldb-dev at lists.llvm.org> wrote:
> On a somewhat tangential note:
> Is anyone actually using this crashinfo hook? It looks like this could
> be useful in the old dotest days, when we were running all of the
> tests in a single python process, but now with the parallel test
> runner spawning a new process for each test file and with piping test
> results through a socket, it seems much less useful. If noone is using
> that functionality, maybe we could "fix" the problem by deleting it.
> On 15 November 2017 at 15:17, Pavel Labath <labath at google.com> wrote:
>> Hello lldb-dev,
>> We've just updated our mac buildbot to 10.13.1 (from 10.10.x), and
>> we're having trouble with the lldb test suite. All of the tests are
>> failing with the following error:
>> /Users/lldb_build/lldbSlave/buildDir/llvm/tools/lldb/packages/Python/lldbsuite/test/crashinfo.c:15:10:
>> fatal error: 'Python/Python.h' file not found
>> #include <Python/Python.h>
>>         ^~~~~~~~~~~~~~~~~
>> 1 error generated.
>> Traceback (most recent call last):
>>  File "/Users/lldb_build/lldbSlave/buildDir/scripts/../llvm/tools/lldb/test/dotest.py",
>> line 7, in <module>
>>    lldbsuite.test.run_suite()
>>  File "/Users/lldb_build/lldbSlave/buildDir/llvm/tools/lldb/packages/Python/lldbsuite/test/dotest.py",
>> line 1120, in run_suite
>>    configuration.setupCrashInfoHook()
>>  File "/Users/lldb_build/lldbSlave/buildDir/llvm/tools/lldb/packages/Python/lldbsuite/test/configuration.py",
>> line 51, in setupCrashInfoHook
>>    raise Exception('command failed: "{}"'.format(cmd))
>> Exception: command failed: "SDKROOT= xcrun clang
>> /Users/lldb_build/lldbSlave/buildDir/llvm/tools/lldb/packages/Python/lldbsuite/test/crashinfo.c
>> -o /Users/lldb_build/lldbSlave/buildDir/llvm/tools/lldb/packages/Python/lldbsuite/test/crashinfo.so
>> -framework Python -Xlinker -dylib"
>> It seems that this is happening because the buildbot is missing the
>> /System/Library/Frameworks/Python.framework/Headers symlink (this link
>> is present on my mac machine, which is still on 10.12). The rest of
>> the framework seems to be there (e.g. the file
>> /System/Library/Frameworks/Python.framework/Versions/Current/include/python2.7/Python.h
>> is present), just this symlink is missing. I cannot even create it
>> manually as System Integrity Protection will not let me do that.
>> Do you have any idea what went wrong?
>> thanks,
>> pl
>> PS: If it helps anything, the version reported by clang is:
>> Apple LLVM version 9.0.0 (clang-900.0.38)
>> Target: x86_64-apple-darwin17.2.0
>> Thread model: posix
>> InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
> _______________________________________________
> lldb-dev mailing list
> lldb-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-dev

More information about the lldb-dev mailing list