cl.exe不会在第二个子进程中编译

时间:2016-06-20 14:27:58

标签: windows cl

我试图在Node.js'中创建的两个子进程中编译两个文件。 child_process并行.spawn()模块,基本上循环源并立即生成两个shell。

但是,只编译一个文件并且它并不总是相同。 一个child_process将返回错误代码2。

知道cl.exe无法运行两个实例吗?我假设顺序运行它将解决这个问题。

注意:设置或取消设置/ MP标志不会改变此行为。

1 个答案:

答案 0 :(得分:0)

cl.exe在多个进程中运行jsut。有些标志可能会改变这一点。在我的情况下,/Zi生成一个程序数据库文件,该文件无法由多个cl.exe访问。

解决方案是设置/Fs,强制同时写入,或者不设置/Zi,然后我就这样做了。