C#程序通过C#代码中的using
指令使用.Net框架库或第三方库。
当使用csc
编译程序时,
-
我们应该如何指定所用库的搜索路径?
-
编译器是否按照某种搜索顺序搜索使用过的库?
在指定库的搜索路径和搜索顺序方面,我将csc
与gcc
和javac
进行比较。对于gcc
和javac
,有多种方法可以指定搜索路径,
- 命令行选项,例如
-L
到gcc
和-classpath
到javac
- 环境变量,例如
gcc
的LIBRARY_PATH
和javac
的CLASSPATH
- 默认路径,如当前目录、某些系统范围的目录
csc
是否也有多种方法,并且它们之间有搜索顺序?
如果使用调用csc
的msbuild
编译程序,也会出现同样的问题。
谢谢。
我们应该如何指定所用库的搜索路径?
使用/lib
命令行选项。
语法
/lib:dir1[,dir2]
dir1
如果在当前工作目录(调用编译器的目录)或公共语言运行库的系统目录中找不到引用的程序集,则编译器要查找的目录。
dir2
要在其中搜索程序集引用的一个或多个附加目录。用逗号分隔其他目录名,它们之间不能有空格。
OP
如果使用调用csc 的msbuild编译程序,同样的问题
如果你使用msbuild,你很可能使用.proj文件,所以它会使用你的环境的路径设置,我希望
告诉我更多
- -lib