roll_boringssl.py/generate_build_files.py: error closing STDOUT at src\crypto\fipsmodule\aes/asm/aesp8-ppc.pl line 3807

32 views
Skip to first unread message

Pulkit Pant

unread,
Apr 20, 2021, 7:22:50 AM4/20/21
to boringssl-dev
Hi,

I'm facing a consistent issue while generating the build files using the roll_boringssl.py script.
I face the same issue when I try running the generate_build_files.py script directly as well.

I'm able to generate some directories and then I start facing this issue:

error closing STDOUT at src\crypto\fipsmodule\aes/asm/aesp8-ppc.pl line 3807.
Traceback (most recent call last):
  File "src\util\generate_build_files.py", line 996, in <module>
    sys.exit(main(platforms))
  File "src\util\generate_build_files.py", line 953, in main
    asm_outputs = sorted(WriteAsmFiles(ReadPerlAsmOperations()).items())
  File "src\util\generate_build_files.py", line 814, in WriteAsmFiles
    perlasm['extra_args'] + extra_args)
  File "src\util\generate_build_files.py", line 768, in PerlAsm
    ['perl', input_filename, perlasm_style] + extra_args + [output_filename])
  File "C:\Edge\depot_tools\bootstrap-3_8_0_chromium_8_bin\python\bin\Lib\subprocess.py", line 190, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['perl', 'src\\crypto\\fipsmodule\\aes/asm/aesp8-ppc.pl', 'linux64le', 'linux-ppc64le\\crypto\\fipsmodule\\aesp8-ppc.S']' returned non-zero exit status 9

I've perl and go both installed on my win10 machine.
Can someone help me with what I might be missing?

Fyi,
Perl version: This is perl 5, version 28, subversion 1 (v5.28.1) built for MSWin32-x64-multi-thread
go version go1.16.3 windows/amd64


Thanks and regards,
Pulkit Pant

Pulkit Pant

unread,
Apr 21, 2021, 4:48:05 AM4/21/21
to boringssl-dev, Pulkit Pant, davi...@chromium.org
Adding David(The owner).
Hi David,

Needed your help with rolling the boringssl deps.
It'd be really great if you could guide me on what I could be doing wrong.

Quoted:

David Benjamin

unread,
Apr 21, 2021, 11:14:49 AM4/21/21
to Pulkit Pant, boringssl-dev
I don't believe we've ever run that script on Windows before. I'd be unsurprised to learn that it doesn't work quite right, between forward vs. backslashes and such. The script mostly exists so we don't need to bother with it in most of Chromium because the Perl build dependency is a nuisance.

Is there any other console output? The Python exception is just noisily reporting that Perl failed. The Perl error is that it can't cleanly close the pipe to the xlate script, which probably means the xlate script failed. But I don't see any error from the xlate script.

Pulkit Pant

unread,
Apr 21, 2021, 11:27:12 AM4/21/21
to David Benjamin, boringssl-dev
Thanks for the response David.

There isn't any other console output that is generated!
So, this script has been running almost everytime from the linux environment?
I haven't tried running it from linux environment.
This is something I can try.

Also, I'll try to see if there's an issue with forward vs backward slashes.

Is there something else too which I can do to root cause the script not working on windows?

Thanks and regards,
Pulkit Pant



David Benjamin

unread,
Apr 21, 2021, 11:36:46 AM4/21/21
to Pulkit Pant, boringssl-dev
Forward vs. backslashes is one possible culprit. Certainly it's one of the issues that would need to be fixed for it to work there. Even if the script runs successfully, the resulting build files need to use forward slashes. I expect os.path.join will do the wrong thing right now.

I'd suggest digging into the Perl failure and try to figure out why the Perl script is failing. My guess is it's the xlate pipe.
Reply all
Reply to author
Forward
0 new messages