[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 12:25:15 PST 2017
The build should be finding the version in the SDK within Xcode. I do have the CommandLineTools directory on my system, but it doesn’t have an SDK directory in it. I wonder if that is causing the problem?
One thing to check, do:
$ xcrun -find clang
Does that find clang in the DeveloperTools directory? If so try:
sudo xcode-select —switch /Applications/Xcode.app
Then everything should point to the toolchain & SDK’s in Xcode. If that doesn’t help you might try moving the DeveloperTools aside and see if things work then. Xcode should not need that to work.
Jim
> On Nov 15, 2017, at 10:33 AM, Pavel Labath <labath at google.com> wrote:
>
> Thanks for the reply, Jim.
>
> As far as I can tell, we already have Xcode on that machine (I only
> have shell access there).
> $ xcodebuild -version
> Xcode 9.1
> Build version 9B55
> $ xcode-select -version
> xcode-select version 2349.
>
>
> BTW, this is the list of Python.h files on that machine:
> /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7/Python.h
> /System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7/Python.h
> /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7/Python.h
>
> I guess you were referring to the third one. That one seems to have
> the "Headers" symlink and everything, but for some reason clang is not
> picking it up. Do I need to run some fancy xcode-select or set some
> environment variables?
>
> I guess the reason I am able to compile lldb just fine is that cmake
> is smart enough to find the right python framework. I'll try comparing
> the cmake command lines with the one we run from dotest.
>
> Additional issue which may complicate things is that this was not a
> clean install, but an upgrade.
>
>
>
> On 15 November 2017 at 18:16, Jim Ingham <jingham at apple.com> wrote:
>> 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.
>>
>> Jim
>>
>>> 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