构建一个x64项目不记得F#中已经构建的项目

时间:2011-03-29 05:59:25

标签: f# build-process x86 64-bit

当我在x86下第二次或第三次构建F#解决方案时,没有构建没有改变的项目,并且它显着加快了构建过程。当我在x64下尝试相同的时候,即使它们没有改变,所有项目也会始终构建。这使得构建过程非常缓慢,因为我在解决方案中有许多项目。

我该如何避免?

2 个答案:

答案 0 :(得分:2)

经过一番搜索,我发现了为什么会这样。

我曾经引用过一个名为Matlab的程序的COM。实际上它引用了mlapp.tlb并在构建时将其编译为dll。一个有趣的事情是,对于x86它运行得很好并且它不会强制所有项目在没有任何改变时重建但是使用x64,它会强制所有项目重建,即使没有任何改变...

解决方案是使用TlbImp.exe将tlb编译成我们自己的dll并改为引用dll。但我想知道,这不是一个错误吗?

编辑:这是一个错误: http://connect.microsoft.com/VisualStudio/feedback/details/655035/tlb-com-reference-in-f-on-x64

答案 1 :(得分:1)

这听起来好像你还没有在Visual Studio的“工具”中打开“仅在运行时构建启动项目和依赖项” - > “选项” - > “项目和解决方案” - > “建立并运行”。