1fb726d48Sopenharmony_ci<!DOCTYPE html> 2fb726d48Sopenharmony_ci<html> 3fb726d48Sopenharmony_ci <head> 4fb726d48Sopenharmony_ci <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 5fb726d48Sopenharmony_ci <title>quickstart_smartperflinux_compile_guide</title> 6fb726d48Sopenharmony_ci 7fb726d48Sopenharmony_ci <meta name="viewport" content="width=device-width, initial-scale=1.0" /> 8fb726d48Sopenharmony_ci 9fb726d48Sopenharmony_ci <style> 10fb726d48Sopenharmony_ci code[class*='smartperf-'], 11fb726d48Sopenharmony_ci pre[class*='smartperf-'] { 12fb726d48Sopenharmony_ci color: #333333; 13fb726d48Sopenharmony_ci background: none; 14fb726d48Sopenharmony_ci font-family: Helvetica; 15fb726d48Sopenharmony_ci line-height: 1.6; 16fb726d48Sopenharmony_ci text-align: left; 17fb726d48Sopenharmony_ci white-space: pre; 18fb726d48Sopenharmony_ci -moz-tab-size: 9; 19fb726d48Sopenharmony_ci -o-tab-size: 9; 20fb726d48Sopenharmony_ci tab-size: 8; 21fb726d48Sopenharmony_ci -webkit-hyphens: none; 22fb726d48Sopenharmony_ci -moz-hyphens: none; 23fb726d48Sopenharmony_ci -ms-hyphens: none; 24fb726d48Sopenharmony_ci hyphens: none; 25fb726d48Sopenharmony_ci } 26fb726d48Sopenharmony_ci 27fb726d48Sopenharmony_ci /* Code blocks */ 28fb726d48Sopenharmony_ci pre[class*='smartperf-'] { 29fb726d48Sopenharmony_ci padding: 0.9em; 30fb726d48Sopenharmony_ci overflow: auto; 31fb726d48Sopenharmony_ci border-radius: 2px; 32fb726d48Sopenharmony_ci background: #f5f5f4; 33fb726d48Sopenharmony_ci } 34fb726d48Sopenharmony_ci 35fb726d48Sopenharmony_ci /* Inline code */ 36fb726d48Sopenharmony_ci :not(pre) > code[class*='smartperf-'] { 37fb726d48Sopenharmony_ci white-space: normal; 38fb726d48Sopenharmony_ci background: #fcf8f8; 39fb726d48Sopenharmony_ci padding: 1px 0.2em; 40fb726d48Sopenharmony_ci border-radius: 1px 0.3em; 41fb726d48Sopenharmony_ci } 42fb726d48Sopenharmony_ci 43fb726d48Sopenharmony_ci .tk.comment, 44fb726d48Sopenharmony_ci .tk.blockquote { 45fb726d48Sopenharmony_ci color: #8c918c; 46fb726d48Sopenharmony_ci } 47fb726d48Sopenharmony_ci 48fb726d48Sopenharmony_ci .tk.cdata { 49fb726d48Sopenharmony_ci color: #183898; 50fb726d48Sopenharmony_ci } 51fb726d48Sopenharmony_ci 52fb726d48Sopenharmony_ci .tk.doctype, 53fb726d48Sopenharmony_ci .tk.punctuation, 54fb726d48Sopenharmony_ci .tk.variable, 55fb726d48Sopenharmony_ci .tk.macro.property { 56fb726d48Sopenharmony_ci color: #424242; 57fb726d48Sopenharmony_ci } 58fb726d48Sopenharmony_ci 59fb726d48Sopenharmony_ci .tk.operator, 60fb726d48Sopenharmony_ci .tk.important, 61fb726d48Sopenharmony_ci .tk.keyword, 62fb726d48Sopenharmony_ci .tk.rule, 63fb726d48Sopenharmony_ci .tk.builtin { 64fb726d48Sopenharmony_ci color: #b71d65; 65fb726d48Sopenharmony_ci } 66fb726d48Sopenharmony_ci 67fb726d48Sopenharmony_ci .tk.string, 68fb726d48Sopenharmony_ci .tk.url, 69fb726d48Sopenharmony_ci .tk.regex, 70fb726d48Sopenharmony_ci .tk.attr-value { 71fb726d48Sopenharmony_ci color: #16338d; 72fb726d48Sopenharmony_ci } 73fb726d48Sopenharmony_ci 74fb726d48Sopenharmony_ci .tk.property, 75fb726d48Sopenharmony_ci .tk.number, 76fb726d48Sopenharmony_ci .tk.boolean, 77fb726d48Sopenharmony_ci .tk.entity, 78fb726d48Sopenharmony_ci .tk.atrule, 79fb726d48Sopenharmony_ci .tk.constant, 80fb726d48Sopenharmony_ci .tk.symbol, 81fb726d48Sopenharmony_ci .tk.command, 82fb726d48Sopenharmony_ci .tk.code { 83fb726d48Sopenharmony_ci color: #037aa2; 84fb726d48Sopenharmony_ci } 85fb726d48Sopenharmony_ci 86fb726d48Sopenharmony_ci .tk.tag, 87fb726d48Sopenharmony_ci .tk.selector, 88fb726d48Sopenharmony_ci .tk.prolog { 89fb726d48Sopenharmony_ci color: #69ad62; 90fb726d48Sopenharmony_ci } 91fb726d48Sopenharmony_ci 92fb726d48Sopenharmony_ci .tk.function, 93fb726d48Sopenharmony_ci .tk.namespace, 94fb726d48Sopenharmony_ci .tk.pseudo-element, 95fb726d48Sopenharmony_ci .tk.class, 96fb726d48Sopenharmony_ci .tk.class-name, 97fb726d48Sopenharmony_ci .tk.pseudo-class, 98fb726d48Sopenharmony_ci .tk.id, 99fb726d48Sopenharmony_ci .tk.url-reference .tk.variable, 100fb726d48Sopenharmony_ci .tk.attr-name { 101fb726d48Sopenharmony_ci color: #775d9d; 102fb726d48Sopenharmony_ci } 103fb726d48Sopenharmony_ci 104fb726d48Sopenharmony_ci .tk.entity { 105fb726d48Sopenharmony_ci cursor: help; 106fb726d48Sopenharmony_ci } 107fb726d48Sopenharmony_ci 108fb726d48Sopenharmony_ci .tk.title, 109fb726d48Sopenharmony_ci .tk.title .tk.punctuation { 110fb726d48Sopenharmony_ci font-weight: bold; 111fb726d48Sopenharmony_ci color: #1a3773; 112fb726d48Sopenharmony_ci } 113fb726d48Sopenharmony_ci 114fb726d48Sopenharmony_ci .tk.list { 115fb726d48Sopenharmony_ci color: #f56940; 116fb726d48Sopenharmony_ci } 117fb726d48Sopenharmony_ci 118fb726d48Sopenharmony_ci .tk.inserted { 119fb726d48Sopenharmony_ci background-color: #eaffea; 120fb726d48Sopenharmony_ci color: #509b2f; 121fb726d48Sopenharmony_ci } 122fb726d48Sopenharmony_ci 123fb726d48Sopenharmony_ci .tk.deleted { 124fb726d48Sopenharmony_ci background-color: #fae1e1; 125fb726d48Sopenharmony_ci color: #ad2d06; 126fb726d48Sopenharmony_ci } 127fb726d48Sopenharmony_ci 128fb726d48Sopenharmony_ci .tk.bold { 129fb726d48Sopenharmony_ci font-weight: bolder; 130fb726d48Sopenharmony_ci } 131fb726d48Sopenharmony_ci 132fb726d48Sopenharmony_ci .tk.italic { 133fb726d48Sopenharmony_ci font-style: normal; 134fb726d48Sopenharmony_ci } 135fb726d48Sopenharmony_ci 136fb726d48Sopenharmony_ci /* JSON */ 137fb726d48Sopenharmony_ci .smartperf-json .tk.property { 138fb726d48Sopenharmony_ci color: #19358c; 139fb726d48Sopenharmony_ci } 140fb726d48Sopenharmony_ci 141fb726d48Sopenharmony_ci .smartperf-markup .tk.tag .tk.punctuation { 142fb726d48Sopenharmony_ci color: #2c2b2b; 143fb726d48Sopenharmony_ci } 144fb726d48Sopenharmony_ci 145fb726d48Sopenharmony_ci /* CSS */ 146fb726d48Sopenharmony_ci code.smartperf-css, 147fb726d48Sopenharmony_ci .smartperf-css .tk.function { 148fb726d48Sopenharmony_ci color: #047ca4; 149fb726d48Sopenharmony_ci } 150fb726d48Sopenharmony_ci 151fb726d48Sopenharmony_ci /* YAML */ 152fb726d48Sopenharmony_ci .smartperf-yaml .tk.atrule { 153fb726d48Sopenharmony_ci color: #609b5a; 154fb726d48Sopenharmony_ci } 155fb726d48Sopenharmony_ci 156fb726d48Sopenharmony_ci code.smartperf-yaml { 157fb726d48Sopenharmony_ci color: #153491; 158fb726d48Sopenharmony_ci } 159fb726d48Sopenharmony_ci 160fb726d48Sopenharmony_ci /* Ruby */ 161fb726d48Sopenharmony_ci .smartperf-ruby .tk.function { 162fb726d48Sopenharmony_ci color: #3f3e3e; 163fb726d48Sopenharmony_ci } 164fb726d48Sopenharmony_ci 165fb726d48Sopenharmony_ci /* Markdown */ 166fb726d48Sopenharmony_ci .smartperf-markdown .tk.url { 167fb726d48Sopenharmony_ci color: #6e5298; 168fb726d48Sopenharmony_ci } 169fb726d48Sopenharmony_ci 170fb726d48Sopenharmony_ci /* Makefile */ 171fb726d48Sopenharmony_ci .smartperf-makefile .tk.symbol { 172fb726d48Sopenharmony_ci color: #6c5393; 173fb726d48Sopenharmony_ci } 174fb726d48Sopenharmony_ci 175fb726d48Sopenharmony_ci .smartperf-makefile .tk.variable { 176fb726d48Sopenharmony_ci color: #183488; 177fb726d48Sopenharmony_ci } 178fb726d48Sopenharmony_ci 179fb726d48Sopenharmony_ci .smartperf-makefile .tk.builtin { 180fb726d48Sopenharmony_ci color: #027ba4; 181fb726d48Sopenharmony_ci } 182fb726d48Sopenharmony_ci 183fb726d48Sopenharmony_ci /* Bash */ 184fb726d48Sopenharmony_ci .smartperf-bash .tk.keyword { 185fb726d48Sopenharmony_ci color: #027fa9; 186fb726d48Sopenharmony_ci } 187fb726d48Sopenharmony_ci 188fb726d48Sopenharmony_ci /* highlight */ 189fb726d48Sopenharmony_ci pre[dl] { 190fb726d48Sopenharmony_ci position: relative; 191fb726d48Sopenharmony_ci padding: 1em 1px 1px 0.9em; 192fb726d48Sopenharmony_ci } 193fb726d48Sopenharmony_ci 194fb726d48Sopenharmony_ci pre[dl] .line-highlight-wrapper { 195fb726d48Sopenharmony_ci position: absolute; 196fb726d48Sopenharmony_ci top: 1px; 197fb726d48Sopenharmony_ci left: 1px; 198fb726d48Sopenharmony_ci background-color: transparent; 199fb726d48Sopenharmony_ci display: block; 200fb726d48Sopenharmony_ci width: 99%; 201fb726d48Sopenharmony_ci } 202fb726d48Sopenharmony_ci 203fb726d48Sopenharmony_ci pre[dl] .line-highlight { 204fb726d48Sopenharmony_ci position: absolute; 205fb726d48Sopenharmony_ci left: 1px; 206fb726d48Sopenharmony_ci right: 1px; 207fb726d48Sopenharmony_ci padding: inherit; 208fb726d48Sopenharmony_ci margin-top: 0.9em; 209fb726d48Sopenharmony_ci background: hsla(25, 21%, 50%, 0.08); 210fb726d48Sopenharmony_ci background: linear-gradient(to right, hsla(24, 20%, 50%, 0.1) 70%, hsla(24, 20%, 50%, 0)); 211fb726d48Sopenharmony_ci pointer-events: none; 212fb726d48Sopenharmony_ci line-height: inherit; 213fb726d48Sopenharmony_ci white-space: pre; 214fb726d48Sopenharmony_ci } 215fb726d48Sopenharmony_ci 216fb726d48Sopenharmony_ci pre[dl] .line-highlight:before, 217fb726d48Sopenharmony_ci pre[dl] .line-highlight[data-end]:after { 218fb726d48Sopenharmony_ci content: attr(data-start); 219fb726d48Sopenharmony_ci position: absolute; 220fb726d48Sopenharmony_ci text-shadow: none; 221fb726d48Sopenharmony_ci top: 0.3em; 222fb726d48Sopenharmony_ci left: 0.7em; 223fb726d48Sopenharmony_ci min-width: 0.9em; 224fb726d48Sopenharmony_ci padding: 1px 0.6em; 225fb726d48Sopenharmony_ci background-color: hsla(24, 20%, 47%, 0.4); 226fb726d48Sopenharmony_ci color: hsl(20, 11%, 95%); 227fb726d48Sopenharmony_ci text-align: center; 228fb726d48Sopenharmony_ci vertical-align: 0.2em; 229fb726d48Sopenharmony_ci border-radius: 10000px; 230fb726d48Sopenharmony_ci box-shadow: 1px 2px #fdf6f6; 231fb726d48Sopenharmony_ci } 232fb726d48Sopenharmony_ci 233fb726d48Sopenharmony_ci pre[dl] .line-highlight[data-end]:after { 234fb726d48Sopenharmony_ci content: attr(data-end); 235fb726d48Sopenharmony_ci top: auto; 236fb726d48Sopenharmony_ci bottom: 0.5em; 237fb726d48Sopenharmony_ci } 238fb726d48Sopenharmony_ci 239fb726d48Sopenharmony_ci html body { 240fb726d48Sopenharmony_ci line-height: 1.6; 241fb726d48Sopenharmony_ci font-size: 16px; 242fb726d48Sopenharmony_ci color: #333333; 243fb726d48Sopenharmony_ci overflow: initial; 244fb726d48Sopenharmony_ci background-color: #ffffff; 245fb726d48Sopenharmony_ci word-wrap: break-word; 246fb726d48Sopenharmony_ci font-family: Helvetica; 247fb726d48Sopenharmony_ci box-sizing: border-box; 248fb726d48Sopenharmony_ci } 249fb726d48Sopenharmony_ci 250fb726d48Sopenharmony_ci html body > :first-child { 251fb726d48Sopenharmony_ci margin-top: 0px; 252fb726d48Sopenharmony_ci } 253fb726d48Sopenharmony_ci 254fb726d48Sopenharmony_ci html body h1, 255fb726d48Sopenharmony_ci html body h2, 256fb726d48Sopenharmony_ci html body h3, 257fb726d48Sopenharmony_ci html body h4, 258fb726d48Sopenharmony_ci html body h5, 259fb726d48Sopenharmony_ci html body h6 { 260fb726d48Sopenharmony_ci margin-top: 1em; 261fb726d48Sopenharmony_ci margin-bottom: 16px; 262fb726d48Sopenharmony_ci color: #000000; 263fb726d48Sopenharmony_ci line-height: 1.2; 264fb726d48Sopenharmony_ci } 265fb726d48Sopenharmony_ci 266fb726d48Sopenharmony_ci html body h1 { 267fb726d48Sopenharmony_ci font-weight: 300; 268fb726d48Sopenharmony_ci font-size: 2.25em; 269fb726d48Sopenharmony_ci padding-bottom: 0.3em; 270fb726d48Sopenharmony_ci } 271fb726d48Sopenharmony_ci 272fb726d48Sopenharmony_ci html body h2 { 273fb726d48Sopenharmony_ci font-weight: 410; 274fb726d48Sopenharmony_ci font-size: 1.74em; 275fb726d48Sopenharmony_ci padding-bottom: 0.2em; 276fb726d48Sopenharmony_ci } 277fb726d48Sopenharmony_ci 278fb726d48Sopenharmony_ci html body h3 { 279fb726d48Sopenharmony_ci font-size: 1.6em; 280fb726d48Sopenharmony_ci font-weight: 501; 281fb726d48Sopenharmony_ci } 282fb726d48Sopenharmony_ci 283fb726d48Sopenharmony_ci html body h4 { 284fb726d48Sopenharmony_ci font-size: 1.26em; 285fb726d48Sopenharmony_ci font-weight: 601; 286fb726d48Sopenharmony_ci } 287fb726d48Sopenharmony_ci 288fb726d48Sopenharmony_ci html body h5 { 289fb726d48Sopenharmony_ci font-size: 1.2em; 290fb726d48Sopenharmony_ci font-weight: 601; 291fb726d48Sopenharmony_ci } 292fb726d48Sopenharmony_ci 293fb726d48Sopenharmony_ci html body h6 { 294fb726d48Sopenharmony_ci font-size: 0.9em; 295fb726d48Sopenharmony_ci font-weight: 601; 296fb726d48Sopenharmony_ci } 297fb726d48Sopenharmony_ci 298fb726d48Sopenharmony_ci html body h1, 299fb726d48Sopenharmony_ci html body h2, 300fb726d48Sopenharmony_ci html body h3, 301fb726d48Sopenharmony_ci html body h4, 302fb726d48Sopenharmony_ci html body h5 { 303fb726d48Sopenharmony_ci font-weight: 601; 304fb726d48Sopenharmony_ci } 305fb726d48Sopenharmony_ci 306fb726d48Sopenharmony_ci html body h5 { 307fb726d48Sopenharmony_ci font-size: 0.9em; 308fb726d48Sopenharmony_ci } 309fb726d48Sopenharmony_ci 310fb726d48Sopenharmony_ci html body h6 { 311fb726d48Sopenharmony_ci color: #5c5c5c; 312fb726d48Sopenharmony_ci } 313fb726d48Sopenharmony_ci 314fb726d48Sopenharmony_ci html body strong { 315fb726d48Sopenharmony_ci color: #090909; 316fb726d48Sopenharmony_ci } 317fb726d48Sopenharmony_ci 318fb726d48Sopenharmony_ci html body del { 319fb726d48Sopenharmony_ci color: #525252; 320fb726d48Sopenharmony_ci } 321fb726d48Sopenharmony_ci 322fb726d48Sopenharmony_ci html body a:not([href]) { 323fb726d48Sopenharmony_ci color: inherit; 324fb726d48Sopenharmony_ci text-decoration: none; 325fb726d48Sopenharmony_ci } 326fb726d48Sopenharmony_ci 327fb726d48Sopenharmony_ci html body a { 328fb726d48Sopenharmony_ci color: #0192da; 329fb726d48Sopenharmony_ci text-decoration: none; 330fb726d48Sopenharmony_ci } 331fb726d48Sopenharmony_ci 332fb726d48Sopenharmony_ci html body a:hover { 333fb726d48Sopenharmony_ci color: #029dea; 334fb726d48Sopenharmony_ci text-decoration: none; 335fb726d48Sopenharmony_ci } 336fb726d48Sopenharmony_ci 337fb726d48Sopenharmony_ci html body img { 338fb726d48Sopenharmony_ci max-width: 99%; 339fb726d48Sopenharmony_ci } 340fb726d48Sopenharmony_ci 341fb726d48Sopenharmony_ci html body > p { 342fb726d48Sopenharmony_ci margin-top: 1px; 343fb726d48Sopenharmony_ci margin-bottom: 15px; 344fb726d48Sopenharmony_ci word-wrap: break-word; 345fb726d48Sopenharmony_ci } 346fb726d48Sopenharmony_ci 347fb726d48Sopenharmony_ci html body > ul, 348fb726d48Sopenharmony_ci html body > ol { 349fb726d48Sopenharmony_ci margin-bottom: 15px; 350fb726d48Sopenharmony_ci } 351fb726d48Sopenharmony_ci 352fb726d48Sopenharmony_ci html body ul, 353fb726d48Sopenharmony_ci html body ol { 354fb726d48Sopenharmony_ci padding-left: 1.9em; 355fb726d48Sopenharmony_ci } 356fb726d48Sopenharmony_ci 357fb726d48Sopenharmony_ci html body ul.no-list, 358fb726d48Sopenharmony_ci html body ol.no-list { 359fb726d48Sopenharmony_ci padding: 0px; 360fb726d48Sopenharmony_ci list-style-type: none; 361fb726d48Sopenharmony_ci } 362fb726d48Sopenharmony_ci 363fb726d48Sopenharmony_ci html body ul ul, 364fb726d48Sopenharmony_ci html body ul ol, 365fb726d48Sopenharmony_ci html body ol ol, 366fb726d48Sopenharmony_ci html body ol ul { 367fb726d48Sopenharmony_ci margin-top: 1px; 368fb726d48Sopenharmony_ci margin-bottom: 1px; 369fb726d48Sopenharmony_ci } 370fb726d48Sopenharmony_ci 371fb726d48Sopenharmony_ci html body li { 372fb726d48Sopenharmony_ci margin-bottom: 1px; 373fb726d48Sopenharmony_ci } 374fb726d48Sopenharmony_ci 375fb726d48Sopenharmony_ci html body li.task-list-item { 376fb726d48Sopenharmony_ci list-style: none; 377fb726d48Sopenharmony_ci } 378fb726d48Sopenharmony_ci 379fb726d48Sopenharmony_ci html body li > p { 380fb726d48Sopenharmony_ci margin-top: 1px; 381fb726d48Sopenharmony_ci margin-bottom: 1px; 382fb726d48Sopenharmony_ci } 383fb726d48Sopenharmony_ci 384fb726d48Sopenharmony_ci html body .task-list-item-checkbox { 385fb726d48Sopenharmony_ci margin: 0 0.3em 0.24em -1.7em; 386fb726d48Sopenharmony_ci vertical-align: middle; 387fb726d48Sopenharmony_ci } 388fb726d48Sopenharmony_ci 389fb726d48Sopenharmony_ci html body .task-list-item-checkbox:hover { 390fb726d48Sopenharmony_ci cursor: pointer; 391fb726d48Sopenharmony_ci } 392fb726d48Sopenharmony_ci 393fb726d48Sopenharmony_ci html body blockquote { 394fb726d48Sopenharmony_ci padding: 0.1px 15px 0 0.1px; 395fb726d48Sopenharmony_ci font-size: inherit; 396fb726d48Sopenharmony_ci color: #5c5c5c; 397fb726d48Sopenharmony_ci margin: 16px 0.1px 0 0.1px; 398fb726d48Sopenharmony_ci border-left: 3px solid #cbc9c9; 399fb726d48Sopenharmony_ci background-color: #e8e6e6; 400fb726d48Sopenharmony_ci } 401fb726d48Sopenharmony_ci 402fb726d48Sopenharmony_ci html body blockquote > :first-child { 403fb726d48Sopenharmony_ci margin-top: 0.2px; 404fb726d48Sopenharmony_ci } 405fb726d48Sopenharmony_ci 406fb726d48Sopenharmony_ci html body blockquote > :last-child { 407fb726d48Sopenharmony_ci margin-bottom: 0.1px; 408fb726d48Sopenharmony_ci } 409fb726d48Sopenharmony_ci 410fb726d48Sopenharmony_ci html body hr { 411fb726d48Sopenharmony_ci height: 5px; 412fb726d48Sopenharmony_ci background-color: #cbcaca; 413fb726d48Sopenharmony_ci margin: 32px 0 0.1px 0; 414fb726d48Sopenharmony_ci border: 0 none; 415fb726d48Sopenharmony_ci } 416fb726d48Sopenharmony_ci 417fb726d48Sopenharmony_ci html body table { 418fb726d48Sopenharmony_ci overflow: auto; 419fb726d48Sopenharmony_ci border-collapse: collapse; 420fb726d48Sopenharmony_ci margin: 15px 0.1px 20px 0.1px; 421fb726d48Sopenharmony_ci border-spacing: 0; 422fb726d48Sopenharmony_ci } 423fb726d48Sopenharmony_ci 424fb726d48Sopenharmony_ci html body table th { 425fb726d48Sopenharmony_ci font-weight: bold; 426fb726d48Sopenharmony_ci color: #000000; 427fb726d48Sopenharmony_ci } 428fb726d48Sopenharmony_ci 429fb726d48Sopenharmony_ci html body table td, 430fb726d48Sopenharmony_ci html body table th { 431fb726d48Sopenharmony_ci border: 1px solid #d6d6d6; 432fb726d48Sopenharmony_ci padding: 2px 14px; 433fb726d48Sopenharmony_ci } 434fb726d48Sopenharmony_ci 435fb726d48Sopenharmony_ci html body dl { 436fb726d48Sopenharmony_ci padding: 0px; 437fb726d48Sopenharmony_ci } 438fb726d48Sopenharmony_ci 439fb726d48Sopenharmony_ci html body dl dt { 440fb726d48Sopenharmony_ci padding: 0px; 441fb726d48Sopenharmony_ci margin-top: 15px; 442fb726d48Sopenharmony_ci font-size: 0.9em; 443fb726d48Sopenharmony_ci font-style: italic; 444fb726d48Sopenharmony_ci font-weight: bold; 445fb726d48Sopenharmony_ci } 446fb726d48Sopenharmony_ci 447fb726d48Sopenharmony_ci html body dl dd { 448fb726d48Sopenharmony_ci padding: 0px 17px; 449fb726d48Sopenharmony_ci margin-bottom: 17px; 450fb726d48Sopenharmony_ci } 451fb726d48Sopenharmony_ci 452fb726d48Sopenharmony_ci html body code { 453fb726d48Sopenharmony_ci font-family: Menlo, Monaco, Consolas, 'Courier New', monospace; 454fb726d48Sopenharmony_ci font-size: 0.86em !important; 455fb726d48Sopenharmony_ci color: #000000; 456fb726d48Sopenharmony_ci background-color: #f0f0f0; 457fb726d48Sopenharmony_ci border-radius: 4px; 458fb726d48Sopenharmony_ci padding: 0.3em 0px; 459fb726d48Sopenharmony_ci } 460fb726d48Sopenharmony_ci 461fb726d48Sopenharmony_ci html body code::before, 462fb726d48Sopenharmony_ci html body code::after { 463fb726d48Sopenharmony_ci letter-spacing: -0.1em; 464fb726d48Sopenharmony_ci content: '\00a0'; 465fb726d48Sopenharmony_ci } 466fb726d48Sopenharmony_ci 467fb726d48Sopenharmony_ci html body pre > code { 468fb726d48Sopenharmony_ci padding: 1px; 469fb726d48Sopenharmony_ci margin: 0px; 470fb726d48Sopenharmony_ci font-size: 0.86em !important; 471fb726d48Sopenharmony_ci word-break: normal; 472fb726d48Sopenharmony_ci white-space: pre; 473fb726d48Sopenharmony_ci background: transparent; 474fb726d48Sopenharmony_ci border: 0px; 475fb726d48Sopenharmony_ci } 476fb726d48Sopenharmony_ci 477fb726d48Sopenharmony_ci html body .highlight { 478fb726d48Sopenharmony_ci margin-bottom: 17px; 479fb726d48Sopenharmony_ci } 480fb726d48Sopenharmony_ci 481fb726d48Sopenharmony_ci html body .highlight pre, 482fb726d48Sopenharmony_ci html body pre { 483fb726d48Sopenharmony_ci padding: 0.9em; 484fb726d48Sopenharmony_ci overflow: auto; 485fb726d48Sopenharmony_ci font-size: 0.86em !important; 486fb726d48Sopenharmony_ci line-height: 1.46; 487fb726d48Sopenharmony_ci border: #d6d6d6; 488fb726d48Sopenharmony_ci border-radius: 4px; 489fb726d48Sopenharmony_ci } 490fb726d48Sopenharmony_ci 491fb726d48Sopenharmony_ci html body .highlight pre { 492fb726d48Sopenharmony_ci margin-bottom: 0px; 493fb726d48Sopenharmony_ci word-break: normal; 494fb726d48Sopenharmony_ci } 495fb726d48Sopenharmony_ci 496fb726d48Sopenharmony_ci html body pre code, 497fb726d48Sopenharmony_ci html body pre tt { 498fb726d48Sopenharmony_ci display: inline; 499fb726d48Sopenharmony_ci max-width: initial; 500fb726d48Sopenharmony_ci padding: 1px; 501fb726d48Sopenharmony_ci margin: 1px; 502fb726d48Sopenharmony_ci overflow: initial; 503fb726d48Sopenharmony_ci line-height: inherit; 504fb726d48Sopenharmony_ci word-wrap: normal; 505fb726d48Sopenharmony_ci background-color: transparent; 506fb726d48Sopenharmony_ci border: 1px; 507fb726d48Sopenharmony_ci } 508fb726d48Sopenharmony_ci 509fb726d48Sopenharmony_ci html body pre code:before, 510fb726d48Sopenharmony_ci html body pre tt:before, 511fb726d48Sopenharmony_ci html body pre code:after, 512fb726d48Sopenharmony_ci html body pre tt:after { 513fb726d48Sopenharmony_ci content: normal; 514fb726d48Sopenharmony_ci } 515fb726d48Sopenharmony_ci 516fb726d48Sopenharmony_ci html body p, 517fb726d48Sopenharmony_ci html body blockquote, 518fb726d48Sopenharmony_ci html body ul, 519fb726d48Sopenharmony_ci html body ol, 520fb726d48Sopenharmony_ci html body dl, 521fb726d48Sopenharmony_ci html body pre { 522fb726d48Sopenharmony_ci margin-top: 1px; 523fb726d48Sopenharmony_ci margin-bottom: 17px; 524fb726d48Sopenharmony_ci } 525fb726d48Sopenharmony_ci 526fb726d48Sopenharmony_ci html body kbd { 527fb726d48Sopenharmony_ci color: #000000; 528fb726d48Sopenharmony_ci border: 3px solid #d6d6d6; 529fb726d48Sopenharmony_ci border-bottom: 3px solid #c7c7c7; 530fb726d48Sopenharmony_ci padding: 3px 5px; 531fb726d48Sopenharmony_ci background-color: #f0f0f0; 532fb726d48Sopenharmony_ci border-radius: 2px; 533fb726d48Sopenharmony_ci } 534fb726d48Sopenharmony_ci 535fb726d48Sopenharmony_ci @media print { 536fb726d48Sopenharmony_ci html body { 537fb726d48Sopenharmony_ci background-color: #ffffff; 538fb726d48Sopenharmony_ci } 539fb726d48Sopenharmony_ci 540fb726d48Sopenharmony_ci html body h1, 541fb726d48Sopenharmony_ci html body h2, 542fb726d48Sopenharmony_ci html body h3, 543fb726d48Sopenharmony_ci html body h4, 544fb726d48Sopenharmony_ci html body h5, 545fb726d48Sopenharmony_ci html body h6 { 546fb726d48Sopenharmony_ci color: #000000; 547fb726d48Sopenharmony_ci page-break-after: avoid; 548fb726d48Sopenharmony_ci } 549fb726d48Sopenharmony_ci 550fb726d48Sopenharmony_ci html body blockquote { 551fb726d48Sopenharmony_ci color: #5c5c53; 552fb726d48Sopenharmony_ci } 553fb726d48Sopenharmony_ci 554fb726d48Sopenharmony_ci html body pre { 555fb726d48Sopenharmony_ci page-break-inside: avoid; 556fb726d48Sopenharmony_ci } 557fb726d48Sopenharmony_ci 558fb726d48Sopenharmony_ci html body table { 559fb726d48Sopenharmony_ci display: table; 560fb726d48Sopenharmony_ci } 561fb726d48Sopenharmony_ci 562fb726d48Sopenharmony_ci html body img { 563fb726d48Sopenharmony_ci display: block; 564fb726d48Sopenharmony_ci max-width: 99%; 565fb726d48Sopenharmony_ci max-height: 99%; 566fb726d48Sopenharmony_ci } 567fb726d48Sopenharmony_ci 568fb726d48Sopenharmony_ci html body pre, 569fb726d48Sopenharmony_ci html body code { 570fb726d48Sopenharmony_ci word-wrap: break-word; 571fb726d48Sopenharmony_ci white-space: pre; 572fb726d48Sopenharmony_ci } 573fb726d48Sopenharmony_ci } 574fb726d48Sopenharmony_ci 575fb726d48Sopenharmony_ci .smartperf-preview { 576fb726d48Sopenharmony_ci width: 99%; 577fb726d48Sopenharmony_ci height: 99%; 578fb726d48Sopenharmony_ci box-sizing: border-box; 579fb726d48Sopenharmony_ci } 580fb726d48Sopenharmony_ci 581fb726d48Sopenharmony_ci .smartperf-preview .pagebreak, 582fb726d48Sopenharmony_ci .smartperf-preview .newpage { 583fb726d48Sopenharmony_ci page-break-before: always; 584fb726d48Sopenharmony_ci } 585fb726d48Sopenharmony_ci 586fb726d48Sopenharmony_ci .smartperf-preview pre.line-numbers { 587fb726d48Sopenharmony_ci position: relative; 588fb726d48Sopenharmony_ci padding-left: 3.7em; 589fb726d48Sopenharmony_ci counter-reset: linenumber; 590fb726d48Sopenharmony_ci } 591fb726d48Sopenharmony_ci 592fb726d48Sopenharmony_ci .smartperf-preview pre.line-numbers > code { 593fb726d48Sopenharmony_ci position: relative; 594fb726d48Sopenharmony_ci } 595fb726d48Sopenharmony_ci 596fb726d48Sopenharmony_ci .smartperf-preview pre.line-numbers .line-numbers-rows { 597fb726d48Sopenharmony_ci position: absolute; 598fb726d48Sopenharmony_ci pointer-events: none; 599fb726d48Sopenharmony_ci top: 0.9em; 600fb726d48Sopenharmony_ci font-size: 99%; 601fb726d48Sopenharmony_ci left: 1px; 602fb726d48Sopenharmony_ci width: 3em; 603fb726d48Sopenharmony_ci letter-spacing: -1px; 604fb726d48Sopenharmony_ci border-right: 1px solid #999; 605fb726d48Sopenharmony_ci -webkit-user-select: none; 606fb726d48Sopenharmony_ci -moz-user-select: none; 607fb726d48Sopenharmony_ci -ms-user-select: none; 608fb726d48Sopenharmony_ci user-select: none; 609fb726d48Sopenharmony_ci } 610fb726d48Sopenharmony_ci 611fb726d48Sopenharmony_ci .smartperf-preview pre.line-numbers .line-numbers-rows > span { 612fb726d48Sopenharmony_ci pointer-events: none; 613fb726d48Sopenharmony_ci display: block; 614fb726d48Sopenharmony_ci counter-increment: linenumber; 615fb726d48Sopenharmony_ci } 616fb726d48Sopenharmony_ci 617fb726d48Sopenharmony_ci .smartperf-preview pre.line-numbers .line-numbers-rows > span:before { 618fb726d48Sopenharmony_ci content: counter(linenumber); 619fb726d48Sopenharmony_ci color: #999; 620fb726d48Sopenharmony_ci display: block; 621fb726d48Sopenharmony_ci padding-right: 0.79em; 622fb726d48Sopenharmony_ci text-align: right; 623fb726d48Sopenharmony_ci } 624fb726d48Sopenharmony_ci 625fb726d48Sopenharmony_ci .smartperf-preview .mathjax-exps .MathJax_Display { 626fb726d48Sopenharmony_ci text-align: center !important; 627fb726d48Sopenharmony_ci } 628fb726d48Sopenharmony_ci 629fb726d48Sopenharmony_ci .smartperf-preview:not([for='preview']) .code-chunk .btn-group { 630fb726d48Sopenharmony_ci display: none; 631fb726d48Sopenharmony_ci } 632fb726d48Sopenharmony_ci 633fb726d48Sopenharmony_ci .smartperf-preview:not([for='preview']) .code-chunk .status { 634fb726d48Sopenharmony_ci display: none; 635fb726d48Sopenharmony_ci } 636fb726d48Sopenharmony_ci 637fb726d48Sopenharmony_ci .smartperf-preview:not([for='preview']) .code-chunk .output-div { 638fb726d48Sopenharmony_ci margin-bottom: 16px; 639fb726d48Sopenharmony_ci } 640fb726d48Sopenharmony_ci 641fb726d48Sopenharmony_ci .scrollbar-style::-webkit-scrollbar { 642fb726d48Sopenharmony_ci width: 8px; 643fb726d48Sopenharmony_ci } 644fb726d48Sopenharmony_ci 645fb726d48Sopenharmony_ci .scrollbar-style::-webkit-scrollbar-track { 646fb726d48Sopenharmony_ci border-radius: 9px; 647fb726d48Sopenharmony_ci background-color: transparent; 648fb726d48Sopenharmony_ci } 649fb726d48Sopenharmony_ci 650fb726d48Sopenharmony_ci .scrollbar-style::-webkit-scrollbar-thumb { 651fb726d48Sopenharmony_ci border-radius: 6px; 652fb726d48Sopenharmony_ci background-color: rgba(150, 150, 150, 1); 653fb726d48Sopenharmony_ci border: 4px solid rgba(150, 150, 150, 1); 654fb726d48Sopenharmony_ci background-clip: content-box; 655fb726d48Sopenharmony_ci } 656fb726d48Sopenharmony_ci 657fb726d48Sopenharmony_ci html body[for='html-export']:not([dpm]) { 658fb726d48Sopenharmony_ci position: relative; 659fb726d48Sopenharmony_ci width: 99%; 660fb726d48Sopenharmony_ci height: 99%; 661fb726d48Sopenharmony_ci top: 1px; 662fb726d48Sopenharmony_ci left: 1px; 663fb726d48Sopenharmony_ci margin: 1px; 664fb726d48Sopenharmony_ci padding: 1px; 665fb726d48Sopenharmony_ci overflow: auto; 666fb726d48Sopenharmony_ci } 667fb726d48Sopenharmony_ci 668fb726d48Sopenharmony_ci html body[for='html-export']:not([dpm]) .smartperf-preview { 669fb726d48Sopenharmony_ci position: relative; 670fb726d48Sopenharmony_ci top: 1px; 671fb726d48Sopenharmony_ci } 672fb726d48Sopenharmony_ci 673fb726d48Sopenharmony_ci @media screen and (min-width: 914px) { 674fb726d48Sopenharmony_ci html body[for='html-export']:not([dpm]) .smartperf-preview { 675fb726d48Sopenharmony_ci padding: 2em calc(50% - 458px + 2em); 676fb726d48Sopenharmony_ci } 677fb726d48Sopenharmony_ci } 678fb726d48Sopenharmony_ci 679fb726d48Sopenharmony_ci @media screen and (max-width: 914px) { 680fb726d48Sopenharmony_ci html body[for='html-export']:not([dpm]) .smartperf-preview { 681fb726d48Sopenharmony_ci padding: 1.9em; 682fb726d48Sopenharmony_ci } 683fb726d48Sopenharmony_ci } 684fb726d48Sopenharmony_ci 685fb726d48Sopenharmony_ci @media screen and (max-width: 450px) { 686fb726d48Sopenharmony_ci html body[for='html-export']:not([dpm]) .smartperf-preview { 687fb726d48Sopenharmony_ci font-size: 15px !important; 688fb726d48Sopenharmony_ci padding: 1.1em; 689fb726d48Sopenharmony_ci } 690fb726d48Sopenharmony_ci } 691fb726d48Sopenharmony_ci 692fb726d48Sopenharmony_ci @media print { 693fb726d48Sopenharmony_ci html body[for='html-export']:not([dpm]) #sidebar-toc-btn { 694fb726d48Sopenharmony_ci display: none; 695fb726d48Sopenharmony_ci } 696fb726d48Sopenharmony_ci } 697fb726d48Sopenharmony_ci 698fb726d48Sopenharmony_ci html body[for='html-export']:not([dpm]) #sidebar-toc-btn { 699fb726d48Sopenharmony_ci position: fixed; 700fb726d48Sopenharmony_ci bottom: 9px; 701fb726d48Sopenharmony_ci left: 9px; 702fb726d48Sopenharmony_ci font-size: 28px; 703fb726d48Sopenharmony_ci cursor: pointer; 704fb726d48Sopenharmony_ci color: inherit; 705fb726d48Sopenharmony_ci z-index: 99; 706fb726d48Sopenharmony_ci width: 31px; 707fb726d48Sopenharmony_ci text-align: center; 708fb726d48Sopenharmony_ci opacity: 0.5; 709fb726d48Sopenharmony_ci } 710fb726d48Sopenharmony_ci 711fb726d48Sopenharmony_ci html body[for='html-export']:not([dpm])[hsst] #sidebar-toc-btn { 712fb726d48Sopenharmony_ci opacity: 1; 713fb726d48Sopenharmony_ci } 714fb726d48Sopenharmony_ci 715fb726d48Sopenharmony_ci html body[for='html-export']:not([dpm])[hsst] .md-sidebar-toc { 716fb726d48Sopenharmony_ci position: fixed; 717fb726d48Sopenharmony_ci top: 1px; 718fb726d48Sopenharmony_ci left: 1px; 719fb726d48Sopenharmony_ci width: 300px; 720fb726d48Sopenharmony_ci height: 99%; 721fb726d48Sopenharmony_ci padding: 32px 0 48px 0; 722fb726d48Sopenharmony_ci font-size: 14px; 723fb726d48Sopenharmony_ci box-shadow: 1px 1px 4px rgba(150, 150, 150, 0.33); 724fb726d48Sopenharmony_ci box-sizing: border-box; 725fb726d48Sopenharmony_ci overflow: auto; 726fb726d48Sopenharmony_ci background-color: inherit; 727fb726d48Sopenharmony_ci } 728fb726d48Sopenharmony_ci 729fb726d48Sopenharmony_ci html body[for='html-export']:not([dpm])[hsst] .md-sidebar-toc::-webkit-scrollbar { 730fb726d48Sopenharmony_ci width: 9px; 731fb726d48Sopenharmony_ci } 732fb726d48Sopenharmony_ci 733fb726d48Sopenharmony_ci html body[for='html-export']:not([dpm])[hsst] .md-sidebar-toc::-webkit-scrollbar-track { 734fb726d48Sopenharmony_ci border-radius: 11px; 735fb726d48Sopenharmony_ci background-color: transparent; 736fb726d48Sopenharmony_ci } 737fb726d48Sopenharmony_ci 738fb726d48Sopenharmony_ci html body[for='html-export']:not([dpm])[hsst] .md-sidebar-toc::-webkit-scrollbar-thumb { 739fb726d48Sopenharmony_ci border-radius: 6px; 740fb726d48Sopenharmony_ci background-color: rgba(150, 150, 150, 0.66); 741fb726d48Sopenharmony_ci border: 3px solid rgba(150, 150, 150, 0.66); 742fb726d48Sopenharmony_ci background-clip: content-box; 743fb726d48Sopenharmony_ci } 744fb726d48Sopenharmony_ci 745fb726d48Sopenharmony_ci html body[for='html-export']:not([dpm])[hsst] .md-sidebar-toc a { 746fb726d48Sopenharmony_ci text-decoration: none; 747fb726d48Sopenharmony_ci } 748fb726d48Sopenharmony_ci 749fb726d48Sopenharmony_ci html body[for='html-export']:not([dpm])[hsst] .md-sidebar-toc ul { 750fb726d48Sopenharmony_ci padding: 1px 1.7em; 751fb726d48Sopenharmony_ci margin-top: 0.9em; 752fb726d48Sopenharmony_ci } 753fb726d48Sopenharmony_ci 754fb726d48Sopenharmony_ci html body[for='html-export']:not([dpm])[hsst] .md-sidebar-toc li { 755fb726d48Sopenharmony_ci margin-bottom: 0.8em; 756fb726d48Sopenharmony_ci } 757fb726d48Sopenharmony_ci 758fb726d48Sopenharmony_ci html body[for='html-export']:not([dpm])[hsst] .md-sidebar-toc ul { 759fb726d48Sopenharmony_ci list-style-type: none; 760fb726d48Sopenharmony_ci } 761fb726d48Sopenharmony_ci 762fb726d48Sopenharmony_ci html body[for='html-export']:not([dpm])[hsst] .smartperf-preview { 763fb726d48Sopenharmony_ci left: 301px; 764fb726d48Sopenharmony_ci width: calc(100% - 300px); 765fb726d48Sopenharmony_ci padding: 2em calc(50% - 457px - 150px); 766fb726d48Sopenharmony_ci margin: 1px; 767fb726d48Sopenharmony_ci box-sizing: border-box; 768fb726d48Sopenharmony_ci } 769fb726d48Sopenharmony_ci 770fb726d48Sopenharmony_ci @media screen and (max-width: 1274px) { 771fb726d48Sopenharmony_ci html body[for='html-export']:not([dpm])[hsst] .smartperf-preview { 772fb726d48Sopenharmony_ci padding: 1.9em; 773fb726d48Sopenharmony_ci } 774fb726d48Sopenharmony_ci } 775fb726d48Sopenharmony_ci 776fb726d48Sopenharmony_ci @media screen and (max-width: 450px) { 777fb726d48Sopenharmony_ci html body[for='html-export']:not([dpm])[hsst] .smartperf-preview { 778fb726d48Sopenharmony_ci width: 99%; 779fb726d48Sopenharmony_ci } 780fb726d48Sopenharmony_ci } 781fb726d48Sopenharmony_ci 782fb726d48Sopenharmony_ci html body[for='html-export']:not([dpm]):not([hsst]) .smartperf-preview { 783fb726d48Sopenharmony_ci left: 50%; 784fb726d48Sopenharmony_ci transform: translateX(-50%); 785fb726d48Sopenharmony_ci } 786fb726d48Sopenharmony_ci 787fb726d48Sopenharmony_ci html body[for='html-export']:not([dpm]):not([hsst]) .md-sidebar-toc { 788fb726d48Sopenharmony_ci display: none; 789fb726d48Sopenharmony_ci } 790fb726d48Sopenharmony_ci </style> 791fb726d48Sopenharmony_ci </head> 792fb726d48Sopenharmony_ci <body for="html-export" id="body"> 793fb726d48Sopenharmony_ci <div class="smartperf smartperf-preview"> 794fb726d48Sopenharmony_ci <h1 class="mume-header fontColor">SmartPerf 编译部署指导文档</h1> 795fb726d48Sopenharmony_ci 796fb726d48Sopenharmony_ci <h2 class="mume-header fontColor">编译环境搭建</h2> 797fb726d48Sopenharmony_ci 798fb726d48Sopenharmony_ci <p class="fontColor">注意:在linux编译环境安装时以root或者其他 sudo 用户身份运行下面的命令。</p> 799fb726d48Sopenharmony_ci <h3 class="mume-header fontColor">node 环境安装</h3> 800fb726d48Sopenharmony_ci 801fb726d48Sopenharmony_ci <h5 class="mume-header fontColor">下载Node js安装包(windows推荐, linux跳过此步骤)</h5> 802fb726d48Sopenharmony_ci 803fb726d48Sopenharmony_ci <p class="fontColor"> 804fb726d48Sopenharmony_ci 从网站下载node js安装包 805fb726d48Sopenharmony_ci <a href="https://nodejs.org/en/download/current/%E3%80%82">https://nodejs.org/en/download/current/。</a> 806fb726d48Sopenharmony_ci </p> 807fb726d48Sopenharmony_ci <h5 class="mume-header fontColor">安装nodejs</h5> 808fb726d48Sopenharmony_ci 809fb726d48Sopenharmony_ci <ul class="fontColor"> 810fb726d48Sopenharmony_ci <li> 811fb726d48Sopenharmony_ci ubuntu 20.04 与Debian 11系统中,直接用apt-get安装,先切换到 root用户下,命令如下(node 版本 >= 16.15.1 npm 812fb726d48Sopenharmony_ci 版本 >= 8.13.2) 813fb726d48Sopenharmony_ci </li> 814fb726d48Sopenharmony_ci </ul> 815fb726d48Sopenharmony_ci <pre data-role="codeBlock" data-info="" class="fontColor light smartperf-"><code class="fontColor"> sudo su 816fb726d48Sopenharmony_ci apt-get update 817fb726d48Sopenharmony_ci apt-get install nodejs npm 818fb726d48Sopenharmony_ci</code></pre> 819fb726d48Sopenharmony_ci <p class="fontColor"><img src="../figures/deploy/install_node.png" alt="" /></p> 820fb726d48Sopenharmony_ci <ul class="fontColor"> 821fb726d48Sopenharmony_ci <li>centos 系统中使用yum安装,先切换到root用户下,命令如下:</li> 822fb726d48Sopenharmony_ci </ul> 823fb726d48Sopenharmony_ci <pre data-role="codeBlock" data-info="" class="fontColor light smartperf-"><code class="fontColor"> sudo su 824fb726d48Sopenharmony_ci sudo yum -y install nodejs npm 825fb726d48Sopenharmony_ci</code></pre> 826fb726d48Sopenharmony_ci <p class="fontColor"><img src="../figures/deploy/yum_install_node.png" alt="" /></p> 827fb726d48Sopenharmony_ci <ul class="fontColor"> 828fb726d48Sopenharmony_ci <li> 829fb726d48Sopenharmony_ci <p class="fontColor">windows系统中, 用安装包一路next即可</p> 830fb726d48Sopenharmony_ci </li> 831fb726d48Sopenharmony_ci <li> 832fb726d48Sopenharmony_ci <p class="fontColor">安装完成后运行检查是否安装成功</p> 833fb726d48Sopenharmony_ci </li> 834fb726d48Sopenharmony_ci </ul> 835fb726d48Sopenharmony_ci <pre data-role="codeBlock" data-info="" class="fontColor light smartperf-"><code class="fontColor"> node -v 836fb726d48Sopenharmony_ci npm -v 837fb726d48Sopenharmony_ci</code></pre> 838fb726d48Sopenharmony_ci <p class="fontColor"><img src="../figures/deploy/check_version.png" alt="" /></p> 839fb726d48Sopenharmony_ci <p class="fontColor">出现版本号就代表安装成功了。</p> 840fb726d48Sopenharmony_ci <h5 class="mume-header fontColor">更换npm源</h5> 841fb726d48Sopenharmony_ci 842fb726d48Sopenharmony_ci <pre 843fb726d48Sopenharmony_ci data-role="codeBlock" 844fb726d48Sopenharmony_ci data-info="" 845fb726d48Sopenharmony_ci class="fontColor light smartperf-"><code class="fontColor"> npm config set registry http://registry.npmmirror.com 846fb726d48Sopenharmony_ci</code></pre> 847fb726d48Sopenharmony_ci <h5 class="mume-header fontColor">安装tsc typeScript 编译器</h5> 848fb726d48Sopenharmony_ci 849fb726d48Sopenharmony_ci <p class="fontColor">直接使用npm 安装运行命令。</p> 850fb726d48Sopenharmony_ci <pre 851fb726d48Sopenharmony_ci data-role="codeBlock" 852fb726d48Sopenharmony_ci data-info="" 853fb726d48Sopenharmony_ci class="fontColor light smartperf-"><code class="fontColor"> npm install -g typescript 854fb726d48Sopenharmony_ci tsc -v 855fb726d48Sopenharmony_ci</code></pre> 856fb726d48Sopenharmony_ci <p class="fontColor"> 857fb726d48Sopenharmony_ci 验证安装完成: 858fb726d48Sopenharmony_ci <br /> 859fb726d48Sopenharmony_ci <img src="../figures/deploy/install_tsc.png" alt="" /> 860fb726d48Sopenharmony_ci </p> 861fb726d48Sopenharmony_ci <h3 class="mume-header fontColor">go 编译环境安装</h3> 862fb726d48Sopenharmony_ci 863fb726d48Sopenharmony_ci <ul class="fontColor"> 864fb726d48Sopenharmony_ci <li>ubuntu 环境下直接使用apt安装,以root用户执行(go 版本 >= 1.13.8 )</li> 865fb726d48Sopenharmony_ci </ul> 866fb726d48Sopenharmony_ci <pre 867fb726d48Sopenharmony_ci data-role="codeBlock" 868fb726d48Sopenharmony_ci data-info="" 869fb726d48Sopenharmony_ci class="fontColor light smartperf-"><code class="fontColor"> apt-get install golang-go 870fb726d48Sopenharmony_ci</code></pre> 871fb726d48Sopenharmony_ci <p class="fontColor"><img src="../figures/deploy/install_golang.png" alt="" /></p> 872fb726d48Sopenharmony_ci <ul class="fontColor"> 873fb726d48Sopenharmony_ci <li>centos系统中使用yum安装,先切换到root用户下,命令如下:</li> 874fb726d48Sopenharmony_ci </ul> 875fb726d48Sopenharmony_ci <pre data-role="codeBlock" data-info="" class="fontColor light smartperf-"><code class="fontColor"> sudo su 876fb726d48Sopenharmony_ci sudo yum -y install go 877fb726d48Sopenharmony_ci</code></pre> 878fb726d48Sopenharmony_ci <p class="fontColor"><img src="../figures/deploy/yum_install_go.png" alt="" /></p> 879fb726d48Sopenharmony_ci <ul class="fontColor"> 880fb726d48Sopenharmony_ci <li> 881fb726d48Sopenharmony_ci <p class="fontColor">windows 系统下从官网下载安装包, 一路next 完成 安装即可</p> 882fb726d48Sopenharmony_ci </li> 883fb726d48Sopenharmony_ci <li> 884fb726d48Sopenharmony_ci <p class="fontColor">安装完成后 命令行运行验证是否安装成功</p> 885fb726d48Sopenharmony_ci </li> 886fb726d48Sopenharmony_ci </ul> 887fb726d48Sopenharmony_ci <pre 888fb726d48Sopenharmony_ci data-role="codeBlock" 889fb726d48Sopenharmony_ci data-info="" 890fb726d48Sopenharmony_ci class="fontColor light smartperf-"><code class="fontColor"> go version 891fb726d48Sopenharmony_ci</code></pre> 892fb726d48Sopenharmony_ci <h2 class="mume-header fontColor">项目编译</h2> 893fb726d48Sopenharmony_ci 894fb726d48Sopenharmony_ci <h4 class="mume-header fontColor">先下载sql.js的二进制包</h4> 895fb726d48Sopenharmony_ci 896fb726d48Sopenharmony_ci <p class="fontColor"> 897fb726d48Sopenharmony_ci 从如下 898fb726d48Sopenharmony_ci <a href="https://github.com/sql-js/sql.js/releases/download/v1.6.2/sqljs-all.zip"> 899fb726d48Sopenharmony_ci https://github.com/sql-js/sql.js/releases/download/v1.6.2/sqljs-all.zip 900fb726d48Sopenharmony_ci </a> 901fb726d48Sopenharmony_ci 获取到sql.js的二进制包。 902fb726d48Sopenharmony_ci <br /> 903fb726d48Sopenharmony_ci 将压缩包解压后, 将文件放置到项目third-party 目录下。 904fb726d48Sopenharmony_ci </p> 905fb726d48Sopenharmony_ci <p class="fontColor"><img src="../figures/deploy/third_party.png" alt="" /></p> 906fb726d48Sopenharmony_ci <h4 class="mume-header fontColor">先编译获取trace_streamer 的二进制包</h4> 907fb726d48Sopenharmony_ci 908fb726d48Sopenharmony_ci <p class="fontColor"> 909fb726d48Sopenharmony_ci 参照:smartperf/trace_streamer/compile_trace_streamer.md 编译出wasm、linux、Windows版本的二进制文件。 910fb726d48Sopenharmony_ci <br /> 911fb726d48Sopenharmony_ci 将获取到二进制文件放入到项目bin目录下,如果项目目录中无bin目录 先创建bin目录。 912fb726d48Sopenharmony_ci <br /> 913fb726d48Sopenharmony_ci 然后将trace_streamer的二进制文件放入bin目录中。 914fb726d48Sopenharmony_ci </p> 915fb726d48Sopenharmony_ci <p class="fontColor"> 916fb726d48Sopenharmony_ci <img src="../figures/deploy/put_bin.png" alt="" /> 917fb726d48Sopenharmony_ci <br /> 918fb726d48Sopenharmony_ci <img src="../figures/deploy/bin_files.png" alt="" /> 919fb726d48Sopenharmony_ci </p> 920fb726d48Sopenharmony_ci <h4 class="mume-header fontColor">代码编译(依赖于上面node环境 和 go环境)</h4> 921fb726d48Sopenharmony_ci 922fb726d48Sopenharmony_ci <p class="fontColor">在项目目录安装项目依赖:</p> 923fb726d48Sopenharmony_ci <pre 924fb726d48Sopenharmony_ci data-role="codeBlock" 925fb726d48Sopenharmony_ci data-info="" 926fb726d48Sopenharmony_ci class="fontColor light smartperf-"><code class="fontColor"> npm install 927fb726d48Sopenharmony_ci</code></pre> 928fb726d48Sopenharmony_ci <p class="fontColor">在项目目录下运行命令:</p> 929fb726d48Sopenharmony_ci <pre 930fb726d48Sopenharmony_ci data-role="codeBlock" 931fb726d48Sopenharmony_ci data-info="" 932fb726d48Sopenharmony_ci class="fontColor light smartperf-"><code class="fontColor"> npm run compile 933fb726d48Sopenharmony_ci</code></pre> 934fb726d48Sopenharmony_ci <p class="fontColor"> 935fb726d48Sopenharmony_ci <img src="../figures/deploy/compile.png" alt="" /> 936fb726d48Sopenharmony_ci <br /> 937fb726d48Sopenharmony_ci 编译成功后会有main 可执行文件生成。 938fb726d48Sopenharmony_ci </p> 939fb726d48Sopenharmony_ci <h2 class="mume-header fontColor">项目部署</h2> 940fb726d48Sopenharmony_ci 941fb726d48Sopenharmony_ci <p class="fontColor">linux版本部署需要给trace_stream程序赋予执行权限,cd dist/bin 目录下,执行如下命令:</p> 942fb726d48Sopenharmony_ci <pre 943fb726d48Sopenharmony_ci data-role="codeBlock" 944fb726d48Sopenharmony_ci data-info="" 945fb726d48Sopenharmony_ci class="fontColor light smartperf-"><code class="fontColor"> chmod +x trace_streamer_* 946fb726d48Sopenharmony_ci</code></pre> 947fb726d48Sopenharmony_ci <p class="fontColor"><img src="../figures/deploy/chomd+x.png" alt="" /></p> 948fb726d48Sopenharmony_ci <p class="fontColor"> 949fb726d48Sopenharmony_ci 直接运行 ./main 可执行程序,完成项目的部署。 950fb726d48Sopenharmony_ci <br /> 951fb726d48Sopenharmony_ci <img src="../figures/deploy/run_main.png" alt="" /> 952fb726d48Sopenharmony_ci </p> 953fb726d48Sopenharmony_ci <h2>访问项目</h2> 954fb726d48Sopenharmony_ci <p class="fontColor"> 955fb726d48Sopenharmony_ci 在浏览器上打开 https://[部署机器ip地址]:9000/application/ 956fb726d48Sopenharmony_ci <br /> 957fb726d48Sopenharmony_ci !!! 注意一定是https。 958fb726d48Sopenharmony_ci </p> 959fb726d48Sopenharmony_ci <p class="fontColor"><img src="../figures/deploy/visit_website.png" alt="" /></p> 960fb726d48Sopenharmony_ci <p class="fontColor"> 961fb726d48Sopenharmony_ci 备注:如果未出现如图所示网页.而是显示 无法访问此网站。 962fb726d48Sopenharmony_ci <br /> 963fb726d48Sopenharmony_ci 可以在window cmd 里执行telnet [部署机器ip地址] 9000。 964fb726d48Sopenharmony_ci <br /> 965fb726d48Sopenharmony_ci 如果显示端口连接失败 可能是防火墙未对9000 端口放开即可。 966fb726d48Sopenharmony_ci </p> 967fb726d48Sopenharmony_ci </div> 968fb726d48Sopenharmony_ci 969fb726d48Sopenharmony_ci <script> 970fb726d48Sopenharmony_ci window.onload = () => { 971fb726d48Sopenharmony_ci let isDark = window.location.search; 972fb726d48Sopenharmony_ci if (isDark.indexOf('?') !== -1) { 973fb726d48Sopenharmony_ci isDark = isDark.substr(1, isDark.length - 1); 974fb726d48Sopenharmony_ci } 975fb726d48Sopenharmony_ci if (isDark === 'true') { 976fb726d48Sopenharmony_ci document.getElementById('body').setAttribute('style', 'background-color:#272C34;'); 977fb726d48Sopenharmony_ci let header = document.getElementsByClassName('fontColor'); 978fb726d48Sopenharmony_ci for (let i = 0; i < header.length; i++) { 979fb726d48Sopenharmony_ci header[i].style.color = '#fff'; 980fb726d48Sopenharmony_ci } 981fb726d48Sopenharmony_ci let lightBackGround = document.getElementsByClassName('light'); 982fb726d48Sopenharmony_ci for (let i = 0; i < lightBackGround.length; i++) { 983fb726d48Sopenharmony_ci lightBackGround[i].style.backgroundColor = '#32373F'; 984fb726d48Sopenharmony_ci } 985fb726d48Sopenharmony_ci } 986fb726d48Sopenharmony_ci }; 987fb726d48Sopenharmony_ci </script> 988fb726d48Sopenharmony_ci </body> 989fb726d48Sopenharmony_ci</html> 990