2012-10-20 58 views
3

您好,我從http://z3.codeplex.com/下載了Z3,然後在Visual Studio 2012中打開了Z3解決方案。(雖然我並不是全新的VS,但我在10年內還沒有使用它)。這個解決方案中有9個項目,但我很難告訴我應該使用哪個項目。我可以猜出其中的一些,但其他人不太清楚。例如。 Microsoft.Z3和Microsoft.Z3V3有什麼區別?任何人都可以簡單解釋一下不同的項目是什麼以及要構建哪些項目?在Visual Studio中構建Z3時遇到問題

反正只是踢我試圖打造的頂級解決方案,但得到了下面的錯誤

錯誤1個錯誤RC1015:無法打開包含文件「afxres.h」。 C:\項目\ Z3-SRC-4.1.2 \ Z3 \ DLL \ dll.rc 10 1 DLL

錯誤2(同錯誤1除了在shell.rc)

錯誤3錯誤LNK1104:無法打開文件'C:\ Projects \ z3-src-4.1.2 \ z3 \ Debug \ z3_dbg.lib'C:\ Projects \ z3-src-4.1.2 \ z3 \ test_capi \ LINK test_capi

試圖構建只是MS.Z3項目仍然給我錯誤1.

我最終的目標是從說F#程序調用Z3。有人可以提供一些指導如何做到這一點? 任何幫助,將不勝感激。

回答

3

編輯

這個回答反映了Z3版本< = 4.1.1使用的directory structure。在4.3版本中,代碼庫已被重組/簡化。

編輯完

是否使用的是Visual Studio中的版本?我在問,因爲我想重現你所描述的行爲。 構建Z3的最簡單方法是here。 您應該使用Visual Studio命令提示符並執行msbuild。看起來你嘗試過,並有錯誤。下面是每個項目文件夾的簡短說明:

  • lib:Z3源代碼在這裏。這是重要的文件夾。對於Visual Studio用戶,它生成一個靜態庫。
  • dll:將靜態庫封裝爲Windows DLL的項目。這對其他平臺的用戶無關緊要。
  • shell:使用來自lib的靜態庫來構建z3.exe
  • test:一堆單元測試。它生產test.exe
  • Microsoft.Z3:.Net API。它是Z3的官方.Net API(C#,Visual Basic,F#等)。這是您應該使用F#的API。
  • Microsoft.Z3V3:這是舊的.NET API。這是Z3 3.x中的API。我們維護它,因爲有些用戶仍在使用它。
  • test_capi:測試Z3 C API的應用程序。
  • maxsat:在Z3 API上實現兩個maxsat算法的小應用程序。
+0

謝謝!我正在使用VS Professional 2012 Ver。 11.0.50727.1 RTMREL。我以前看過自述文件,但我的VS安裝中沒有「msbuild」命令,只有名爲msbuild的文件夾包含一些XML定義。這些說明是否可以用於VS 2010? –

+0

對不起,我沒有看到你的意思是VS命令行,而不是一個普通的命令行。我正在嘗試命令行構建。 –

+0

好吧,它結束了。它報告了有關afxres.h的2個錯誤,因爲Studio構建過程中沒有,但沒有發現工作室的鏈接錯誤。也許它只是沒有得到什麼?以下是以下輸出的記錄: –

相關問題