Fordító beállításai
Ez a cikk az F#-fordító fordító parancssori beállításait ismerteti. A parancs dotnet build
meghívja az F# fordítót az F# projektfájlokon. Az F#-projektfájlokat a .fsproj
bővítmény rögzíti.
A fordítási környezet a projekttulajdonságok beállításával is vezérelhető. A .NET Core-t megcélzó projekteknél a rendszer az "Egyéb jelzők" tulajdonságot <OtherFlags>...</OtherFlags>
.fsproj
használja a további parancssori beállítások megadásához.
Betűrendben felsorolt fordítóbeállítások
Az alábbi táblázat az ábécérendben felsorolt fordítóbeállításokat mutatja be. Az F#-fordító egyes beállításai hasonlóak a C#-fordító beállításaihoz. Ebben az esetben a C#-fordító beállításainak témakörére mutató hivatkozás jelenik meg.
Fordítási beállítás | Leírás |
---|---|
--allsigs |
Létrehoz egy új (vagy egy meglévő) aláírásfájlt a fordításban lévő összes forrásfájlhoz. Az aláírási fájlokról további információt az Aláírások című témakörben talál. |
-a filename.fs |
Létrehoz egy tárat a megadott fájlból. Ez a beállítás a rövid formája.--target:library filename.fs |
--baseaddress:address |
Megadja a DLL betöltéséhez előnyben részesített alapcímet. Ez a fordítóbeállítás egyenértékű az azonos nevű C#-fordító beállítással. További információ: /baseaddress (C# Compiler Options). |
--codepage:id |
Megadja, hogy melyik kódlapot használja a fordítás során, ha a szükséges lap nem a rendszer jelenlegi alapértelmezett kódlapja. Ez a fordítóbeállítás egyenértékű az azonos nevű C#-fordító beállítással. További információ: /code pages (C# Compiler Options). |
--consolecolors |
Megadja, hogy a hibák és figyelmeztetések színkódolt szöveget használjanak a konzolon. |
--crossoptimize[+ or -] |
Engedélyezi vagy letiltja a modulközi optimalizálásokat. |
--delaysign[+|-] |
Késleltetheti a szerelvény aláírását az erős névkulcs nyilvános részének használatával. Ez a fordítóbeállítás egyenértékű az azonos nevű C#-fordító beállítással. További információ: /delaysign (C# Compiler Options). |
--checked[+|-] |
Engedélyezi vagy letiltja a túlcsordulás-ellenőrzések létrehozását. Ez a fordítóbeállítás egyenértékű az azonos nevű C#-fordító beállítással. További információ: /checked (C# Compiler Options). |
--debug[+|-] -g[+|-] --debug:[full|pdbonly] -g: [full|pdbonly] |
Engedélyezi vagy letiltja a hibakeresési információk létrehozását, vagy megadja a létrehozandó hibakeresési információk típusát. Az alapértelmezett beállítás, full amely lehetővé teszi a futó programhoz való csatolást. A pdf-fájlban (programadatbázisban) tárolt korlátozott hibakeresési információk lekérése mellett dönt pdbonly .Egyenértékű az azonos nevű C#-fordító beállítással. További információk: /debug (C# Fordító beállításai). |
--define:symbol -d:symbol |
Egy szimbólumot határoz meg a feltételes fordításban való használatra. |
--deterministic[+|-] |
Determinisztikus szerelvényt hoz létre (beleértve a modul GUID-verzióját és az időbélyeget). Ez a beállítás nem használható helyettesítő karakterek verziószámaival, és csak a beágyazott és a hordozható hibakeresési típusokat támogatja |
--doc:xmldoc-filename |
Utasítja a fordítót, hogy hozzon létre XML-dokumentációs megjegyzéseket a megadott fájlhoz. További információ: XML-dokumentáció. Ez a fordítóbeállítás egyenértékű az azonos nevű C#-fordító beállítással. További információ: /doc (C# Fordító beállításai). |
--fullpaths |
Utasítja a fordítót, hogy hozzon létre teljes elérési utakat. Ez a fordítóbeállítás egyenértékű az azonos nevű C#-fordító beállítással. További információ: /fullpaths (C# Compiler Options). |
--help -? |
Megjeleníti a használati adatokat, beleértve az összes fordítóbeállítás rövid leírását. |
--highentropyva[+|-] |
Engedélyezze vagy tiltsa le a magas entrópiás címtérelrendezés véletlenszerűsítését (ASLR), amely egy továbbfejlesztett biztonsági funkció. Az operációs rendszer véletlenszerűen válogatja ki a memória azon helyeit, ahol az alkalmazások infrastruktúrája (például a verem és a halom) betöltődik. Ha engedélyezi ezt a beállítást, az operációs rendszerek ezt a véletlenszerűítést használhatják a teljes 64 bites címtér használatára egy 64 bites gépen. |
--keycontainer:key-container-name |
Erős névkulcstárolót ad meg. |
--keyfile:filename |
Megadja a létrehozott szerelvény aláírásához szükséges nyilvános kulcsfájl nevét. |
--lib:folder-name -I:folder-name |
Megadja a hivatkozott szerelvények keresésére szolgáló könyvtárat. Ez a fordítóbeállítás egyenértékű az azonos nevű C#-fordító beállítással. További információ: /lib (C# Fordító beállításai). |
--linkresource:resource-info |
Adott erőforrás csatolása a szerelvényhez. Az erőforrás-információk formátuma a következő: filename[name[public|private]] Ha egyetlen erőforrást kapcsol össze ezzel a beállítással, az egy teljes erőforrásfájl beágyazása a --resource beállítással.Ez a fordítóbeállítás egyenértékű az azonos nevű C#-fordító beállítással. További információ: /linkresource (C# Compiler Options). |
--mlcompatibility |
Figyelmen kívül hagyja azokat a figyelmeztetéseket, amelyek az ml más verzióival való kompatibilitásra tervezett funkciók használatakor jelennek meg. |
--noframework |
Letiltja a .NET-keretrendszer szerelvény alapértelmezett hivatkozását. |
--nointerfacedata |
Utasítja a fordítót, hogy hagyja ki azt az erőforrást, amelyet általában hozzáad egy F#-specifikus metaadatokat tartalmazó szerelvényhez. |
--nologo |
A fordító indításakor nem jelenik meg a szalagcím szövege. |
--nooptimizationdata |
Arra utasítja a fordítót, hogy csak a beágyazott szerkezetek implementálásához elengedhetetlen optimalizálást foglalja magában. Gátolja a modulközi tagolást, de javítja a bináris kompatibilitást. |
--nowin32manifest |
Utasítja a fordítót, hogy hagyja ki az alapértelmezett Win32-jegyzékfájlt. |
--nowarn:warning-number-list |
Letiltja a szám szerint felsorolt egyes figyelmeztetéseket. Különítse el az egyes figyelmeztetési számokat vesszővel. A fordítási kimenetből származó figyelmeztetések esetén felfedezheti a figyelmeztetés számát. Ez a fordítóbeállítás egyenértékű az azonos nevű C#-fordító beállítással. További információ: /nowarn (C# Compiler Options). |
--optimize[+|-] [optimization-option-list] -O[+|-] [optimization-option-list] |
Engedélyezi vagy letiltja az optimalizálásokat. Néhány optimalizálási lehetőség letiltható vagy szelektíven engedélyezhető a listázásukkal. Ezek a következők: nojitoptimize , nojittracking , nolocaloptimize , , nocrossoptimize . notailcalls |
--out:output-filename -o:output-filename |
Megadja a lefordított szerelvény vagy modul nevét. Ez a fordítóbeállítás egyenértékű az azonos nevű C#-fordító beállítással. További információ: /out (C# Fordító beállításai). |
--pathmap:path=sourcePath,... |
Megadja, hogyan képezheti le a fizikai elérési utakat a forrásútvonalak neveinek kimenetéhez a fordító által. Ez a fordítóbeállítás egyenértékű az azonos nevű C#-fordító beállítással. További információ: /pathmap (C# Compiler Options). |
--pdb:pdb-filename |
A kimeneti hibakeresési PDB -fájl (programadatbázis) neve. Ez a beállítás csak akkor érvényes, ha --debug engedélyezve van.Ez a fordítóbeállítás egyenértékű az azonos nevű C#-fordító beállítással. További információ: /pdb (C# Compiler Options). |
--platform:platform-name |
Azt adja meg, hogy a létrehozott kód csak a megadott platformon (x86 Itanium vagy ) fusson, vagy x64 ha a platformnév anycpu van kiválasztva, azt határozza meg, hogy a létrehozott kód bármely platformon futtatható legyen.Ez a fordítóbeállítás egyenértékű az azonos nevű C#-fordító beállítással. További információ: /platform (C# Compiler Options). |
--preferreduilang:lang |
Az előnyben részesített kimeneti nyelvi kultúra nevét adja meg (például es-ES , ja-JP ). |
--quotations-debug |
Megadja, hogy további hibakeresési információkat kell kiadni az F#-idéző literálokból és a tükrözött definíciókból származtatott kifejezésekhez. A hibakeresési információk hozzá lesznek adva egy F# kifejezésfacsomópont egyéni attribútumaihoz. Lásd: Kódajánlatok és Expr.CustomAttributes. |
--reference:assembly-filename -r:assembly-filename |
Elérhetővé teszi az F# vagy .NET-keretrendszer szerelvény kódját a lefordított kód számára. Ez a fordítóbeállítás egyenértékű az azonos nevű C#-fordító beállítással. További információ: /reference (C# Compiler Options). |
--resource:resource-filename |
Felügyelt erőforrásfájl beágyazása a létrehozott szerelvénybe. Ez a fordítóbeállítás egyenértékű az azonos nevű C#-fordító beállítással. További információ: /resource (C# Compiler Options). |
--sig:signature-filename |
Létrehoz egy aláírásfájlt a létrehozott szerelvény alapján. Az aláírási fájlokról további információt az Aláírások című témakörben talál. |
--simpleresolution |
Megadja, hogy a szerelvényhivatkozásokat az MSBuild feloldás helyett címtáralapú Mono-szabályokkal kell feloldani. Az alapértelmezett az MSBuild felbontás használata, kivéve, ha a Mono alatt fut. |
--standalone |
Olyan szerelvényt hoz létre, amely az összes függőségét tartalmazza, hogy önmagában fusson anélkül, hogy további szerelvényekre, például az F#-kódtárra lenne szükség. |
--staticlink:assembly-name |
Statikusan összekapcsolja az adott szerelvényt és az összes hivatkozott DLL-t, amely a szerelvénytől függ. A szerelvény nevét használja, ne a DLL-nevet. |
--subsystemversion |
Megadja az operációsrendszer-alrendszer azon verzióját, amelyet a generált végrehajtható fájl használ. Használja a 6.02-t Windows 8.1-hez, 6.01-hez Windows 7-hez, Windows Vista 6.00-hoz. Ez a beállítás csak a végrehajtható fájlokra vonatkozik, nem a DLL-re, és csak akkor kell használni, ha az alkalmazás csak az operációs rendszer bizonyos verzióiban elérhető bizonyos biztonsági funkcióktól függ. Ha ezt a lehetőséget használja, és egy felhasználó megkísérli végrehajtani az alkalmazást az operációs rendszer egy alacsonyabb verzióján, hibaüzenet jelenik meg. |
--tailcalls[+|-] |
Engedélyezi vagy letiltja a tail IL utasítás használatát, ami miatt a veremkeret újra felhasználható a farok rekurzív funkcióihoz. A beállítás alapértelmezés szerint engedélyezett. |
--target:[exe|winexe|library|module] filename |
Megadja a létrehozott lefordított kód típusát és fájlnevét.
|
--times |
A fordítás időzítési adatait jeleníti meg. |
--utf8output |
Lehetővé teszi a fordító kimenetének nyomtatását az UTF-8 kódolásban. |
--warn:warning-level |
Figyelmeztetési szintet állít be (0–5). Az alapértelmezett szint 3. Minden figyelmeztetés a súlyossága alapján kap egy szintet. Az 5. szint több, de kevésbé súlyos figyelmeztetést ad, mint az 1. szint. Ez a fordítóbeállítás egyenértékű az azonos nevű C#-fordító beállítással. További információ: /warn (C# Compiler Options). |
--warnon:warning-number-list |
Engedélyezze azokat a figyelmeztetéseket, amelyek alapértelmezés szerint ki vannak kapcsolva, vagy egy másik parancssori beállítás letiltja őket. A lista vesszővel van elválasztva. |
--warnaserror[+|-] [warning-number-list] |
Engedélyezi vagy letiltja a figyelmeztetések hibaként való jelentésének lehetőségét. Megadhat meghatározott, letiltandó vagy engedélyezhető figyelmeztető számokat. A parancssor korábbi felülbírálási beállításainak későbbi beállításai. Ha például meg szeretné adni azokat a figyelmeztetéseket, amelyeket nem szeretne hibaként jelenteni, adja meg --warnaserror+ --warnaserror-:warning-number-list .Ez a fordítóbeállítás egyenértékű az azonos nevű C#-fordító beállítással. További információ: /warnaserror (C# Compiler Options). |
--win32manifest:manifest-filename |
Hozzáad egy Win32-jegyzékfájlt a fordításhoz. Ez a fordítóbeállítás egyenértékű az azonos nevű C#-fordító beállítással. További információ: /win32manifest (C# Compiler Options). |
--win32res:resource-filename |
Hozzáad egy Win32-erőforrásfájlt a fordításhoz. Ez a fordítóbeállítás egyenértékű az azonos nevű C#-fordító beállítással. További információ: /win32res ((C#) Compiler Options). |
Bejelentkezési figyelmeztetések
Az F#-fordító számos opt-in figyelmeztetést támogat:
Szám | Összegzés | Level | Leírás |
---|---|---|---|
21 | Futtatáskor ellenőrzött rekurzió | 5 | Figyelmezteti, ha a rekurzív használat futásidőben inicializálási-hangjelzést ad meg. |
22 | Rendelésen kívül végrehajtott kötések | 5 | Figyelmeztetés, ha egy rekurzív kötést egy előre mutató hivatkozás miatt nem lehet sorrendben végrehajtani. |
52 | A szerkezetek implicit másolatai | 5 | Figyelmeztesse, ha egy nem módosítható szerkezetet másol, hogy az eredetit ne mutánsítsa egy művelet. |
1178 | Implicit egyenlőség/összehasonlítás | 5 | Figyelmeztetés, ha egy F# típusú deklaráció implicit módon arra következtet, hogy az, NoEquality vagy NoComparison ha az attribútum nincs jelen a típuson. |
1182 | Nem használt változók | n.a. | Figyelmeztetés a fel nem használt változókra. |
3180 | Implicit halomfoglalások | n.a. | Figyelmeztetés, ha egy mutable local implicit módon van lefoglalva hivatkozási cellaként, mert egy lezárás rögzítette. |
3366 | Index jelölése | n.a. | Figyelmeztetés az F# 5 index jelölésének expr.[idx] használatakor. |
3517 | InlineIfLambda hiba | n.a. | Figyelmeztetés, ha az F#-optimalizáló nem tud beágyazott InlineIfLambda értékeket megadni, például ha explicit lambda helyett számított függvényérték van megadva. |
3387 | op_Implicit konverzió |
n.a. | Figyelmezteti, ha .NET implicit konverziót használ egy metódusargumentumban. |
3388 | További implicit felcímkésítés | n.a. | Figyelmeztetés további, implicit módon használt felcímkésítés esetén, az F# 6-ban hozzáadva. |
3389 | Implicit szélesítés | n.a. | Figyelmeztetés implicit számszűkítés használatakor. |
3390 | Hibás xml-dokumentum megjegyzései | n.a. | Figyelmeztetés, ha az XML-dokumentum megjegyzései különböző módokon helytelenül vannak formázva. |
Ezeket a figyelmeztetéseket a megfelelő figyelmeztetési szám használatával vagy <WarnOn>NNNN</WarnOn>
a NNNN
megfelelő számmal /warnon:NNNN
engedélyezheti.
(Használhatja a szintaxist <WarnOn>FSNNNN</WarnOn>
is( pl. <WarnOn>FS3388</WarnOn>
.) Vegye figyelembe, hogy ha a WarnOn
tulajdonság többször van megadva, csak az utolsó előfordulást használja a rendszer. Több figyelmeztetés megadásához adja meg a WarnOn
tulajdonságot egyszer egy vesszővel elválasztott sztring tartalomként: <WarnOn>3388,3559</WarnOn>
.
Kapcsolódó cikkek
Cím | Leírás |
---|---|
Interaktív F#-beállítások | Az F#-értelmező által támogatott parancssori beállításokat ismerteti, fsi.exe. |
Projekttulajdonságok – referencia | A projektek felhasználói felületét ismerteti, beleértve a buildelési lehetőségeket biztosító projekttulajdonság-lapokat is. |