我们正在构建一个云服务来提供“编译即服务”。我们在 Azure 上有一个 Ubuntu 12.04 VM。我们也设法在虚拟机上安装了 GCC。现在我们正在 Visual Studio 上构建前端。我们有一个文本框来保存代码。但是我们无法弄清楚如何使用 GCC 来处理代码?
目前我们正在使用这样的东西;
string log = @"C:\log.c";
using (FileStream fs = new FileStream(log, FileMode.Create))
{
using (StreamWriter sw = new StreamWriter(fs))
{
sw.Write(TextBox1.Text);
sw.Close();
}
}
string szMgwGCCPath = "/usr/bin/gcc"; // Example of location
string szArguments = " -c log.c -o log.exe"; // Example of arguments
ProcessStartInfo gccStartInfo = new ProcessStartInfo(szMgwGCCPath, szArguments);
gccStartInfo.WindowStyle = ProcessWindowStyle.Hidden;
Process.Start(gccStartInfo);
我不确定它的哪些部分是正确的。由于我们无法测试它,因为编译器存储在 clod 上。
字符串 szMgwGCCPath = "/usr/bin/gcc"; // 位置示例
我们如何给出位置?我们是否使用 blob 存储 URL?怎么做?
之后我们如何处理文件?