Obținerea codului sursă FB
Pentru a compila o nouă versiune a FB, trebuie mai întâi să obțineți codul sursă pentru FB. Se presupune că aveți un director numit fbc. conținând ultimul cod sursă FB.
Instalarea setului de instrumente MinGW-w64
Extrageți cutia de instrumente în noul folder C: \ MinGW-w64. astfel încât să ajungeți la C: \ MinGW-w64 \ bin \ gcc.exe.
Dacă știți ce faceți, puteți utiliza, de asemenea, un alt set de instrumente MinGW-W64 sau chiar unul dintre diferitele proiecte, cum ar fi MinGW.org sau TDM-GCC. Avem mai multe informații despre alegerea instrumentelor pentru MinGW pe pagina DevGccToolchainChoice.
MSYS (o ramură a Cygwin original) va oferi un mediu shell Unix-ului de Windows, inclusiv GNU face, bash și Unix comandă shell instrumente de linie, cum ar fi cp și rm. Pentru FB, trebuie să executați FB Makefile și suita de testare FB.
Pachetele MSYS necesare pot fi descărcate și despachetate utilizând ultima versiune a instalării mingw-get din proiectul MinGW.org.
Rulați programul de instalare și selectați directorul de instalare C: \ MinGW. Astfel, aceasta va fi separată de C: \ MinGW-w64. pentru a evita potențialele conflicte. Managerul de instalare MinGW (C: \ MinGW \ bin \ mingw-get.exe) ar trebui să fie deschis automat după aceea. Utilizați pachetul BASIC din partiția de configurare principală pentru a instala setul de instrumente mingw-developer făcând clic pe fereastra din stânga numelui pachetului și selectând "Mark for Installation", apoi selectați Installation -> Apply Changes din meniul aplicației.
Aceasta ar trebui să instaleze cele mai frecvent utilizate componente MSYS. Nu vrem să instalăm pachetele mingw32-base sau mingw32-gcc- * aici, deoarece folosim setul de instrumente MinGW-W64 extern în locul MinGW.org. Dacă nu doriți să utilizați programul de instalare MinGW.org, puteți descărca manual pachetele MinGW / MSYS din proiectele MinGW de pe site-ul de descărcare.
În cele din urmă, MSYS trebuie să fie instalat în C: \ MinGW \ msys \ 1.0 \. Acum există trei directoare importante: C: \ MinGW-w64 \ bin \. C: \ MinGW \ bin \ și C: \ MinGW \ msys \ 1.0 \ bin \. Toate acestea ar trebui adăugate la variabila de mediu PATH (în această ordine), astfel încât programele pe care le includ să fie găsite atunci când sunt apelate din linia de comandă sau din Makefile FB.
Pentru a evita schimbarea sistemului PATH. puteți utiliza scriptul open-msys.bat de mai jos pentru a deschide bash MSYS cu setările necesare PATH. de fiecare dată, ar trebui să o utilizați:
Codul sursă FB rtlib depinde de anteturile libffi (ffi.h și ffitarget.h). care trebuie să fie disponibil în gcc set de instrumente pentru a include director (C: \ MinGW-w64 \ i686-w64-mingw32 \ includ 32 bit MinGW-w64 și C: \ MinGW-w64 \ X86_64-w64-mingw32 \ includ 64 de biți MinGW-w64). În plus, biblioteca libffi.a va fi necesară mai târziu la compilarea programelor FB care utilizează fișierul Threadcall.
Gratuit versiunile de libffi sunt disponibile în zona de descărcare fbc.
Dacă nu doriți să utilizați versiuni predefinite, dar preferați să compilați manual libfi, este destul de simplu. libffi utilizează utilitare automate (autoconf, automake, libtool) pentru a construi sistemul, astfel încât pachetele corespunzătoare să fie instalate pentru MinGW / MSYS. Deschideți basma MSYS (cu setările corecte PATH).
- 64bit: Acest lucru necesită lucrul în jurul MSAME "uname care returnează încă 32bit chiar și pe 64 de biți:
Acest lucru ar trebui să producă anteturile libffi din subdirectorul include / biblioteca asamblată în subdirectorul .libs /. Puteți să le copiați apoi în directoarele MinGW-w64 corespunzătoare, astfel încât gcc să le găsească.
Asamblare autonomă (stand-alone FB)
Obținerea unei instalări FB existente pentru boot-ul inițial
Avem nevoie de o instalare de lucru FB-win32 pentru a încărca noul compilator FB. Dacă nu aveți deja instalat FB-win32, descărcați ultima versiune de FreeBASIC-X.XX.X-win32 de pe site-ul de descărcare FB. Trebuie extras în C: \ FreeBASIC-X.XX.X-win32.
Construirea unei noi instalatii FB
Dacă doriți să creați o instalare tradițională autonomă FB-win32 ca unul dintre pachetele FreeBASIC-X.XX.X-win32. trebuie să setați variabila ENABLE_STANDALONE în fișierul MakeFB. Mai mult decât atât, pentru compilarea pentru 64 de biți trebuie să fie setat TARGET_ARCH variabilă manual, deoarece comanda -m uname MSYS“nu acceptă pe 64 de biți și, astfel, FB Makefile va determina în mod incorect de sistem. Presupunând că sursele FB sunt situate în C: \ fbc. creați un fișier C: \ fbc \ config.mk care conține următoarele:
Apoi deschideți MSYS bash utilizând scriptul .bat. menționate mai sus (cu setările corecte PATH), mergeți la directorul FB cu codul sursă, executați "make" cu FBC =. o variabilă care să indice fbc.exe existent și să se compileze:
Acest lucru ar trebui să creeze librăriile compiler fbc.exe și lib \ win32 \ sau lib \ win64 \ respectiv. Pentru a realiza această nouă setare FB, trebuie să adăugați binutils (as.exe, ar.exe, ld.exe, dlltool.exe) în bin \ win32 \ și copia unele biblioteci în MinGW lib \ win32 \.
([Target] se referă la i686-w64-mingw32 pentru 32bit MinGW-w64 sau X86_64-w64-mingw32 pentru 64bit MinGW-w64 și [versiune] - este numărul versiunii de gcc)
Dacă doriți. Puteți copia mai mult de biblioteci C :. \ MinGW-w64 \ lib \ GCC \ [țintă] \ [versiune] \ libsupc ++ o C ++ bibliotecă sau alte Win32 API DLL biblioteca de import din C: \ MinGW-w64 \ [țintă] \ lib \ .
Acum, o nouă instalație FB trebuie să fie gata de utilizare. Puteți să o utilizați direct din arborele sursă sau să îl copiați într-o altă locație. Mai jos sunt fișierele și directoarele relevante:
Asamblarea convențională (ca în Linux)
Obținerea unei instalări FB existente pentru boot-ul inițial
Avem nevoie de o instalare de lucru fbc pentru a încărca noul compilator FB. Dacă nu aveți instalat încă fbc. descărcați ultima FBC-X.XX.X-MinGW-w64-i686 (32 de biți) sau FBC-X.XX.X-MinGW-w64-X86_64 pachet (64bit) cu site-ul FB descărcare. și dezarhivați-l în directorul MinGW-w64 (C: \ MinGW-w64) ca pachet MinGW. Aceasta va adăuga funcționarea fbc la instalarea dvs. MinGW-w64.
Construirea unei noi instalatii FB
Pentru a crea un ansamblu normal (non-stand-alone), compilați pur și simplu FB fără să specificați ENABLE_STANDALONE. Cu toate acestea, în scopul de a compila cele 64 de biți necesare pentru a stabili manual TARGET_ARCH variabilă, deoarece comanda -m uname MSYS“nu acceptă pe 64 de biți și, astfel, FB Makefile va determina în mod incorect de sistem.
- 32bit: nu este nevoie de config.mk.
- 64bit: creați config.mk care conține următoarele:
Apoi deschideți MSYS bash utilizând scriptul .bat. menționate mai sus (cu setările corecte PATH), mergeți la directorul cu cod sursă FB, rulați "make" și lăsați-o să compileze:
Acest lucru ar trebui să creeze librăriile compilatorului bin / fbc.exe și lib \ freebasic \ win32 \ lib \ freebasic \ win64 \ respectiv.
Dacă doriți, puteți să copiați această instalare în arborele C: \ MinGW-w64 executând "make install":
Poate fi util să salvați prefixul unei variabile în config.mk. astfel încât să rulați face install în viitor, fără a fi nevoie să vă faceți griji despre asta:
Setarea FBC în directorul MinGW înseamnă că acționează ca și cum ar face parte din MinGW. Cu toate acestea, FBC poate fi folosit din arborele sursă, fără al instala în altă parte. Se va apela gcc -print-file-name =. pentru a găsi binutils și biblioteci MinGW.