Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
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>.fsprojhaszná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). |
--checknulls[+|-] |
Engedélyezi null értékű hivatkozástípusokat, amelyek az F# 9 fájlban lesznek hozzáadva. |
--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, fullamely 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 (x86Itaniumvagy ) fusson, vagy x64ha 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 | szint | 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. |
| 3186 | Hiányzó metaadat-deklaráció | n.a. | Figyelmeztetés, ha egy F#-metaadat-csomópont nem rendelkezik egyező deklarációval. Jelezhet egy hibás szerelvényt; előfordulhat, hogy újrafordítás szükséges. |
| 3366 | Index jelölése | n.a. | Figyelmeztetés az F# 5 index jelölésének expr.[idx] használatakor. |
| 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. |
| 3395 | Implicit metódus argumentumának konvertálása | n.a. | Figyelmeztessen arra, ha implicit konverziót használnak egy metódusargumentum típusával való egyeztetéshez. |
| 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. |
| 3559 | Az obj-ként kikövetkesedő típus | n.a. | Figyelmeztetés, ha egy típus implicit módon 'obj'-ként van levezetve. Javasolt explicit típusú széljegyzetek hozzáadása. |
| 3560 | Minden mező megváltozott a rekord másolatában. | n.a. | Figyelmeztetés, ha egy rekord másolási és frissítési kifejezése módosítja az összes mezőt. Ajánlott a rekordszerkezet szintaxisának használata. |
| 3570 | Kérdéses törlés vagy rövidítés | n.a. | Figyelmezteti, ha a(z) "_" nem egyértelmű módon használatos elvetésként és rövidített függvényként is ugyanabban a hatókörben. |
| 3579 | Típus nélküli karakterlánc-interpoláció | n.a. | Figyelmeztetés, ha az interpolált sztringek nem beírt értékeket tartalmaznak. A gépelt formátumjelölők használata ajánlott. |
| 3582 | Függvény árnyékai unió esete | n.a. | Figyelmeztetés, ha egy függvénydefiníció véletlenül árnyékolást ad egy egyesítő esetnek. Zárójelek használatával tegyél egyértelművé. |
| 3878 | Érvénytelen attribútum a mezőkkel rendelkező egyesítő esetnél | n.a. | Figyelmeztetés, ha egy attribútum érvénytelen a mezőkkel rendelkező egyesítő esetekben való használatra. |
Ezeket a figyelmeztetéseket a megfelelő figyelmeztetési szám használatával vagy /warnon:NNNN a <WarnOn>NNNN</WarnOn> megfelelő számmal NNNN engedélyezheti.
(Használhatja például a szintaxist <WarnOn>FSNNNN</WarnOn><WarnOn>FS3388</WarnOn>is.) 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. |