如何使用mingw32-gcc编译器从c代码以编程方式编译c代码

本文关键字:代码 编程 方式 编译 何使用 编译器 mingw32-gcc | 更新日期: 2023-09-27 18:29:03

我想以编程方式从C#编译C代码。我正在尝试,但还没有找到任何解决方案。这是我的密码。

try {
    var info = new ProcessStartInfo {
        FileName = "cmd.exe",
        Arguments = "mingw32-gcc -o a Test.c"
    };
    var process = new Process { StartInfo = info };
    bool start = process.Start();
    process.WaitForExit();
    if (start) {
        Console.WriteLine("done");
    }
} catch (Exception) {
    Console.WriteLine("Not done");
}

我在windows 7中使用VS2010,并且我已经安装了mingw32 gcc,我的mingw32 gcc环境变量是C:''Program Files''CodeBlocks''MinGW''bin如有任何帮助,我们将不胜感激。提前谢谢。

如何使用mingw32-gcc编译器从c代码以编程方式编译c代码

尝试

Process process = Process.Start(
         @"C:'Program Files'CodeBlocks'MinGW'bin'mingw32-gcc.exe", "-o a Test.c");

不需要调用cmd.exe程序。您可以使用参数直接调用mingw32-gcc.exe程序。

编辑:

string szMgwGCCPath = "C:''mingw32''bin''mingw32-gcc.exe"; // Example of location
string szArguments = " -c main.c -o main.exe"; // Example of arguments
ProcessStartInfo gccStartInfo = new ProcessStartInfo(szMgwGCCPath , szArguments );
gccStartInfo.WindowStyle = ProcessWindowStyle.Hidden;
Process.Start(gccStartInfo );

问候