Manual build with propriety codecs enabled

Having problems with building or using CEF's C/C++ APIs? This forum is here to help. Please do not post bug reports or feature requests here.

Manual build with propriety codecs enabled

Postby rjxray » Thu Aug 13, 2020 8:07 am

I'm building 4183 branch with vs2019, windows 10.
I have GN_DEFINES=is_official_build=true proprietary_codecs=true ffmpeg_branding=Chrome.
A fully automated build works fine but now I am trying to do a manual build following the instructions at https://bitbucket.org/chromiumembedded/ ... ckStart.md

The instructions for creating update.bat and create.bat both say I should set GN_DEFINES=is_component_build=true.
If I instead set GN_DEFINES=is_component_build=true is_official_build=true proprietary_codecs=true ffmpeg_branding=Chrome I get this error when running create.bat
Code: Select all
Generating CEF project files...
Creating I:\cefbuildm\chromium_git\chromium\src\out\Release_GN_x86 directory.
ERROR at //BUILD.gn:48:3: Assertion failed.
  assert(!is_component_build)
  ^-----
Traceback (most recent call last):
  File "tools\gclient_hook.py", line 143, in <module>
    RunAction(src_dir, cmd)
  File "I:\cefbuildm\chromium_git\chromium\src\cef\tools\gclient_util.py", line 36, in RunAction
    command, cwd=dir, always_show_header=True, print_stdout=True)
  File "I:\cefbuildm\depot_tools\gclient_utils.py", line 655, in CheckCallAndFilter
    rv, args, kwargs.get('cwd', None), None, None)
subprocess2.CalledProcessError: Command 'gn gen out\\Release_GN_x86 --ide=vs2019 --sln=cef --filters=//cef/*' returned non-zero exit status 1 in I:\cefbuildm\chromium_git\chromium\src


I tried instead just setting GN_DEFINES=is_official_build=true in create.bat which allowed that to complete.
Then I set set GN_DEFINES back to is_component_build=true is_official_build=true proprietary_codecs=true ffmpeg_branding=Chrome before running ninja -C out\Debug_GN_x64.
Then I got this error.
Code: Select all
I:\cefbuildm\chromium_git\chromium\src>ninja -C out\Debug_GN_x64
ninja: Entering directory `out\Debug_GN_x64'
[96/75418] ACTION //build/win:copy_cdb_to_output(//build/toolchain/win:win_clang_x64)
FAILED: cdb/cdb.exe cdb/dbgeng.dll cdb/dbghelp.dll cdb/dbgmodel.dll cdb/winext/ext.dll cdb/winext/uext.dll cdb/winxp/exts.dll cdb/winxp/ntsdexts.dll cdb/api-ms-win-core-console-l1-1-0.dll cdb/api-ms-win-core-datetime-l1-1-0.dll cdb/api-ms-win-core-debug-l1-1-0.dll cdb/api-ms-win-core-errorhandling-l1-1-0.dll cdb/api-ms-win-core-file-l1-1-0.dll cdb/api-ms-win-core-file-l1-2-0.dll cdb/api-ms-win-core-file-l2-1-0.dll cdb/api-ms-win-core-handle-l1-1-0.dll cdb/api-ms-win-core-heap-l1-1-0.dll cdb/api-ms-win-core-interlocked-l1-1-0.dll cdb/api-ms-win-core-libraryloader-l1-1-0.dll cdb/api-ms-win-core-localization-l1-2-0.dll cdb/api-ms-win-core-memory-l1-1-0.dll cdb/api-ms-win-core-namedpipe-l1-1-0.dll cdb/api-ms-win-core-processenvironment-l1-1-0.dll cdb/api-ms-win-core-processthreads-l1-1-0.dll cdb/api-ms-win-core-processthreads-l1-1-1.dll cdb/api-ms-win-core-profile-l1-1-0.dll cdb/api-ms-win-core-rtlsupport-l1-1-0.dll cdb/api-ms-win-core-string-l1-1-0.dll cdb/api-ms-win-core-synch-l1-1-0.dll cdb/api-ms-win-core-synch-l1-2-0.dll cdb/api-ms-win-core-sysinfo-l1-1-0.dll cdb/api-ms-win-core-timezone-l1-1-0.dll cdb/api-ms-win-core-util-l1-1-0.dll cdb/api-ms-win-crt-conio-l1-1-0.dll cdb/api-ms-win-crt-convert-l1-1-0.dll cdb/api-ms-win-crt-environment-l1-1-0.dll cdb/api-ms-win-crt-filesystem-l1-1-0.dll cdb/api-ms-win-crt-heap-l1-1-0.dll cdb/api-ms-win-crt-locale-l1-1-0.dll cdb/api-ms-win-crt-math-l1-1-0.dll cdb/api-ms-win-crt-multibyte-l1-1-0.dll cdb/api-ms-win-crt-private-l1-1-0.dll cdb/api-ms-win-crt-process-l1-1-0.dll cdb/api-ms-win-crt-runtime-l1-1-0.dll cdb/api-ms-win-crt-stdio-l1-1-0.dll cdb/api-ms-win-crt-string-l1-1-0.dll cdb/api-ms-win-crt-time-l1-1-0.dll cdb/api-ms-win-crt-utility-l1-1-0.dll cdb/api-ms-win-downlevel-kernel32-l2-1-0.dll cdb/api-ms-win-eventing-provider-l1-1-0.dll cdb/ucrtbase.dll
I:/cefbuildm/depot_tools/bootstrap-3_8_0_chromium_8_bin/python/bin/python.exe ../../build/win/copy_cdb_to_output.py cdb x64
Toolchain is out of date. Run "gclient runhooks" to update the toolchain, or set DEPOT_TOOLS_WIN_TOOLCHAIN=0 to use the locally installed toolchain.
Traceback (most recent call last):
  File "../../build/win/copy_cdb_to_output.py", line 127, in <module>
    sys.exit(main())
  File "../../build/win/copy_cdb_to_output.py", line 123, in main
    return _CopyCDBToOutput(sys.argv[1], sys.argv[2])
  File "../../build/win/copy_cdb_to_output.py", line 62, in _CopyCDBToOutput
    vs_toolchain.SetEnvironmentAndGetRuntimeDllDirs()
  File "I:\cefbuildm\chromium_git\chromium\src\build\vs_toolchain.py", line 62, in SetEnvironmentAndGetRuntimeDllDirs
    update_result = Update(no_download=True)
  File "I:\cefbuildm\chromium_git\chromium\src\build\vs_toolchain.py", line 533, in Update
    subprocess.check_call(get_toolchain_args)
  File "I:\cefbuildm\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 '['I:\\cefbuildm\\depot_tools\\bootstrap-3_8_0_chromium_8_bin\\python\\bin\\python.exe', 'I:\\cefbuildm\\chromium_git\\chromium\\src\\third_party\\depot_tools\\win_toolchain\\get_toolchain_if_necessary.py', '--output-json', 'I:\\cefbuildm\\chromium_git\\chromium\\src\\build\\win_toolchain.json', 'a687d8e2e4114d9015eb550e1b156af21381faac', '--no-download']' returned non-zero exit status 1
[113/75418] CXX obj/buildtools/third_party/libc++/libc++/algorithm.obj
ninja: build stopped: subcommand failed.


So my question is at which stages of the build do I need to have "is_official_build=true proprietary_codecs=true ffmpeg_branding=Chrome" and/or "is_component_build=true" included in GN_DEFINES?
rjxray
Expert
 
Posts: 115
Joined: Wed Jun 07, 2017 4:31 am

Re: Manual build with propriety codecs enabled

Postby magreenblatt » Thu Aug 13, 2020 10:20 am

So my question is at which stages of the build do I need to have "is_official_build=true proprietary_codecs=true ffmpeg_branding=Chrome" and/or "is_component_build=true" included in GN_DEFINES?

The GN_DEFINES should be the same at all steps. is_official_build=true and is_component_build=true are mutually exclusive. You need to decide what you wish to build.
magreenblatt
Site Admin
 
Posts: 12409
Joined: Fri May 29, 2009 6:57 pm


Return to Support Forum

Who is online

Users browsing this forum: Google [Bot] and 105 guests