我正在尝试制作一个可以被浏览器访问的在线gcc编译器。对于这一切,我在窗口XP上使用php,cygwin。实际上我将浏览器上的代码窗口提供给用户。
一般过程如下:
假设c程序中没有用于测试的读取函数我只使用一个printf
语句。
问题是:
如果有大约30个同时请求意味着30个用户在相同的时间点编译程序,那么它将在大约15秒内产生输出,这太长了。
有些人请帮我减少这个时间。欢迎提出每项建议
我可以在没有制作.exe文件的情况下阅读C程序的输出。
答案 0 :(得分:1)
一个起点可能是探索分布式构建系统。
在Windows上我知道(非免费)解决方案是Incredibuild。我们在大约8年前将它用于我们的一个项目,它将 clean和build 时间从25分钟减少到大约5分钟。对它进行了审核here。
现在,我刚刚搜索了其他替代方案和非Windows解决方案,我也找到了distcc。
此处还有一个关于alternatives to Incredibuild的讨论(看似陈旧)。
答案 1 :(得分:0)
如果每个编译请求的C源代码几乎相同,则可以使用启用编译器缓存的构建系统。 E. g。 waf和cmake。他们可以使用前一个建筑的副本来加速编译。