diff options
Diffstat (limited to 'documentation/ref-manual')
-rw-r--r-- | documentation/ref-manual/faq.xml | 81 |
1 files changed, 49 insertions, 32 deletions
diff --git a/documentation/ref-manual/faq.xml b/documentation/ref-manual/faq.xml index 176573de28..370f65f380 100644 --- a/documentation/ref-manual/faq.xml +++ b/documentation/ref-manual/faq.xml | |||
@@ -485,30 +485,38 @@ | |||
485 | <qandaentry> | 485 | <qandaentry> |
486 | <question> | 486 | <question> |
487 | <para id='how-does-the-yocto-project-obtain-source-code-and-will-it-work-behind-my-firewall-or-proxy-server'> | 487 | <para id='how-does-the-yocto-project-obtain-source-code-and-will-it-work-behind-my-firewall-or-proxy-server'> |
488 | How does the OpenEmbedded build system obtain source code and will it work behind my | 488 | How does the OpenEmbedded build system obtain source code and |
489 | firewall or proxy server? | 489 | will it work behind my firewall or proxy server? |
490 | </para> | 490 | </para> |
491 | </question> | 491 | </question> |
492 | <answer> | 492 | <answer> |
493 | <para> | 493 | <para> |
494 | The way the build system obtains source code is highly configurable. | 494 | The way the build system obtains source code is highly |
495 | You can setup the build system to get source code in most environments if | 495 | configurable. |
496 | HTTP transport is available. | 496 | You can setup the build system to get source code in most |
497 | environments if HTTP transport is available. | ||
497 | </para> | 498 | </para> |
498 | <para> | 499 | <para> |
499 | When the build system searches for source code, it first tries the local download directory. | 500 | When the build system searches for source code, it first |
500 | If that location fails, Poky tries PREMIRRORS, the upstream source, | 501 | tries the local download directory. |
501 | and then MIRRORS in that order. | 502 | If that location fails, Poky tries |
503 | <link linkend='var-PREMIRRORS'><filename>PREMIRRORS</filename></link>, | ||
504 | the upstream source, and then | ||
505 | <link linkend='var-MIRRORS'><filename>MIRRORS</filename></link> | ||
506 | in that order. | ||
502 | </para> | 507 | </para> |
503 | <para> | 508 | <para> |
504 | By default, the OpenEmbedded build system uses the Yocto Project source PREMIRRORS | 509 | Assuming your distribution is "poky", the OpenEmbedded build |
505 | for SCM-based sources, | 510 | system uses the Yocto Project source |
506 | upstreams for normal tarballs, and then falls back to a number of other mirrors | 511 | <filename>PREMIRRORS</filename> by default for SCM-based |
507 | including the Yocto Project source mirror if those fail. | 512 | sources, upstreams for normal tarballs, and then falls back |
513 | to a number of other mirrors including the Yocto Project | ||
514 | source mirror if those fail. | ||
508 | </para> | 515 | </para> |
509 | <para> | 516 | <para> |
510 | As an example, you could add a specific server for Poky to attempt before any | 517 | As an example, you could add a specific server for the |
511 | others by adding something like the following to the <filename>local.conf</filename> | 518 | build system to attempt before any others by adding something |
519 | like the following to the <filename>local.conf</filename> | ||
512 | configuration file: | 520 | configuration file: |
513 | <literallayout class='monospaced'> | 521 | <literallayout class='monospaced'> |
514 | PREMIRRORS_prepend = "\ | 522 | PREMIRRORS_prepend = "\ |
@@ -519,26 +527,29 @@ | |||
519 | </literallayout> | 527 | </literallayout> |
520 | </para> | 528 | </para> |
521 | <para> | 529 | <para> |
522 | These changes cause Poky to intercept Git, FTP, HTTP, and HTTPS | 530 | These changes cause the build system to intercept Git, FTP, |
523 | requests and direct them to the <filename>http://</filename> sources mirror. | 531 | HTTP, and HTTPS requests and direct them to the |
524 | You can use <filename>file://</filename> URLs to point to local directories | 532 | <filename>http://</filename> sources mirror. |
525 | or network shares as well. | 533 | You can use <filename>file://</filename> URLs to point to |
534 | local directories or network shares as well. | ||
526 | </para> | 535 | </para> |
527 | <para> | 536 | <para> |
528 | Aside from the previous technique, these options also exist: | 537 | Aside from the previous technique, these options also exist: |
529 | <literallayout class='monospaced'> | 538 | <literallayout class='monospaced'> |
530 | BB_NO_NETWORK = "1" | 539 | BB_NO_NETWORK = "1" |
531 | </literallayout> | 540 | </literallayout> |
532 | This statement tells BitBake to throw an error instead of trying to access the | 541 | This statement tells BitBake to issue an error instead of |
533 | Internet. | 542 | trying to access the Internet. |
534 | This technique is useful if you want to ensure code builds only from local sources. | 543 | This technique is useful if you want to ensure code builds |
544 | only from local sources. | ||
535 | </para> | 545 | </para> |
536 | <para> | 546 | <para> |
537 | Here is another technique: | 547 | Here is another technique: |
538 | <literallayout class='monospaced'> | 548 | <literallayout class='monospaced'> |
539 | BB_FETCH_PREMIRRORONLY = "1" | 549 | BB_FETCH_PREMIRRORONLY = "1" |
540 | </literallayout> | 550 | </literallayout> |
541 | This statement limits Poky to pulling source from the PREMIRRORS only. | 551 | This statement limits Poky to pulling source from the |
552 | <filename>PREMIRRORS</filename> only. | ||
542 | Again, this technique is useful for reproducing builds. | 553 | Again, this technique is useful for reproducing builds. |
543 | </para> | 554 | </para> |
544 | <para> | 555 | <para> |
@@ -548,12 +559,15 @@ | |||
548 | </literallayout> | 559 | </literallayout> |
549 | This statement tells Poky to generate mirror tarballs. | 560 | This statement tells Poky to generate mirror tarballs. |
550 | This technique is useful if you want to create a mirror server. | 561 | This technique is useful if you want to create a mirror server. |
551 | If not, however, the technique can simply waste time during the build. | 562 | If not, however, the technique can simply waste time during |
563 | the build. | ||
552 | </para> | 564 | </para> |
553 | <para> | 565 | <para> |
554 | Finally, consider an example where you are behind an HTTP-only firewall. | 566 | Finally, consider an example where you are behind an |
555 | You could make the following changes to the <filename>local.conf</filename> | 567 | HTTP-only firewall. |
556 | configuration file as long as the PREMIRROR server is up to date: | 568 | You could make the following changes to the |
569 | <filename>local.conf</filename> configuration file as long as | ||
570 | the <filename>PREMIRRORS</filename> server is up to date: | ||
557 | <literallayout class='monospaced'> | 571 | <literallayout class='monospaced'> |
558 | PREMIRRORS_prepend = "\ | 572 | PREMIRRORS_prepend = "\ |
559 | ftp://.*/.* http://www.yoctoproject.org/sources/ \n \ | 573 | ftp://.*/.* http://www.yoctoproject.org/sources/ \n \ |
@@ -561,14 +575,17 @@ | |||
561 | https://.*/.* http://www.yoctoproject.org/sources/ \n" | 575 | https://.*/.* http://www.yoctoproject.org/sources/ \n" |
562 | BB_FETCH_PREMIRRORONLY = "1" | 576 | BB_FETCH_PREMIRRORONLY = "1" |
563 | </literallayout> | 577 | </literallayout> |
564 | These changes would cause Poky to successfully fetch source over HTTP and | 578 | These changes would cause the build system to successfully |
565 | any network accesses to anything other than the PREMIRROR would fail. | 579 | fetch source over HTTP and any network accesses to anything |
580 | other than the <filename>PREMIRRORS</filename> would fail. | ||
566 | </para> | 581 | </para> |
567 | <para> | 582 | <para> |
568 | The build system also honors the standard shell environment variables | 583 | The build system also honors the standard shell environment |
569 | <filename>http_proxy</filename>, <filename>ftp_proxy</filename>, | 584 | variables <filename>http_proxy</filename>, |
570 | <filename>https_proxy</filename>, and <filename>all_proxy</filename> | 585 | <filename>ftp_proxy</filename>, |
571 | to redirect requests through proxy servers. | 586 | <filename>https_proxy</filename>, and |
587 | <filename>all_proxy</filename> to redirect requests through | ||
588 | proxy servers. | ||
572 | </para> | 589 | </para> |
573 | </answer> | 590 | </answer> |
574 | </qandaentry> | 591 | </qandaentry> |