我一直在試圖用winw編譯一個帶有minw32的程序。每次我嘗試編譯這個時,都會收到關於sal.h缺失的錯誤。我已經下載了Visual Studio C++ 2010(Express),並且已經獲得了Microsoft Win7 SDK。即便如此,我仍然沒有找到該頭文件。有什麼地方可以下載嗎?我如何得到sal.h
7
A
回答
9
它位於
"C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\include" (VS 2008)
或
"C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include" (VS 2010)
或
"C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include" (VS 2012)
當然
,你可能要適應當地的安裝路徑。
1
正如前面的答案所說,SAL是一個Visual Studio的東西。恕我直言,這是一個偉大的技術,它可以幫助編譯器理解代碼,以便在出錯時發出警告。不幸的是,微軟seems to own a patent on it so other compilers can't implement it☹。即使你從你的VS安裝中獲得sal.h
的副本,我真誠地懷疑它會與mingw一起工作,因爲它會將宏轉換成gcc/mingw不理解的屬性。
我把一個名爲Salieri的小項目放在一起,它基本上是SAL頭的可移植版本,它只是定義了SAL宏。您不會獲得SAL註釋代碼的任何好處,但它可以幫助您獲得使用SAL在其他編譯器上編譯的代碼。
對不起,我在這裏宣傳自己的項目,但我認爲這可能會有很多人在這篇文章中遇到很大的幫助。
相關問題
- 1. 不需要的sal.h警告
- 2. 我如何得到「xmi:type」值
- 3. 我如何得到的JasperServer
- 4. 執着:我如何得到我的ACID
- 5. 我如何得到我的InputMethodService
- 6. 我如何得到我的prometheus圖?
- 7. 缺少sal.h同時通過MinGW的
- 8. 命運錯誤:不能找到文件'sal.h'
- 9. Iam沒有得到iOS版本6.0我如何得到這個?
- 10. 什麼是makeinfo,我如何得到它?
- 11. 我如何得到這個:通過?
- 12. 我如何得到2位小數?
- 13. 我如何得到preg_match_all();從URL
- 14. 我如何獲得symfony2導出到Excel
- 15. 我如何得到的圖像的
- 16. 我如何得到Orwell的Allegro Dev C++
- 17. 我如何得到解析的Android
- 18. 我會得到如何VBA不使用
- 19. 我如何得到這個效果?
- 20. 我們如何得到glDrawElements()的索引?
- 21. 我如何得到或(SUM(IF()))MySQL
- 22. 什麼是HttpClient?我如何得到它?
- 23. 我如何得到昨天的約會?
- 24. 我如何得到一個subString?
- 25. AngularJS:我如何獲得$ location.path到模板
- 26. 我會得到如何的mod_rewrite工作
- 27. 我該如何得到這個效果?
- 28. 如何得到我想要的ADF
- 29. 我如何得到裁剪的整數
- 30. 我如何從@QueryParam得到值
當試圖使用MinGW進行編譯時,VS安裝路徑中的include會有什麼幫助? – Elmi 2013-04-21 15:38:29
@elmi - 由於SAL註釋(http://msdn.microsoft.com/en-us/library/ms235402.aspx)是Microsoft Visual C++的一部分,它隨Microsoft Visual Studio一起提供,不屬於Windows SDK或任何其他Microsoft - 提供的SDK,無論你喜歡與否。 – 2013-04-21 17:02:17
嗯,所以答案是,不可能用MingW(包括DirectX-thingies)編譯WinSDK中的某些東西! – Elmi 2013-04-23 12:45:51