使用CSC命令來生成專案

2021-07-16 07:23:45 字數 2003 閱讀 8568

本篇部落格來演示如何通過csc命令來生成程式集和應用程式,而不使用visualstudio。

編譯c#**使用的是csc命令,該命令位於c:\windows\microsoft.net\framework64\v4.0.30319目錄下,如果你的控制台提示找不到csc命令,則需要將該路徑加入到系統的環境變數中。

接下來,讓我們來一步一步建立乙個程式集和控制台應用程式,並通過csc命令來編譯他們。

首先為類庫新建乙個資料夾叫做classlibrary1,然後進入classlibrary1,建立乙個檔案student.cs,該檔案的**如下:

using system;

namespace classlibrary1

}}

接下來,我們在student.cs目錄的當前位置新建乙個bin資料夾,然後進入bin後再新建乙個debug資料夾。回到根目錄,開啟乙個命令列,輸入以下命令來講該類編譯為乙個程式集。

csc /out:classlibrary1\bin

\debug

\classlibrary1.dll /target:library classlibrary1\student.cs

先稍微解釋下兩個引數:

/out 這個是csc命令輸出的檔案,這裡是將生成的檔案輸出為classlibrary1\bin\debug\classlibrary1.dll

/target是目標型別,這裡的值為library,意思是輸出為類庫,即dll檔案。

/target經常使用以下型別:

有了類庫元件,接下來建立乙個控制台應用程式。我們在根目錄新建乙個資料夾叫buildassembly,進去後建立bin資料夾,然後進入bin,再建立debug資料夾,然後回到buildassembly資料夾,建立兩個類,car.cs和program.cs,**如下:

using system;

namespace buildassembly

}}

using classlibrary1;

using system;

namespace

buildassembly

}}

然後開始編譯

csc /out:buildassembly\bin

\debug

\buildassembly.exe /target:exe /reference:classlibrary1\bin

\debug

\classlibrary1.dll buildassembly\car.cs buildassembly\program.cs

這裡新增了乙個引數是:reference,意思是引用了哪些程式集檔案,這裡我們指定classlibrary1\bin\debug\classlibrary1.dll檔案。我們的buildassembly.exe檔案已經生成了,執行下發現丟擲了異常,

unhandled exception: system.io.filenotfoundexception: could not

load

file

or ass

embly 'classlibrary1, version=0.0.0.0, culture=neutral, publickeytoken=null'

orone

of its dependencies. the system cannot find the

file specified.

at buildassembly.program.main(string args)

仔細看一下,是無法載入classlibrary1程式集,我們只需要把這個檔案拷貝到buildassembly.exe的同級目錄,再次執行buildassembly.exe就可以了。

我們並沒有在visualstudio中新增對classlibrary1.dll的引用,而是在編譯時指定了乙個引數,並且**可以通過編譯並正常執行。

使用cmake來生成makefile

cmake 提供了比 autoconfig 更簡潔的語法 在 linux 平台下使用 cmake 生成 makefile 並編譯的流程如下 編寫cmakelists.txt。執行命令 cmake path 或者 ccmake path 生成makefile path是cmakelists.txt所在...

使用csc命令手動編譯cs檔案

csc.exe是.net用來編譯.cs檔案的。一般來說在c windows microsoft.net framework v2.0.50727 1.首先確認是否配置環境變數 當然,如果不配置也行,只不過要加上路徑 如果沒有,請按以下步驟配置 window7 右鍵點選 計算機 屬性 高階系統設定 環...

csc命令使用的一些引數

與其他程式語言一樣,c 在csc中執行時存在一些引數,不同的引數可以完成不一樣的功能。1 使用target 引數實現 csc target exe e cs 這個命令執行得到的執行結果與第一種方式一樣。這個引數還有幾種編譯其他檔案的型別的引數 target exe 生成控制台可執行檔案 預設 縮寫 ...