Closed Bug 1677664 Opened 5 years ago Closed 5 years ago

Build windows VS 2017 15.9.29

Categories

(Firefox Build System :: General, defect)

78 Branch
defect

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: frettarenan, Unassigned)

Details

Attachments

(18 files)

Attached image 2020-11-17_00h08_36.png

User Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:83.0) Gecko/20100101 Firefox/83.0

Steps to reproduce:

I believe that the documentation information is out of date.

https://developer.mozilla.org/pt-BR/docs/Mozilla/Developer_guide/Intrucoes_Build/Windows_Prerequisites

Microsoft no longer provides this version of VS.

I already tried to build with Visual Studio 2019 but I came across the B compiler BUG version 10 required.

Now I'm trying to compile with the VS 2017 version, but I'm not getting.

I managed to compile on linux ubuntu 20.10 but it only generated the executables for linux.

I would like to know if it really has to be version 15.8 of VS Studio and how do I download it since it no longer exists for download and if it is possible to generate the builds of other platforms on linux, for example.
The documentation is not clear.

I'm trying to compile firefox 78.

Expected results:

I would like correct information.

I forgot to comment that I'm using windows 7 64bit

.. came across the "C" compiler BUG version 10 required.

Bugbug thinks this bug should belong to this component, but please revert this change in case of error.

Component: Untriaged → General
Product: Firefox → Firefox Build System

I did not understand

Does the build work with visual studio 2017 v15.9 .29 on windows 7 64bit?

I posted here to see if anyone can help me
https://support.mozilla.org/pt-BR/questions/1314120

Hey frettarenan! Sorry for the confusion, but those docs on MDN are out-of-date (and are supposed to link you to the in-tree docs).
However, it looks like the translated docs are also out-of-date and are missing the link to the up-to-date docs (I've created a bug about this confusing situation here).

So, for this bug here:

  1. The build now currently requires Visual Studio 2019, the "Windows 10 SDK" (at least 10.0.17134.0) and "C++ ATL for v142 build tools (x86 and x64)"
  2. I'd recommend using these Windows build docs here instead (it is in English though, sorry ☹)

Let me know if that works!

Flags: needinfo?(frettarenan)
Attached image versao VS 2019.png
Flags: needinfo?(frettarenan)

(In reply to Mitchell Hentges [:mhentges] 🦀 from comment #8)

Hey frettarenan! Sorry for the confusion, but those docs on MDN are out-of-date (and are supposed to link you to the in-tree docs).
However, it looks like the translated docs are also out-of-date and are missing the link to the up-to-date docs (I've created a bug about this confusing situation here).

So, for this bug here:

  1. The build now currently requires Visual Studio 2019, the "Windows 10 SDK" (at least 10.0.17134.0) and "C++ ATL for v142 build tools (x86 and x64)"
  2. I'd recommend using these Windows build docs here instead (it is in English though, sorry ☹)

Let me know if that works!


First I would like to thank you for your help.

I also tried this procedure that you sent me.

Today, the version of the visual studio comunity available is 16.8.1. When I build using this version (with Windows 10 SDK" (at least 10.0.17134.0) and "C++ ATL for v142 build tools (x86 and x64), I had already consulted this tutoring >> https://www.youtube.com/watch?v=g0cnS3N11SM

When the build, I think it is almost finished, presents a message saying that VS 2019 requires lib "C" version 10.0.0, but mozbuild is in version 9. And it ends with an error.

Which version of visual studio 2019 does the build work with? And how do I get an old version?

Which version of visual studio 2019 does the build work with?

IIRC, the most recent version should work? 🤔

When the build, I think it is almost finished, presents a message saying that VS 2019 requires lib "C" version 10.0.0, but mozbuild is in version 9. And it ends with an error.

Would you mind copying your build log and pasting it here?
Also, you're compiling from within "MozillaBuild", right?

Flags: needinfo?(frettarenan)
Attached image versao VS 2019.png
Flags: needinfo?(frettarenan)
Attached image clang version 9.png

If you don't mind, can you copy and paste (or screenshot) the error that appears when you perform the build?

Flags: needinfo?(frettarenan)

(In reply to Mitchell Hentges [:mhentges] 🦀 from comment #11)

Which version of visual studio 2019 does the build work with?

IIRC, the most recent version should work? 🤔

When the build, I think it is almost finished, presents a message saying that VS 2019 requires lib "C" version 10.0.0, but mozbuild is in version 9. And it ends with an error.

Would you mind copying your build log and pasting it here?
Also, you're compiling from within "MozillaBuild", right?


Yes, I run the commands around here > C:\mozilla-build\start-shell.bat

I will take a few minutes, because I will have to install VS Studio 2019 again, I have already installed 10 different versions, and each one gives different errors.

I will compile it again in the version you asked for and I will insert the errors for you to see.

please wait a few minutes while i do the procedures here.

Flags: needinfo?(frettarenan)

Perfect, thanks!

I started to install, I'll put the procedures I'm doing here, to document step by step.
when i finish i warn and put the error message.

Attached image step01.png
Attached image step02.png

The SDK 10.0.18362.0 version went unnoticed, I will change the installation and remove it.

Attached image step03.png
Attached image step04.png
Attached image step05.png
Attached image step06.png
Attached image step07.png
Attached image build-failed-01.png

(In reply to Mitchell Hentges [:mhentges] 🦀 from comment #16)

Perfect, thanks!

Now it gave a totally different message than before, I don't know what to do anymore, I've tried it with so many different versions.

I await your reply.

Are the procedures I did correct?

Attached image build-failed-01-2.png

(In reply to Mitchell Hentges [:mhentges] 🦀 from comment #16)

Perfect, thanks!

I am deducing that the Firefox build no longer works on windows 7, because I compiled here the release version available at https://hg.cdn.mozilla.net/ and in the "bootstrap" process asked for the poweshell executable and gave an error. And powershell only has on windows 10. In the documentation I saw something that spoke of a link from microsoft to download a virtual machine from windows 10. But the information is mismatched.

Attached image 001.png
Attached image 002.png
Attached image sugestion.png

Hmm, thanks for the detailed report.

  1. Can you provide more context from this comment? I think the more useful part of that error is right above the buffer visible in the screenshot. Perhaps you can copy and paste the text, rather than taking a screenshot?
  2. Where is this comment's screenshot in relation to this one? Is it earlier in the build? It's not clear :(
  3. To answer the question provided by this comment: Windows 7 is required to perform the build. The Windows 10 VMs provided by Microsoft are for devs on different platforms, like Mac or Linux who want to build on Windows.
  4. Yeah, there's some improvements sorely needed for the quick-start docs. These are on the radar :)
Flags: needinfo?(frettarenan)

(In reply to Mitchell Hentges [:mhentges] 🦀 from comment #33)

Hmm, thanks for the detailed report.

  1. Can you provide more context from this comment? I think the more useful part of that error is right above the buffer visible in the screenshot. Perhaps you can copy and paste the text, rather than taking a screenshot?
  2. Where is this comment's screenshot in relation to this one? Is it earlier in the build? It's not clear :(
  3. To answer the question provided by this comment: Windows 7 is required to perform the build. The Windows 10 VMs provided by Microsoft are for devs on different platforms, like Mac or Linux who want to build on Windows.
  4. Yeah, there's some improvements sorely needed for the quick-start docs. These are on the radar :)

Below are the answers listed according to the questions:

  1. I'll try, but I sent print because winfows 7 loses the console text, it is different from linux. Is there a build report file that I can get? Perhaps the solution is to film the screen yourself.
  1. Sorry, as I was unable to copy everything, as I mentioned in item 1, I will provide the information in a better format.
  1. I understand, however the version "releases / mozilla-release" to do the "bootstrap" requires powershell, I believe it is losing support for windows 7.
  1. Thanks for the info
Flags: needinfo?(frettarenan)
Attached video 2020-11-17_20h46_40.mp4

Ah, thanks!

Is there a build report file that I can get? Perhaps the solution is to film the screen yourself.

Filming the screen was a clever solution! However (and I should've mentioned this earlier, sorry), we can have command output be written to a file that you can upload by doing:

./mach <whatever> 2>&1 | tee logfile.txt
(For example: ./mach build 2>&1 | tee logfile.txt)

I see the specific error you're seeing about CLang in that video.
However, I think there's two underlying issues we should resolve before we debug that specific error:

  1. The build depends on the work that bootstrap does. It's worth resolving bootstrap errors first here, because those build errors that are appearing could be because bootstrap is failing.
  2. After we get #1 resolved: the build will reuse old compiled files if they already exist between ./mach build runs. However, since there's been changes to Visual Studio, issues could arise if old compiled files (VS 2017) are being used with new compiled files (VS 2019). So, I'd recommend doing a ./mach clobber (deletes all compile output) whenever Visual Studio is installed/changed.

So, to start, would you mind doing ./mach bootstrap 2>&1 | tee logfile.txt and pasting the log for this?
Thanks for your patience diagnosing this issue! I think we're making progress :)

Flags: needinfo?(frettarenan)

(In reply to Mitchell Hentges [:mhentges] 🦀 from comment #36)

Ah, thanks!

Is there a build report file that I can get? Perhaps the solution is to film the screen yourself.

Filming the screen was a clever solution! However (and I should've mentioned this earlier, sorry), we can have command output be written to a file that you can upload by doing:

./mach <whatever> 2>&1 | tee logfile.txt
(For example: ./mach build 2>&1 | tee logfile.txt)

I see the specific error you're seeing about CLang in that video.
However, I think there's two underlying issues we should resolve before we debug that specific error:

  1. The build depends on the work that bootstrap does. It's worth resolving bootstrap errors first here, because those build errors that are appearing could be because bootstrap is failing.
  2. After we get #1 resolved: the build will reuse old compiled files if they already exist between ./mach build runs. However, since there's been changes to Visual Studio, issues could arise if old compiled files (VS 2017) are being used with new compiled files (VS 2019). So, I'd recommend doing a ./mach clobber (deletes all compile output) whenever Visual Studio is installed/changed.

So, to start, would you mind doing ./mach bootstrap 2>&1 | tee logfile.txt and pasting the log for this?
Thanks for your patience diagnosing this issue! I think we're making progress :)


Thank you very much for your help, all the information you gave me is extremely useful to me.
I ended up managing to build it yesterday morning, after 15 hours of work on top of it.
But I only succeeded thanks to this tutorial, which was right from the beginning.
I say that, because I ended up getting the visual studio version of the video.
Available on this site: https://docs.microsoft.com/pt-br/visualstudio/releases/2019/history
The VS 2019 version 16.1.3.

I do not want to try again with the latest versions, as it is being traumatic. hauehuaeh
But thank you very much, I will continue here, with this version of VS that is attending to what I need.

I really hope that you get the documentation so that more people can join the project.

The command "./mach clobber" is very important, I had to run it, I ended up finding it in another call from someone else.

I'm really happy I did it, thanks.

Flags: needinfo?(frettarenan)

Sounds good, thanks!
I'll close this for now, but feel free to reopen if/when you try with the latest versions :)

Status: UNCONFIRMED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED

I'm not finding how to build firefox in other languages, do you have any documentation?

Here, take a look at the Localized Builds docs

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: