Closed Bug 1324473 Opened 7 years ago Closed 7 years ago

xargs.exe crashes at toolkit/library/libxul.mk if you set PATH env to the suggested path of |./mach bootstrap|

Categories

(Firefox Build System :: General, defect)

All
Windows
defect
Not set
normal

Tracking

(firefox53 fixed)

RESOLVED FIXED
mozilla53
Tracking Status
firefox53 --- fixed

People

(Reporter: masayuki, Assigned: rillian)

Details

Attachments

(1 file)

On the last weekend, mozilla-central starts to require Rust in default buildconfig. If you don't install Rust, |./mach build| recommends to use |./mach bootstrap| to install Rust compiler. Then, |./mach bootstrap| will suggest that the developer should add |export PATH=c:/Users/<user name>\.cargo\bin:$PATH| to .profile.

However, with this config, xargs.exe will be crashed when linker works for xul.dll. The point is here:
https://dxr.mozilla.org/mozilla-central/rev/2824deb82146bba070995a762cfc98ddb2d1decb/toolkit/library/libxul.mk#61

At this time, you see only "NSModules are not ordered appropriately" in the terminal. This doesn't help you to resolve this crash.

The wrong point is, the recommended path is wrong for mozilla-build. For mozilla-build, it should be |export PATH=/c/Users/toybox/.cargo/bin:$PATH|. All '\'s should be replaced with '/' and |c:\| should be |/c/|.

I've still not fully understand the reason why this causes xargs.exe crashing. However, I correct the path, I don't see the crash anymore.

I wasted 2 days with this bug, please fix this bug as soon as possible for preventing to make other developers not confused by this bug.
Summary: xargs.exe is crashed at toolkit/library/libxul.mk if you set PATH env as suggested by |./mach bootstrap| → xargs.exe crashes at toolkit/library/libxul.mk if you set PATH env to the suggested path of |./mach bootstrap|
Looks like we need a wording change in `mach bootstrap`.

(This is a really wonky bug. I can't believe xargs.exe is flat out crashing.)
Flags: needinfo?(giles)
Product: Firefox → Core
Yeah, Sorry. I think I was normalizing the path message in my head. We'll have to unix-ize it before printing. Even better, on my system it comes out

  PATH=c:/Users/mozilla\.cargo\bin:$PATH

So perhaps we can just s#$([a-zA-Z]):/#/\1/ and s#\\#/#.
Assignee: nobody → giles
Flags: needinfo?(giles)
Hi Ralph, any chance to fix this in-tree soon? Especially because of the opaque error message. Thank you.
Flags: needinfo?(giles)
I'm on PTO starting tomorrow, so I can't promise. I'll try to get a patch ready today at least.
Flags: needinfo?(giles)
This isn't especially pretty, but resolves the immediate issue for me. I'm away until January; will follow up then. In the meantime, anyone should feel free to take this on can get a fix landed.
Attachment #8821356 - Flags: review?(gps)
Comment on attachment 8821356 [details]
Bug 1324473 - mozboot: Normalize windows path advice.

https://reviewboard.mozilla.org/r/100662/#review101672

I could nitpick a thing or two with the path transformation. But since this code is limited to the bootstrapper and is only used as part of printing a path, it should be fine. If it isn't, I'm sure people will file follow-up bugs.
Attachment #8821356 - Flags: review?(gps) → review+
Pushed by gszorc@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/737708b15086
mozboot: Normalize windows path advice. r=gps
https://hg.mozilla.org/mozilla-central/rev/737708b15086
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla53
If someone still has issues with xargs:
After the fix landed, I (still?) had xargs crashes when I tried to run |mozmake unpack| during the l10n binary repack https://developer.mozilla.org/en-US/docs/Mozilla/Creating_a_language_pack#L10n_binary_repack
Removing the cargo line from the .profile file fixed the issue.
This fix only changes the instruction message. It does not fix wrong $PATH settings automatically if it is already set.
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: