我想从Linux终端的命令行编译一个C#程序。我的csc.exe已添加到我的路径并正常工作。目录布局如下:
|-- Program.cs
|-- Otherfiles.cs
|-- bin
| |-- Debug
| | |-- Newtonsoft.Json.dll
从顶层目录,我使用以下命令编译:
csc *.cs /r:./bin/Debug/Newtonsoft.Json.dll
--> error CS2001: Source file 'r:bin/Debug/Newtonsoft.Json.dll' could not be found
有没有更好的方法来做我在这里尝试做的事情,或者我只需将我想要的.dll文件复制到与Program.cs
相同的目录中,就像在next()
中所做的那样。 {3}}?
答案 0 :(得分:2)
/reference
参数仅用于指示程序集的名称。
要指定其他目录以搜索程序集文件,请使用/lib
参数:
csc *.cs /r:Newtonsoft.Json.dll /lib:"./dir with spaces/need quotes", ./bin/Debug
使用/ lib指定一个或多个程序集引用所在的目录。 / lib主题还讨论了编译器搜索程序集的目录。