Servo: Unable to build Servo on a Mac with Xcode 10 (crash / freeze)

Created on 24 Sep 2018  ยท  38Comments  ยท  Source: servo/servo

I've recently noticed(in the last week) that it has become impossible to do a successful ./mach build -d -p servo on a machine with 4GB of RAM.

At the dsymutil stage of the build, memory usage skyrockets, the UI becomes unresponsive, and finally the machine reboots...

For the past two years, it was always quite slow, however with enough patience it was possible. dsymutil was always the most memory-consuming part, yet it would build-up slowly instead of skyrocketing like it seems to be doing now.

My machine is probably coming towards the end of it's lifetime, so this might be a temporary problem for me personally, however, I am wondering if we're not setting the bar too high for new contributors in terms of machine specs? A slow build is one thing, an impossible one is quite another...

I'm also wondering what caused this sudden change in behavior of the build? Could this be prevented with a flag of some sorts? I remember a while back I had a problem of too much memory usage with dsymutil(although not to the point of reboot) because both libsimpleservo and libservo would build, and using the -p servo flag solved that.

Could be related to https://github.com/servo/servo/issues/21745

A-build P-mac

Most helpful comment

tl;dr: The reason why the linker can't find lstd++ is because Apple no longer places the /usr/include directory when installing XCode 10 and CLI tools. You need to run the package in /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg after installing the command line tools with xcode-select --install.

I was experiencing the issue noted by @Walther here as well as here and was unsatisfied by the 'install xcode 9' solution. I experienced the linking issue on 10.14.1 and 10.14.2 with no relief. I started digging and eventually found this stackoverflow post that also explained issues I was having with Homebrew. The /usr/include/ directory is no longer being placed by Apple when installing XCode/XCode CLI tools. The net result is random breaks when installing certain packages from Homebrew. More importantly, unix-style build chain tools malfunction on OS X Mojave with XCode 10. Apple actually notes this in the release notes for XCode 10.

The Command Line Tools package installs the macOS system headers inside the macOS SDK. Software that compiles with the installed tools will search for headers within the macOS SDK provided by either Xcode at:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk
or the Command Line Tools at:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
depending on which is selected using xcode-select.

The command line tools will search the SDK for system headers by default. However, some software may fail to build correctly against the SDK and require macOS headers to be installed in the base system under /usr/include. If you are the maintainer of such software, we encourage you to update your project to work with the SDK or file a bug report for issues that are preventing you from doing so. As a workaround, an extra package is provided which will install the headers to the base system. In a future release, this package will no longer be provided. You can find this package at:
/Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg
To make sure that you're using the intended version of the command line tools, run xcode-select -s <path to Xcode> or xcode select -s /Library/Developer/CommandLineTools after installing.

With respect to the freezing/crash issue, I observed during the compilation of layout-thread, rustc uses about 5.5 gb of memory. On Macs with <8 GB of ram I can see that causing freezes/crashes. During the compilation of libservo, the wired memory usage on my MBP topped 13 GB, though I couldn't find which process it was being attributed to. My MBP started freezing up and lead to me panic closing every application. My guess is its either some sort of bug in 10.14.x that the final linking causes to go bonkers or something is opening too many file handles. I'll dig some more now that I'm able to successfully compile.

All 38 comments

By the way, ./mach build -r -p servo still works fine, and there is perhaps something we can improve about the feedback received when trying to run the wpt tests after having done a release build.

Currently, doing ./mach test-wpt will print out "The dev profile is not built. Please run './mach build' and try again."

This actually gave me the impression that the wpt tests can only be run with a dev profile, while actually doing a /.mach test-wpt <name of the test> --relase will work fine.

I'm assuming using the dev build will be crucial for some type of debugging, yet for someone currently unable to do a ./mach build -d due to machine specs, using a release profile to run the unit-test might be a good solution to be aware of, instead of rushing to the store to buy a new machine :)

see https://github.com/servo/servo/blob/647796ede66ad84acf6239d8b556ee3735bfc6a6/python/servo/command_base.py#L396

from a quick glance I would actually expect this conditional to return the release path in case it has been build, and no other argument have been passed to the command:
https://github.com/servo/servo/blob/647796ede66ad84acf6239d8b556ee3735bfc6a6/python/servo/command_base.py#L390

It instead appears that dev is True by default(although not in the function signature) when doing a ./mach test-wpt without further arguments...

We could also change the print statement to read something like: "The dev profile is not built and you haven't specified --release. Please build a dev profile or specify that you want to use a release profile".

Finally, here is an idea the feasibility of which I have no idea about: could we make debug builds granular to the level of crates? For example if I'm working on script, I don't really need all the others to be debug builds, and I assume only building one crate as debug will save a lot of work at compile time?

It instead appears that dev is True by default

I think there is no default between dev and release, unless maybe you specified one in a .servobuild file?

I'm running into this issue as well. On my Mac, which is very recent (2016, 16 GB), at link time, the OS becomes unresponsive to a point that I can't do any work, for about 5 minutes, then my Mac restarts.

dsymutil + kernel_tasks are full CPU/memory.

This is fairly recent.

This is really annoying. I'm going to bisect and see when this started.

I'd like to report that I have same issue like @paulrouget and my Mac is 2017 16GB.

dsymutil + kernel_tasks are full CPU/memory

After monitoring with htop, I have same issue when compiling on libservo and libsimpleservo

@CYBAI @gterzian @codehag can you please check in the App Store app if you recently updated Xcode 10.0 and/or Command Line Tool 10.0 - and if so, see if the date of the update might correlate with this bug?

@paulrouget Interesting. my last successful build was on September 19th, and I updated Xcode on September 20. It could be related

@paulrouget Yes, I updated Xcode to 10.0 on 9/18 and I think my last successful build was on 9/15 (https://github.com/servo/servo/pull/20755#issuecomment-421538780).

image

Yes I also installed version 10.0 of the command line tools on Sept 18, and I think the last successful build would have been from before that(I was only using test-unit and ./mach check recently)

I think there is no default between dev and release, unless maybe you specified one in a .servobuild file?

I didn't find a .servobuild locally, and I also haven't had time to go through the Python code, but from a quick print it did appear that dev was True at https://github.com/servo/servo/blob/647796ede66ad84acf6239d8b556ee3735bfc6a6/python/servo/command_base.py#L390 without any arguments passed to ./mach test-wpt...

So reverting to xcode 9.4.1 appears to solve the problem.

It's a temporary workaround, but here is how to do it:

@paulrouget Great! The workaround works for me, too! Thanks!

It appears to be solved. Not sure what has been updated.

Can someone else confirm?

PS: you might run into this issue: https://github.com/servo/mozjs/issues/156 - if you do, mach clean and MACOSX_DEPLOYMENT_TARGET=10.14 ./mach build -d will work around the issue.

Tried to build Servo, ran into the aforementioned mozjs issue. The provided workaround of specifying MACOSX_DEPLOYMENT_TARGET=10.14 got me through the mozjs stage of the build.

However, building servo still failed with = note: ld: library not found for -lstdc++ (see my comment here for full log)

Upgraded to MacOS 10.14.1, entire servo compiled without even specifying target. So this was definitely related to something in 10.14

The 10.14.1 updated fixed the mozjs issue.

The initial issue is not fixed, even though it's not as bad as before. My (recent) macbook pro doesn't crash, but freeze for some time.

tl;dr: The reason why the linker can't find lstd++ is because Apple no longer places the /usr/include directory when installing XCode 10 and CLI tools. You need to run the package in /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg after installing the command line tools with xcode-select --install.

I was experiencing the issue noted by @Walther here as well as here and was unsatisfied by the 'install xcode 9' solution. I experienced the linking issue on 10.14.1 and 10.14.2 with no relief. I started digging and eventually found this stackoverflow post that also explained issues I was having with Homebrew. The /usr/include/ directory is no longer being placed by Apple when installing XCode/XCode CLI tools. The net result is random breaks when installing certain packages from Homebrew. More importantly, unix-style build chain tools malfunction on OS X Mojave with XCode 10. Apple actually notes this in the release notes for XCode 10.

The Command Line Tools package installs the macOS system headers inside the macOS SDK. Software that compiles with the installed tools will search for headers within the macOS SDK provided by either Xcode at:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk
or the Command Line Tools at:
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
depending on which is selected using xcode-select.

The command line tools will search the SDK for system headers by default. However, some software may fail to build correctly against the SDK and require macOS headers to be installed in the base system under /usr/include. If you are the maintainer of such software, we encourage you to update your project to work with the SDK or file a bug report for issues that are preventing you from doing so. As a workaround, an extra package is provided which will install the headers to the base system. In a future release, this package will no longer be provided. You can find this package at:
/Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg
To make sure that you're using the intended version of the command line tools, run xcode-select -s <path to Xcode> or xcode select -s /Library/Developer/CommandLineTools after installing.

With respect to the freezing/crash issue, I observed during the compilation of layout-thread, rustc uses about 5.5 gb of memory. On Macs with <8 GB of ram I can see that causing freezes/crashes. During the compilation of libservo, the wired memory usage on my MBP topped 13 GB, though I couldn't find which process it was being attributed to. My MBP started freezing up and lead to me panic closing every application. My guess is its either some sort of bug in 10.14.x that the final linking causes to go bonkers or something is opening too many file handles. I'll dig some more now that I'm able to successfully compile.

I got the same issue on my macbook pro i7, macOS 10.14.2, 16G memory. It stuck on

Building [=======================================================>] 513/514: servo(bin)

more than 1 hour.

The GUI is unresponsive and so can't do anything else ๐Ÿ˜‚

The only thing I saw is llvm-dsymutil eaten up all my memory

@azy5030 @learning does installing the macOS_SDK_headers_for_macOS_10.14.pkg package help at all?

I don't run into this freeze anymore. I thought it might be because of some homebrew/xcode update. But I also remember installing that pkg:

open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg
./mach clean
./mach build -d

@paulrouget Not sure, never install that package, I use homebrew to manage all of it. I'll try that later
After all, the build process is complete!
The only thing annoying me is that I can't do anything else while building servo ๐Ÿ˜‚
Here's a screenshot for the memory usage
memory usage

macOS_SDK_headers_for_macOS_10.14.pkg dosen't help on my mac ๐Ÿค•

Using:

  • MacBook Pro 3.3 GHz Intel Core i7
  • OSX 10.14.1 (18B75)
  • Xcode 10.1 (10B61)
  • Apple LLVM version 10.0.0 (clang-1000.11.45.5)

An Android Release build doesn't freeze my laptop.

Using:

  • MacBook Pro 3.3 GHz Intel Core i7
  • OSX 10.14.1 (18B75)
  • Xcode 10.1 (10B61)
  • Apple LLVM version 10.0.0 (clang-1000.11.45.5)

A OSX debug build does freeze my laptop.

Using:

  • MacBook Pro 3.3 GHz Intel Core i7
  • OSX 10.14.1 (18B75)
  • Xcode 10.1 (10B61)
  • Apple LLVM version 10.0.0 (clang-1000.11.45.5)

A OSX release build does not freeze my laptop.

Using:

  • MacBook Pro 3.3 GHz Intel Core i7
  • OSX 10.14.1 (18B75)
  • Xcode 10.1 (10B61)
  • Apple LLVM version 10.0.0 (clang-1000.11.45.5)

A OSX release build does not freeze my laptop.

The same with me, release build never freeze my mac

The original Apple bug was marked as duplicate. I do not have access to the other bug. But since things have changed a bit (new versions of xcode/llvm and no crash anymore) I filed a new bug:

https://bugreport.apple.com/web/?problemID=47472764

According to Apple, Xcode 10.2 beta 1 (10P82s) would fix this problem: https://developer.apple.com/download/

It appears to work here. Can someone else give it a try?

xcode-select -s Xcode-beta.app
./mach clean # make sure to also wipe any mozjs artifacts
./mach build -d

I'm gonna go ahead and close the bug on Apple's side. Memory doesn't blow up anymore, and there is not perceptible freeze.

I will keep this issue open until Apple officially release Xcode 10.2.

For now, if you want to work around the problem, install Xcode 10.2 beta, xcode-select -s ./Xcode-beta.app, then mach clean, and rebuild servo.

I just upgraded my macOS to 10.14.4 which includes Xcode 10.2 (https://developer.apple.com/documentation/macos_release_notes/macos_mojave_10_14_4_release_notes).

However, I will still be freezed with Xcode that I need to keep using the Xcode-beta ๐Ÿค”

Oops, didn't see that I need to upgrade Xcode again from App Store... Will try to build Servo with new released Xcode again later.

Cheers!! I can build successfully with official Xcode 10.2 now!! ๐ŸŽ‰๐ŸŽ‰๐ŸŽ‰

ฮป cybai [codespace/mozilla/servo] at master
โ†’ ./mach clean
Removing virtualenv directory: /Users/cybai/codespace/mozilla/servo/python/_virtualenv

ฮป cybai [codespace/mozilla/servo] at master
โ†’ xcode-select --version
xcode-select version 2354.

ฮป cybai [codespace/mozilla/servo] at master
โ†’ xcode-select -p
/Applications/Xcode-beta.app/Contents/Developer

ฮป cybai [codespace/mozilla/servo] at master
โ†’ sudo xcode-select -s /Applications/Xcode.app
Password:

ฮป cybai [codespace/mozilla/servo] at master
โ†’ ./mach build -d                                                                                                                                                           [c9b5b8fad3]
   Compiling proc-macro2 v0.4.26
   Compiling unicode-xid v0.1.0
   Compiling version_check v0.1.4
   Compiling libc v0.2.44
   Compiling cc v1.0.18
   Compiling cfg-if v0.1.6
   Compiling ucd-util v0.1.1
   Compiling lazy_static v1.2.0
   Compiling serde v1.0.80
   Compiling siphasher v0.2.2
   Compiling rand_core v0.2.1
   Compiling nodrop v0.1.12
   Compiling glob v0.2.11
   Compiling rustc-demangle v0.1.4
   Compiling regex v1.0.6
   Compiling quick-error v1.2.1
   Compiling byteorder v1.2.7
   Compiling utf8-ranges v1.0.2
   Compiling unicode-width v0.1.4
   Compiling num-traits v0.2.4
   Compiling void v1.0.2
   Compiling scopeguard v0.3.2
   Compiling memoffset v0.2.1
   Compiling crossbeam-utils v0.5.0
   Compiling typenum v1.10.0
   Compiling bitflags v1.0.3
   Compiling stable_deref_trait v1.0.0
   Compiling ansi_term v0.10.2
   Compiling vec_map v0.8.0
   Compiling termcolor v1.0.4
   Compiling bindgen v0.46.0
   Compiling lazycell v1.0.0
   Compiling strsim v0.6.0
   Compiling slab v0.4.1
   Compiling string_cache_shared v0.3.0
   Compiling futures v0.1.23
   Compiling pkg-config v0.3.14
   Compiling encoding_rs v0.8.12
   Compiling itoa v0.4.1
   Compiling peeking_take_while v0.1.2
   Compiling dtoa v0.4.1
   Compiling core-foundation-sys v0.6.2
   Compiling mac v0.1.1
   Compiling byte-tools v0.2.0
   Compiling matches v0.1.4
   Compiling httparse v1.3.2
   Compiling fnv v1.0.6
   Compiling arrayref v0.3.5
   Compiling foreign-types-shared v0.1.1
   Compiling precomputed-hash v0.1.1
   Compiling safemem v0.2.0
   Compiling indexmap v1.0.2
   Compiling string v0.1.1
   Compiling khronos_api v3.0.0
   Compiling fake-simd v0.1.2
   Compiling procedural-masquerade v0.1.6
   Compiling try-lock v0.2.2
   Compiling remove_dir_all v0.5.1
   Compiling unicode-normalization v0.1.5
   Compiling thin-slice v0.1.1
   Compiling unicode-segmentation v1.2.0
   Compiling xml-rs v0.8.0
   Compiling percent-encoding v1.0.0
   Compiling smallbitvec v2.3.0
   Compiling num-integer v0.1.38
   Compiling rayon-core v1.4.1
   Compiling num-derive v0.2.3
   Compiling num-rational v0.2.1
   Compiling byte-tools v0.3.0
   Compiling num-iter v0.1.37
   Compiling gstreamer v0.13.0
   Compiling adler32 v1.0.3
   Compiling either v1.1.0
   Compiling opaque-debug v0.2.1
   Compiling gstreamer-base v0.13.0
   Compiling muldiv v0.2.0
   Compiling lzw v0.10.0
   Compiling ident_case v1.0.0
   Compiling color_quant v1.0.0
   Compiling block v0.1.6
   Compiling gstreamer-sdp v0.13.0
   Compiling getopts v0.2.17
   Compiling build_const v0.2.1
   Compiling gstreamer-video v0.13.0
   Compiling safe-transmute v0.10.1
   Compiling fixedbitset v0.1.9
   Compiling ordermap v0.3.5
   Compiling scoped_threadpool v0.1.7
   Compiling same-file v1.0.2
   Compiling gstreamer-app v0.13.0
   Compiling signpost v0.1.0 (https://github.com/pcwalton/signpost.git#7ed71250)
   Compiling servo-media-streams v0.1.0 (https://github.com/servo/media#a5a84900)
   Compiling boxfnonce v0.1.0
   Compiling gstreamer-webrtc v0.13.0
   Compiling gstreamer-audio v0.13.0
   Compiling gstreamer-player v0.13.0
   Compiling openssl v0.10.11
   Compiling leak v0.1.2
   Compiling gstreamer-gl v0.13.0
   Compiling byte-slice-cast v0.2.0
   Compiling alloc-no-stdlib v2.0.0
   Compiling crc32fast v1.1.2
   Compiling binary-space-partition v0.1.2
   Compiling hyper-openssl v0.7.0
   Compiling atomic_refcell v0.1.0
   Compiling thread_profiler v0.1.3
   Compiling linked-hash-map v0.5.1
   Compiling sha1 v0.6.0
   Compiling hex v0.3.2
   Compiling antidote v1.0.0
   Compiling ucd v0.1.1
   Compiling xi-unicode v0.1.0
   Compiling threadpool v1.3.2
   Compiling mitochondria v1.1.2
   Compiling ref_filter_map v1.0.1
   Compiling swapper v0.1.0
   Compiling script_plugins v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/script_plugins)
   Compiling ref_slice v1.1.1
   Compiling half v1.0.0
   Compiling osmesa-src v0.1.0 (https://github.com/servo/osmesa-src#97f4613f)
   Compiling histogram v0.6.8
   Compiling log v0.4.6
   Compiling crossbeam-utils v0.2.2
   Compiling thread_local v0.3.6
   Compiling regex-syntax v0.6.3
   Compiling memchr v2.1.1
   Compiling unicase v1.4.2
   Compiling unicase v2.1.0
   Compiling arrayvec v0.4.6
   Compiling array-init v0.0.4
   Compiling humantime v1.1.1
   Compiling fxhash v0.2.1
   Compiling base64 v0.10.1
   Compiling textwrap v0.9.0
   Compiling clang-sys v0.26.3
   Compiling unreachable v1.0.0
   Compiling libloading v0.5.0
   Compiling mozjs v0.10.0
   Compiling cmake v0.1.29
   Compiling miniz-sys v0.1.10
   Compiling jemalloc-sys v0.1.4
   Compiling miniz_oxide_c_api v0.1.3
   Compiling tinyfiledialogs v3.3.5
   Compiling mozangle v0.1.7
   Compiling task_info v0.0.1 (/Users/cybai/codespace/mozilla/servo/support/rust-task_info)
   Compiling servo v0.0.1 (/Users/cybai/codespace/mozilla/servo/ports/servo)
   Compiling hashbrown v0.1.7
   Compiling owning_ref v0.4.0
   Compiling servo_arc v0.1.1 (/Users/cybai/codespace/mozilla/servo/components/servo_arc)
   Compiling utf-8 v0.7.1
   Compiling block-buffer v0.3.3
   Compiling foreign-types v0.3.2
   Compiling dtoa-short v0.3.0
   Compiling base64 v0.9.2
   Compiling libz-sys v1.0.18
   Compiling glib-sys v0.8.0
   Compiling gobject-sys v0.8.0
   Compiling gstreamer-sys v0.7.0
   Compiling gstreamer-base-sys v0.7.0
   Compiling gstreamer-sdp-sys v0.7.0
   Compiling gstreamer-video-sys v0.7.0
   Compiling gstreamer-audio-sys v0.7.0
   Compiling gstreamer-player-sys v0.7.0
   Compiling gstreamer-gl-sys v0.7.0
   Compiling gstreamer-app-sys v0.7.0
   Compiling openssl-sys v0.9.35
   Compiling gstreamer-webrtc-sys v0.7.0
   Compiling block-padding v0.1.2
   Compiling itertools v0.8.0
   Compiling inflate v0.4.3
   Compiling deflate v0.7.19
   Compiling gif v0.10.0
   Compiling crc v1.8.1
   Compiling walkdir v2.2.7
   Compiling leaky-cow v0.1.1
   Compiling alloc-stdlib v0.2.1
   Compiling petgraph v0.4.13
   Compiling tokio-executor v0.1.4
   Compiling linked_hash_set v0.1.3
   Compiling want v0.0.6
   Compiling servo-media-webrtc v0.1.0 (https://github.com/servo/media#a5a84900)
   Compiling servo_remutex v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/remutex)
   Compiling crossbeam-epoch v0.5.2
   Compiling crossbeam-epoch v0.6.0
   Compiling crossbeam-epoch v0.3.1
   Compiling uluru v0.3.0
   Compiling blurmock v0.1.3
   Compiling new_debug_unreachable v1.0.1
   Compiling harfbuzz-sys v0.2.1
   Compiling expat-sys v2.1.6
   Compiling fontsan v0.4.0 (https://github.com/servo/fontsan#29e879c8)
   Compiling servo-skia v0.30000020.1
   Compiling heartbeats-simple-sys v0.4.1
   Compiling azure v0.35.0 (https://github.com/servo/rust-azure#5c648f2b)
   Compiling lock_api v0.1.5
   Compiling brotli-decompressor v2.1.3
   Compiling style v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/style)
   Compiling tokio-timer v0.2.6
   Compiling tokio-current-thread v0.1.1
   Compiling crossbeam-deque v0.6.1
   Compiling crossbeam-deque v0.2.0
   Compiling futf v0.1.4
   Compiling iovec v0.1.2
   Compiling rand v0.5.5
   Compiling backtrace v0.3.9
   Compiling net2 v0.2.33
   Compiling atty v0.2.11
   Compiling rand v0.4.2
   Compiling num_cpus v1.4.0
   Compiling time v0.1.42
   Compiling hashglobe v0.1.0 (/Users/cybai/codespace/mozilla/servo/components/hashglobe)
   Compiling malloc_buf v0.0.6
   Compiling dirs v1.0.2
   Compiling shared_library v0.1.8
   Compiling miniz_oxide v0.1.3
   Compiling mach v0.2.3
   Compiling sig v1.0.0
   Compiling generic-array v0.9.0
   Compiling generic-array v0.12.0
   Compiling core-foundation v0.6.2
   Compiling gl_generator v0.10.0
   Compiling quote v0.6.3
   Compiling libflate v0.1.19
   Compiling ordered-float v1.0.0
   Compiling immeta v0.4.0
   Compiling phf_shared v0.7.23
   Compiling mime v0.3.13
   Compiling tendril v0.4.1
   Compiling brotli v3.1.5
   Compiling aho-corasick v0.6.9
   Compiling nom v4.1.1
   Compiling bytes v0.4.9
   Compiling failure v0.1.3
   Compiling gaol v0.2.0 (https://github.com/servo/gaol#3882c7f7)
   Compiling clap v2.28.0
   Compiling tokio-threadpool v0.1.6
   Compiling futures-cpupool v0.1.8
   Compiling mio v0.6.16
   Compiling objc v0.2.3
   Compiling cookie v0.11.0
   Compiling tempfile v3.0.2
   Compiling osmesa-sys v0.1.2
   Compiling digest v0.7.6
   Compiling block-buffer v0.7.0
   Compiling digest v0.8.0
   Compiling syn v0.15.22
   Compiling core-graphics v0.17.3
   Compiling chrono v0.4.2
   Compiling gleam v0.6.13
   Compiling glutin v0.19.0
   Compiling offscreen_gl_context v0.22.0
   Compiling phf_generator v0.7.23
   Compiling phf v0.7.23
   Compiling unicode-script v0.2.0
   Compiling tokio-io v0.1.8
   Compiling http v0.1.14
   Compiling heartbeats-simple v0.4.0
   Compiling servo_allocator v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/allocator)
   Compiling which v2.0.1
   Compiling cexpr v0.3.3
   Compiling objc_id v0.1.0
   Compiling blurmac v0.1.0 (https://github.com/servo/devices#cb28c472)
   Compiling rayon v1.0.0
   Compiling mio-uds v0.6.7
   Compiling mio-extras v2.0.5
   Compiling sha-1 v0.7.0
   Compiling sha2 v0.8.0
   Compiling cocoa v0.18.4
   Compiling core-text v13.1.0
   Compiling flate2 v1.0.1
   Compiling png v0.14.0
   Compiling glib v0.7.1
   Compiling serde_derive v1.0.80
   Compiling cssparser v0.25.1
   Compiling euclid_macros v0.1.0
   Compiling synstructure v0.10.1
   Compiling headers-derive v0.0.1
   Compiling derive_more v0.13.0
   Compiling darling_core v0.8.0
   Compiling servo_config_plugins v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/config_plugins)
   Compiling servo_media_derive v0.1.0 (https://github.com/servo/media#a5a84900)
   Compiling html5ever v0.22.5
   Compiling cstr-macros v0.1.5
   Compiling enum-iterator-derive v0.2.3
   Compiling domobject_derive v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/domobject_derive)
   Compiling dom_struct v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/dom_struct)
   Compiling string_cache_codegen v0.4.2
   Compiling phf_codegen v0.7.23
   Compiling tokio-reactor v0.1.3
   Compiling tokio-codec v0.1.0
   Compiling tokio-fs v0.1.3
   Compiling tokio-openssl v0.3.0
   Compiling objc-foundation v0.1.1
   Compiling device v0.0.1 (https://github.com/servo/devices#cb28c472)
   Compiling jpeg-decoder v0.1.14
   Compiling headers-core v0.0.1
   Compiling h2 v0.1.12
   Compiling env_logger v0.6.0
   Compiling caseless v0.2.1
   Compiling webrender_build v0.0.1 (https://github.com/servo/webrender#e53aae02)
   Compiling winit v0.18.0
   Compiling malloc_size_of_derive v0.1.0
   Compiling jstraceable_derive v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/jstraceable_derive)
   Compiling deny_public_fields v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/deny_public_fields)
   Compiling tiff v0.2.1
   Compiling darling_macro v0.8.0
   Compiling cstr v0.1.7
   Compiling enum-iterator v0.2.0
   Compiling cssparser-macros v0.3.5
   Compiling selectors v0.21.0 (/Users/cybai/codespace/mozilla/servo/components/selectors)
   Compiling mime_guess v2.0.0-alpha.6
   Compiling string_cache v0.7.3
   Compiling servo_atoms v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/atoms)
   Compiling tokio-udp v0.1.2
   Compiling tokio-tcp v0.1.1
   Compiling tokio-uds v0.2.1
   Compiling clipboard v0.5.0
   Compiling headers-ext v0.0.3
   Compiling webrender v0.60.0 (https://github.com/servo/webrender#e53aae02)
   Compiling image v0.21.0
   Compiling darling v0.8.0
   Compiling tokio v0.1.8
   Compiling smallvec v0.6.7
   Compiling serde_json v1.0.13
   Compiling app_units v0.7.0
   Compiling euclid v0.19.5
   Compiling bincode v1.0.0
   Compiling unicode-bidi v0.3.3
   Compiling uuid v0.7.1
   Compiling serde_bytes v0.10.4
   Compiling keyboard-types v0.4.4
   Compiling toml v0.4.5
   Compiling ron v0.1.7
   Compiling style_derive v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/style_derive)
   Compiling cgl v0.2.3
   Compiling mozjs_sys v0.61.6
   Compiling rust-webvr v0.10.2
   Compiling hyper v0.12.14
   Compiling parking_lot_core v0.2.13
   Compiling fallible v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/fallible)
   Compiling servo_rand v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/rand)
   Compiling markup5ever v0.7.5
   Compiling script v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/script)
   Compiling wr_malloc_size_of v0.0.1 (https://github.com/servo/webrender#e53aae02)
   Compiling servo-media-audio v0.1.0 (https://github.com/servo/media#a5a84900)
   Compiling plane-split v0.13.7
   Compiling idna v0.1.4
   Compiling io-surface v0.11.1
   Compiling compositing v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/compositing)
   Compiling parking_lot v0.6.3
   Compiling url v1.7.2
   Compiling hyper_serde v0.9.0
   Compiling crossbeam-channel v0.3.0
   Compiling url_serde v0.2.0
   Compiling ws v0.7.9
   Compiling influent v0.5.1
   Compiling webdriver v0.38.1
   Compiling ipc-channel v0.11.2
   Compiling xml5ever v0.12.1
   Compiling debugger v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/debugger)
   Compiling webrender_api v0.60.0 (https://github.com/servo/webrender#e53aae02)
   Compiling rust-webvr-api v0.10.4
   Compiling servo-media-player v0.1.0 (https://github.com/servo/media#a5a84900)
   Compiling servo-media v0.1.0 (https://github.com/servo/media#a5a84900)
   Compiling servo-media-gstreamer v0.1.0 (https://github.com/servo/media#a5a84900)
   Compiling servo-media-auto v0.1.0 (https://github.com/servo/media#a5a84900)
warning: redundant linker flag specified for library `c++`

   Compiling malloc_size_of v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/malloc_size_of)
   Compiling servo_url v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/url)
   Compiling msg v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/msg)
   Compiling range v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/range)
   Compiling pixels v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/pixels)
   Compiling gfx_traits v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/gfx_traits)
   Compiling style_traits v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/style_traits)
   Compiling servo_geometry v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/geometry)
   Compiling embedder_traits v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/embedder_traits)
   Compiling webvr_traits v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/webvr_traits)
   Compiling devtools_traits v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/devtools_traits)
   Compiling background_hang_monitor v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/background_hang_monitor)
   Compiling servo_config v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/config)
   Compiling bluetooth_traits v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/bluetooth_traits)
   Compiling devtools v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/devtools)
warning: unnecessary path disambiguator
   --> components/config/prefs.rs:140:51
    |
140 |         accessor_type = crate::pref_util::Accessor::<Prefs, crate::pref_util::PrefValue>,
    |                                                   ^^ try removing `::`

   Compiling canvas_traits v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/canvas_traits)
   Compiling profile_traits v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/profile_traits)
   Compiling net_traits v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/net_traits)
   Compiling bluetooth v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/bluetooth)
   Compiling profile v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/profile)
   Compiling net v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/net)
   Compiling script_traits v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/script_traits)
   Compiling webvr v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/webvr)
   Compiling metrics v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/metrics)
   Compiling webdriver_server v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/webdriver_server)
   Compiling canvas v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/canvas)
   Compiling script_layout_interface v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/script_layout_interface)
   Compiling gfx v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/gfx)
   Compiling layout_traits v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/layout_traits)
   Compiling layout v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/layout)
   Compiling constellation v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/constellation)
   Compiling layout_thread v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/layout_thread)
   Compiling libservo v0.0.1 (/Users/cybai/codespace/mozilla/servo/components/servo)
    Finished dev [unoptimized + debuginfo] target(s) in 32m 18s
Build Completed in 0:32:20

Xcode 10.2 works for me, too! ๐ŸŽ‰๐ŸŽ‰๐ŸŽ‰

I am on MacOS 10.14.6 with Xcode 10.3. Every time I start installing the .dmg file it crashes my laptop. Any ideas?

I have not heard of that issue before :/

Whole machine hangs for hours, need to manually restart.

OS: High Sierra(10.13.6)
Processor: 2.6 GHz Intel Core i7
Memory: 16 GB 2133 MHz LPDDR3
XCode: Version 10.1 (10B61)
I'll try to update Xcode

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ferjm picture ferjm  ยท  3Comments

SimonSapin picture SimonSapin  ยท  3Comments

shinglyu picture shinglyu  ยท  4Comments

ayelen912 picture ayelen912  ยท  3Comments

jdm picture jdm  ยท  3Comments