This question was migrated from Unix & Linux Stack Exchange because it can be answered on Stack Overflow. Migrated7年前。Learn more
我在做冷冻Debian7.0测试/喘息。
这是我的C示例代码:

using System.Windows.Forms;
using System.Drawing;

public class Simple : Form
{
    public Simple()
    {
       Text = "Simple";
       Size = new Size(250, 200);
       CenterToScreen();
    }

    static public void Main()
    {
       Application.Run(new Simple());
    }
}

我使用system.drawing和system.windows.forms引用以及在使用以下命令编译时在命令行中获得了上述在monodevelop中工作的c winforms代码示例:
mcs /tmp/Simple.cs -r:/usr/lib/mono/4.0/System.Windows.Forms.dll \
       -r:/usr/lib/mono/4.0/System.Drawing.dll

我试图让mcs命令工作,而不需要使用-r开关/参数(顺便说一下,我无法通过查看man mcs找到相关信息-我基本上是在某个随机网站上找到这个开关/参数,它工作了)。
为了检查它是否暂时有效,我发布了
export PATH=$PATH:/usr/lib/mono/4.0/System.Windows.Forms.dll:/usr/lib/mono/4.0/System.Drawing.dll

在发出mcs /tmp/Simple.cs之前,它失败,并在以下输出中出现错误:
deniz@debian:~$ cd /tmp
deniz@debian:/tmp$ export PATH=$PATH:/usr/lib/mono/4.0/System.Windows.Forms.dll:/usr/lib/mono/4.0/System.Drawing.dll
deniz@debian:/tmp$ mcs Simple.cs
Simple.cs(1,14): error CS0234: The type or namespace name `Windows' does not exist in the namespace `System'. Are you missing an assembly reference?
Simple.cs(2,14): error CS0234: The type or namespace name `Drawing' does not exist in the namespace `System'. Are you missing an assembly reference?
Compilation failed: 2 error(s), 0 warnings
deniz@debian:/tmp$

上面的输出告诉我,mcs编译器/实用程序没有看到dll文件,但是我不知道还要尝试什么。
任何帮助使winforms和绘图库被自动“查看”的人都将不胜感激!

最佳答案

我试图使mcs命令工作,而不需要使用-r开关/参数
这是不可能的,mcs不会查找库,除非您告诉它查找它们(这是用-r:…)完成的。

10-04 12:59