Re: How to build the CEF binaries
Posted: Fri Nov 22, 2024 2:35 pm
Finally managed to build cef 6778, but through a crutch, I don’t know how these libraries will work, whether there will be errors, I’ll see in the near future, but the build was successful. I'll describe it here, maybe it will be useful to someone.
After an unsuccessful build, we see the following message:
The files in the "C:\Temp\tmp32zc79mt" folder are identical to the files in the "..\..\third_party\win_build_output\midl\chrome\updater\app\server\win\x86" folder, so copying, as stated in the message, does not brought positive results in the subsequent build. But the files from the folder "C:\Temp\tmp7fer4a97" are different, so I copied these files to the folder "..\..\third_party\win_build_output\midl\chrome\updater\app\server\win\x86" and after that build was successful.
But there is one peculiarity: after running the build script, apparently the script is checked and
copies the midl files into the folder "..\..\third_party\win_build_output\midl\chrome\updater\app\server\win\x86" due to which the error occurs, so the files from the temporary folder must be replaced after all script checks, for example, at the moment when ninja is launched, i.e. this message appears:
After this, the build runs successfully, without the midl error.
After an unsuccessful build, we see the following message:
Code: Select all
midl.exe output different from files in gen/chrome/updater/app/server/win, see C:\Temp\tmp7fer4a97
To rebaseline:
copy /y C:\Temp\tmp32zc79mt\* ..\..\third_party\win_build_output\midl\chrome\updater\app\server\win\x86
[47807/51320] CXX obj/components/autofill/content/renderer/renderer/form_autofill_util.obj
ninja: build stopped: subcommand failed.
Traceback (most recent call last):
File "c:\code\automate\automate-git.py", line 1397, in <module>
run(command + build_path + target, chromium_src_dir, depot_tools_dir,
File "c:\code\automate\automate-git.py", line 66, in run
return subprocess.check_call(
^^^^^^^^^^^^^^^^^^^^^^
File "c:\code\depot_tools\bootstrap-2@3_11_8_chromium_35_bin\python3\bin\Lib\subprocess.py", line 413, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['autoninja', '-C', 'out\\Release_GN_x86', 'cefclient']' returned non-zero exit
status 1.
But there is one peculiarity: after running the build script, apparently the script is checked and
copies the midl files into the folder "..\..\third_party\win_build_output\midl\chrome\updater\app\server\win\x86" due to which the error occurs, so the files from the temporary folder must be replaced after all script checks, for example, at the moment when ninja is launched, i.e. this message appears:
Code: Select all
clang_use_chrome_plugins=false
disable_fieldtrial_testing_config=true
enable_background_mode=false
enable_cdm_host_verification=true
enable_cdm_storage_id=true
enable_downgrade_processing=false
enable_nacl=false
enable_resource_allowlist_generation=false
enable_rlz=true
enable_widevine=true
is_component_build=false
is_debug=false
is_official_build=true
optimize_webui=true
target_cpu="x86"
-------- Running "autoninja -C out\Release_GN_x86 cefclient" in "c:\code\chromium_git\chromium\src"...
ninja: Entering directory `out\Release_GN_x86'
[1/2] ACTION //cef:args_gn_source(//build/toolchain/win:win_clang_x86)