Chrome Compilation Error Rollup

Source: Internet
Author: User
Tags svn update

Because of the various reasons you understand, access to Google's services are always wrong, first hosts do not work, agents are not working, and finally can be briefly visited. My version is also using SVN maintenance, and the direct SVN update is not. Try git, download 120M a night, it takes se years to finish that. Look for Tarball, tnnd, altogether Google deleted tarball! Fortunately, through the tgz way of git to get tarball, an update to be prompted: ubuntu14.04 do not support, forget, then the entire 30G space to install a Ubuntu12.04 bar, "tasted the suffering of life, can not find the people to believe",

A dep_tool is out of the way. One run Gclient error:

Gclient Runhooks:

/.gclient:line 8:solutions:command not found

./.gclient:line 9:name:command Not found
./.gclient:line 10:url:command Not found
./.gclient:line 11:custom_deps:command Not found
./.gclient:line 16:src/third_party/webkit/layouttests:: No such file or directory
./.gclient:line 17:src/chrome_frame/tools/test/reference_build/chrome:: No such file or directory
./.gclient:line 18:src/chrome/tools/test/reference_build/chrome_mac:: No such file or directory
./.gclient:line 19:src/chrome/tools/test/reference_build/chrome_win:: No such file or directory
./.gclient:line 20:src/chrome/tools/test/reference_build/chrome_linux:: No such file or directory
./.gclient:line 22:syntax error near unexpected token '} '
./.gclient:line 22: '} '

Forget it, don't update it, just build it on the old version:

./build/install-build-deps.sh

Tip me 64-bit kernel compiling 32-bit code is no longer recommended:

We no longer recommend that's use this script to install
32bit libraries on a 64bit system. Instead, consider using
The install-chroot.sh script to help you set up a 32bit
Environment for building and testing 32bit versions of Chrome.

If you nonetheless want to try installing 32bit libraries
Directly, you can do so by explicitly passing the--LIB32
Option to install-build-deps.sh.
Exiting without installing any 32bit libraries.

Tease me, persuade me to switch to install-chroot.sh?

./build/install-chroot.sh

The following targets is available to being installed in a chroot:
1:breezy
2:dapper
3:edgy
26:stable
27:testing
28:trusty
29:unstable
30:utopic
31:vivid
32:warty
33:wheezy
34:woody

You are running a 64bit kernel. This allows your to install either a
32bit or a 64bit chroot environment. Which one do you want (32, 64) 32

I:retrieving Release
W:cannot check Release signature; Keyring File Not AVAILABLE/USR/SHARE/KEYRINGS/DEBIAN-ARCHIVE-KEYRING.GPG
I:retrieving Packages

Forget it, or cancel the compilation with this: plus--LIB32

. /build/install-build-deps.sh--lib32

Build/gyp_chromium-dflag1=value1-dflag2=value2

Then compile: Make Chrome-j4

An error occurred:

net/base/x509_certificate_nss.cc:in function ' void net::{anonymous}::P Arseprincipal (certname*, net::certprincipal* )’:
Net/base/x509_certificate_nss.cc:75:46:error:invalid conversion from ' char* (*) (const certname*) {aka char* (*) (const C ertnamestr*)} ' to ' Certgetnamefunc {aka char* (*) (certnamestr*)} ' [-fpermissive]

Change it:

  Get CN, L, S, and C. #if michael_chromium_patch      certgetnamefunc get_name_funcs[4] = {               (char* (*) (certnamestr*)) Cert_getcommonname, (char* (*) (certnamestr*)) Cert_getlocalityname,              (char* (*) (certnamestr*)) Cert_getstatename , (char* (*) (certnamestr*)) Cert_getcountryname}, #else       certgetnamefunc get_name_funcs[4] = {               Cert_ Getcommonname, Cert_getlocalityname,               cert_getstatename, cert_getcountryname}; #endif

Make Chrome-j

AR (target) out/debug/obj.target/third_party/webkit/source/webkit/chromium/libwebkit.a
COPY Out/debug/chrome-wrapper
ACTION Generating Manpage out/debug/chrome.1
COPY Out/debug/xdg-mime
COPY out/debug/xdg-settings
COPY Out/debug/product_logo_48.png
CXX (target) OUT/DEBUG/OBJ.TARGET/CHROME/CHROME/APP/CHROME_MAIN.O
CXX (target) OUT/DEBUG/OBJ.TARGET/CHROME/CHROME/APP/CHROME_EXE_MAIN_GTK.O
CXX (target) OUT/DEBUG/OBJ.TARGET/CHROME/CHROME/APP/CHROME_MAIN_DELEGATE.O
LINK (target) out/debug/chrome
^[LINK (target) out/debug/chrome:finished

Thank goodness, it's finally over!

CD Out/debug and run Chrome

My god! Crash:(

[2560:2560:1091621926:fatal:field_trial.cc (183)] Check failed:next_group_number_ > Kdefaultgroupnumber + 1 (1 vs. 1)
BackTrace:
Base::d ebug::stacktrace::stacktrace () [0x55555743f072]
Logging::logmessage::~logmessage () [0x555557469635]
Base::fieldtrial::setforced () [0x55555742d1b2]
Variationsservice::createtrialfromstudy () [0x55555713a558]
Variationsservice::createtrialsfromseed () [0x555557138e28]
Chromebrowsermainparts::setupmetricsandfieldtrials () [0X5555570DA3BD]
Chromebrowsermainparts::P Recreatethreadsimpl () [0X5555570DDF1A]
Chromebrowsermainparts::P recreatethreads () [0x5555570dcfea]
Content::browsermainloop::createthreads () [0x555559b7c890]
(anonymous namespace):: Browsermainrunnerimpl::initialize () [0x555559b7e97f]
Browsermain () [0x555559b7b34b]
Content::runnamedprocesstypemain () [0x5555573aff00]
Content::contentmainrunnerimpl::run () [0x5555573b0b74]
Content::contentmain () [0x5555573af573]
Chromemain [0x55555668447d]
Main [0x55555668443c]
0x7ffff203f76d
0x555556684349

Debug it:
GDB chrome and Show Call stack:

[32321:32321:43801153618:warning:zygote_host_impl_linux.cc (165)] Running without the SUID sandbox! See Http://code.google.com/p/chromium/wiki/LinuxSUIDSandboxDevelopment For more information in developing with the Sandbox on.
[32347:32347:43817254895:info:gl_context_glx.cc (135)] Offscreen context was direct.
Segmentation fault (core dumped)

[CPP]View Plaincopy
  1. // This'll be called after the command-line have been mutated by about:flags   
  2. void chromebrowsermainparts::setupmetricsandfieldtrials () {

  3. metricsservice* metrics = Browser_process_->metrics_service ();
  4. if (ismetricsreportingenabled ())
  5. Metrics->forceclientidcreation (); //Needed below.   
  6. Field_trial_list_.reset (
  7. New  base::fieldtriallist (Metrics->getentropysource ()));
  8. //Ensure any field trials specified on the command line is initialized.   
  9. //Also Stop the Metrics service so that we don ' t pollute UMA.   
  10. #ifndef Ndebug   
  11. Const  commandline* command_line = commandline::forcurrentprocess ();
  12. if (Command_line->hasswitch (switches::kforcefieldtrials)) {
  13. std::string persistent = Command_line->getswitchvalueascii (
  14. Switches::kforcefieldtrials);
  15. BOOL  ret = base::fieldtriallist::createtrialsfromstring(persistent);
  16. CHECK (ret) << "Invalid--" << switches::kforcefieldtrials <<
  17. "list specified."  ;
  18. }
  19. #endif//Ndebug   
  20. variationsservice* Variations_service =
  21. Browser_process_->variations_service ();
  22. Variations_service->createtrialsfromseed (Browser_process_->local_state ());
  23. }

[CPP]View Plaincopy
  1. void browserprocessimpl::createlocalstate () {
  2. Dcheck (!created_local_state_ && local_state_.get () = = NULL);
  3. Created_local_state_ = true;
  4. FilePath Local_state_path;
  5. Pathservice::get (Chrome::file_local_state, &local_state_path);
  6. Local_state_.reset (
  7. Prefservice::createprefservice (Local_state_path, Policy_service (), NULL,
  8. false  ));
  9. //Initialize The prefs of the local state.   
  10. Browser::registerlocalstate (Local_state_.get ());
  11. }

[CPP]View Plaincopy
  1. //TODO (BRETTW): This function does not handle long paths (filename > Max_path)   
  2. //characters). This isn ' t supported very well by Windows right now, so it 's
  3. //moot, but we should keep the "this" for the future.   
  4. //Static   
  5. BOOL pathservice::get (int key, filepath* result) {
  6. //Special case the current directory because it can never is cached   
  7. if (Key = = Base::D ir_current)
  8. return  file_util::getcurrentdirectory (Result);
  9. if (Getfromcache (key, result))
  10. return   true;
  11. Addtocache (key, path);
  12. *result = path;
  13. return   true;
  14. }
The bad guy finally showed up, watch the path path_.:
P *result
$ = {Static Kseparators = 0x55555ad404c0 "/", static kcurrentdirectory = <same as static member of an already seen Ty Pe>,
Static kparentdirectory = <same as static member of an already seen type>, static kextensionseparator = ".", Path _ =
"/home/michael/.config/chromium/local State"}
(GDB)

Delete this local state,chrome ran up, the reason is that the first run up Chrome, I clicked "whether to restore the last page" is a button, resulting in local state resolution error, see the end of this file a heap of seed data (it is a mouse):
Local State:


"Uninstall_metrics": {
"Installation_date2": "1426134422",
"Launch_count": "2"
},
"User_experience_metrics": {
"Low_entropy_source": 2024,
"session_id": 1,
"Stability": {
"Breakpad_registration_fail": 2,
"BREAKPAD_REGISTRATION_OK": 0,
"Crash_count": 1,
"Debugger_not_present": 2,
"Debugger_present": 0,
"Exited_cleanly": false,
"Incomplete_session_end_count": 0,
"Last_timestamp_sec": "0",
"Launch_count": 2,
"Launch_time_sec": "1426138598",
"Page_load_count": 0,
"Renderer_crash_count": 0,
"Renderer_hang_count": 0,
"Session_end_completed": true,
"Stats_buildtime": "1426159202",
"Stats_version": "21.0.1167.0-64-devel"
}
},
"variations_seed ":" Cigxmtzhnmmwmtn1z2dlc3rvbmlmawnhdglvbl9bnv9tdgfibguqarj/k8obip ...

Chrome Compilation Error Rollup

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.