Мы создаем облачный сервис для предоставления «Компиляции как службы». У нас есть Ubuntu 12.04 VM на Azure. Нам также удалось установить GCC на виртуальной машине. Теперь мы создаем интерфейс на Visual Studio. В этом случае у нас есть текстовое поле, в котором будет храниться код. Но мы не можем понять, как использовать GCC для обработки кода?Доступ к 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);
Я не уверен, какие его части являются правильными. Поскольку мы не можем его проверить, поскольку компилятор хранится на комбе.
string szMgwGCCPath = "/ usr/bin/gcc"; // Пример местоположения
Как нам указать местоположение? Используем ли мы URL-адрес хранилища blob? Как это сделать?
Как мы обрабатываем файл после этого?
Вы пытаетесь запустить исполняемый файл Linux в .NET? Или у вас есть Windows GCC, который вы пытаетесь запустить? – Igorek