I am trying to use make_distrib.batch to compose my own cef binary distribution, and corresponding cefsimple.exe. Everything went smoothly till the point when I tried to compile the cefsimple project from cef.sln.
Here come my step by step details:
update.bat
- Code: Select all
set DEPOT_TOOLS_WIN_TOOLCHAIN=0
set CEF_USE_GN=1
set GN_DEFINES=is_official_build=true use_thin_lto=false proprietary_codecs=true ffmpeg_branding=Chrome enable_widevine=true
set GN_ARGUMENTS=--ide=vs2019 --sln=cef
set CEF_ARCHIVE_FORMAT=tar.bz2
python ..\automate\automate-git.py --download-dir=C:\code\chromium_git --depot-tools-dir=C:\code\depot_tools --no-distrib --no-build --force-clean --branch=5005 --x64-build
create.bat
- Code: Select all
set CEF_USE_GN=1
set GN_DEFINES=is_official_build=true use_thin_lto=false proprietary_codecs=true ffmpeg_branding=Chrome enable_widevine=true
set GYP_DEFINES=buildtype=Official
set GYP_MSVS_VERSION=2019
set GN_ARGUMENTS=--ide=vs2019 --sln=cef --filters=//cef/*
call cef_create_projects.bat
create x64 build
- Code: Select all
cd c:\code\chromium_git\chromium\src
ninja -C out\Release_GN_x64 cef
ninja -C out\Debug_GN_x64 cef
run make_distrib
- Code: Select all
cd C:\code\chromium_git\chromium\src\cef\tools
set CEF_ARCHIVE_FORMAT=tar.bz2
make_distrib.bat --ninja-build --x64-build
use cmake to create the project
open cef.sln then compile libcef_dll_wrapper successfully
- Code: Select all
2>libcef_dll_wrapper.vcxproj -> C:\code\chromium_git\chromium\src\cef\binary_distrib\cef_binary_102.0.10+gf249b2e+chromium-102.0.5005.115_windows64\libcef_dll_wrapper\Release\libcef_dll_wrapper.lib
========== Rebuild All: 2 succeeded, 0 failed, 0 skipped ==========
compile cefsimple project
and then run into LINK fatal error from sandbox.lib. The complete list is extremely long so I just provided some of them here:
- Code: Select all
cef_sandbox.lib(allocator_shim_default_dispatch_to_partition_alloc.obj) : error LNK2001: unresolved external symbol "class partition_alloc::ThreadCache * partition_alloc::internal::g_thread_cache" (?g_thread_cache@internal@partition_alloc@@3PEAVThreadCache@2@EA)
1>cef_sandbox.lib(nonscannable_memory.obj) : error LNK2001: unresolved external symbol "class partition_alloc::ThreadCache * partition_alloc::internal::g_thread_cache" (?g_thread_cache@internal@partition_alloc@@3PEAVThreadCache@2@EA)
1>cef_sandbox.lib(raw_ptr.obj) : error LNK2001: unresolved external symbol "class partition_alloc::ThreadCache * partition_alloc::internal::g_thread_cache" (?g_thread_cache@internal@partition_alloc@@3PEAVThreadCache@2@EA)
1>cef_sandbox.lib(allocator_shim_default_dispatch_to_partition_alloc.obj) : error LNK2001: unresolved external symbol "private: static unsigned short partition_alloc::ThreadCache::largest_active_bucket_index_" (?largest_active_bucket_index_@ThreadCache@partition_alloc@@0GA)
1>cef_sandbox.lib(nonscannable_memory.obj) : error LNK2001: unresolved external symbol "private: static unsigned short partition_alloc::ThreadCache::largest_active_bucket_index_" (?largest_active_bucket_index_@ThreadCache@partition_alloc@@0GA)
1>cef_sandbox.lib(raw_ptr.obj) : error LNK2001: unresolved external symbol "private: static unsigned short partition_alloc::ThreadCache::largest_active_bucket_index_" (?largest_active_bucket_index_@ThreadCache@partition_alloc@@0GA)
1>cef_sandbox.lib(allocator_shim_default_dispatch_to_partition_alloc.obj) : error LNK2001: unresolved external symbol "private: static class partition_alloc::internal::PCScan partition_alloc::internal::PCScan::instance_" (?instance_@PCScan@internal@partition_alloc@@0V123@A)
1>cef_sandbox.lib(nonscannable_memory.obj) : error LNK2001: unresolved external symbol "private: static class partition_alloc::internal::PCScan partition_alloc::internal::PCScan::instance_" (?instance_@PCScan@internal@partition_alloc@@0V123@A)
1>
....
Is there any thing wrong with my local compile config and steps?
Any suggestion would be very helpful. Thank you!