Introduksjon til Python 3
        
        
          Python 3 pakken inneholder
          Python utviklingsmiljø. Dette er
          nyttig for objektorientert programmering, skriving av skript,
          prototyping av store programmer eller utvikling av hele
          applikasjoner.
        
        
          ![[Note]](../images/note.png) 
          
            Note
          
          
            Python 3 ble installert i LFS.
            Den eneste grunnen til å gjenoppbygge den her er hvis valgfrie
            moduler er nødvendig, eller for å oppgradere denne pakken.
          
         
        
          Denne pakken er kjent for å bygge og fungere riktig ved å bruke en
          LFS 12.1 plattform.
        
        
          ![[Important]](../images/important.png) 
          
            Important
          
          
            Hvis du oppgraderer til en ny Python-3 minor versjon (f.eks. fra
            Python-3.11.x til Python-3.12.0), må du installere på nytt
            eventuelle Python3 moduler du har installert. Du burde også
            installer pakker på nytt som genererer Python3 moduler inkludert
            gobject-introspection-1.78.1,
            libxml2-2.12.5, opencv-4.9.0, Graphviz-10.0.1 (hvis swig er installert).
          
          
            Før du oppgraderer, kan du få en liste over moduler installert
            med pip3 list.
            Listen kan være ufullstendig siden noen Python moduler ikke er
            installert med pip3, for eksempel cracklib modulen installert med CrackLib-2.9.11. Bruk ls /usr/lib/python3.minor/site-packages
            for en omfattende liste.
          
          
            Python modulene fra LFS må også installeres på nytt: flit-core,
            wheel,
            setuptools,
            meson,
            MarkupSafe,
            og Jinja2.
          
          
            På systemd systemer er det også nødvendig å installere MarkupSafe
            og Jinja2 moduler på nytt fra LFS: 
            https://www.linuxfromscratch.org/lfs/view/systemd/chapter08/markupsafe.html
            og 
            https://www.linuxfromscratch.org/lfs/view/systemd/chapter08/jinja2.html.
          
         
        
          Pakkeinformasjon
        
        
          
            - 
              
                Nedlasting (HTTP): 
                https://www.python.org/ftp/python/3.12.2/Python-3.12.2.tar.xz
               
- 
              
                Nedlasting MD5 sum: e7c178b97bf8f7ccd677b94d614f7b3c
               
- 
              
                Nedlastingsstørrelse: 20 MB
               
- 
              
                Estimert diskplass som kreves: 337 MB (legg til 57 MB for
                tester)
               
- 
              
                Estimert byggetid: 2.5 SBU (legg til 0.7 SBU for tester;
                begge bruker parallellisme=4)
               
 
        
          Ekstra Valgfri Nedlasting
        
        
        
          Python 3 Avhengigheter
        
        
          Anbefalt
        
        
          SQLite-3.45.1 (nødvendig hvis du bygger firefox
          eller thunderbird)
        
        
          Valgfri
        
        
          BlueZ-5.72, GDB-14.1 (nødvendig for noen tester), Valgrind-3.22.0, og libmpdec
        
        
          Valgfri (For Tilleggsmoduler)
        
        
          libnsl-2.0.1, Tk-8.6.13, og Berkeley
          DB (deprecated)
        
        
          Redaktørens notater: https://wiki.linuxfromscratch.org/blfs/wiki/Python3
        
       
      
        
          Installasjon av Python 3
        
        
          Installer Python 3 ved å kjøre
          følgende kommandoer:
        
        CXX="/usr/bin/g++"               \
./configure --prefix=/usr        \
            --enable-shared      \
            --with-system-expat  \
            --with-system-ffi    \
            --enable-optimizations &&
make
        
          For å teste resultatene, utsted LC_ALL=en_US.UTF-8 make test.
          Noen tester kan trenge en Internett tilkobling. To tester navngitt
          test_xml_etree og test_xml_etree_c er kjent for å mislykkes med
          expat-2.6.0 eller nyere.
        
        
          Nå, som root bruker:
        
        make install
        
          Hvis oppgraderingen og dokumentasjonen er lastet ned, kan du
          eventuelt installere det som root
          bruker:
        
        install -v -dm755 /usr/share/doc/python-3.12.2/html
tar --strip-components=1  \
    --no-same-owner       \
    --no-same-permissions \
    -C /usr/share/doc/python-3.12.2/html \
    -xvf ../python-3.12.2-docs-html.tar.bz2
       
      
        
          Parameterforklaringer
        
        
          CXX="/usr/bin/g++" ./configure
          ...: Unngå en irriterende melding under
          konfigurasjonen.
        
        
          --with-system-expat: Denne
          bryteren muliggjør kobling mot systemversjonen av Expat.
        
        
          --with-dbmliborder=bdb:gdbm:ndbm: Bruk
          denne bryteren hvis du ønsker å bygge Python DBM Modulen mot Berkeley DB i stedet for GDBM.
        
        
          --enable-optimizations:
          Denne bryteren aktiverer stabile, men dyre, optimaliseringer.
        
        
          --with-lto: Denne valgfrie bryteren
          muliggjør tykk Link Time Optimization. Uvanlig skaper det en mye
          større /usr/lib/python3.12/config-3.12-<arch>-linux-gnu/libpython3.12.a
          med en liten økning i kompileringstiden til Python. Kjøretidsresultater ser ikke ut til å
          vise noen fordel av å gjøre dette.
        
       
      
        
          Konfigurere Python 3
        
        
          For at python3 skal
          finne den installerte dokumentasjon, opprett følgende
          versjonsuavhengig symbolkobling:
        
        ln -svfn python-3.12.2 /usr/share/doc/python-3
        
          og legg til følgende miljøvariabel til den enkelte brukers eller
          systemets profil:
        
        export PYTHONDOCS=/usr/share/doc/python-3/html
       
      
        
          Innhold
        
        
          
            
              Installerte Programmer:
              2to3 (symlenke) og 2to3-3.12, idle3
              (symlenke) og idle3.12, pip3 og pip3.12, pydoc3 (symlenke) og
              pydoc3.12, python3 (symlenke); og python3.12, og python3-config
              (symlenke) og python3.12-config
            
            
              Installerte Biblioteker:
              libpython3.12.so og libpython3.so
            
            
              Installerte Mapper:
              /usr/include/python3.12,
              /usr/lib/python3.12, og /usr/share/doc/python-3.12.2
            
           
         
        
          
            Korte Beskrivelser
          
          
            
              
              
            
            
              
                | 
                    idle3
                   | 
                    er et innpakningsskript som åpner en Python bevisst GUI redigerer. For at
                    dette skriptet skal kjøre, må du ha installert
                    Tk før Python sånn at
                    Tkinter Python modul blir bygget
                   | 
              
                | 
                    pydoc3
                   | 
                    er Python
                    dokumentasjonsverktøy
                   | 
              
                | 
                    python3
                   | 
                    er en tolket, interaktiv, objektorientert
                    programmeringsspråk
                   | 
              
                | 
                    python3.12
                   | 
                    er et versjonsspesifikt navn for python programmet
                   |