Firefox addon 使用xulrunner-sdk-36.0 C+编译firefox扩展+;

Firefox addon 使用xulrunner-sdk-36.0 C+编译firefox扩展+;,firefox-addon,firefox-addon-sdk,xpcom,Firefox Addon,Firefox Addon Sdk,Xpcom,我有一个FF工具栏在所有以前的版本中工作。我的工具栏部分用C++编写。我尝试用一个新的Xulrner-SDK-32000构建C++部分 我收到过这样的链接错误: 1>xpcomglue_s.lib(nsISupportsImpl.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1800' doesn't match value '1600' in Encryption.obj 1>xpcomglue_s.l

我有一个FF工具栏在所有以前的版本中工作。我的工具栏部分用C++编写。我尝试用一个新的Xulrner-SDK-32000构建C++部分 我收到过这样的链接错误:

1>xpcomglue_s.lib(nsISupportsImpl.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1800' doesn't match value '1600' in Encryption.obj
1>xpcomglue_s.lib(nsStringAPI.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1800' doesn't match value '1600' in Encryption.obj
1>xpcomglue_s.lib(nsComponentManagerUtils.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1800' doesn't match value '1600' in Encryption.obj
1>xpcomglue_s.lib(nsCOMPtr.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1800' doesn't match value '1600' in Encryption.obj
1>xpcomglue_s.lib(nsCRTGlue.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1800' doesn't match value '1600' in Encryption.obj
1>xpcomglue_s.lib(nsTArray.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1800' doesn't match value '1600' in Encryption.obj
从我的第一次研究中,我了解到VS版本不兼容的问题。我尝试过用相同的错误重新编译VS2010和VS2012


有人知道如何解决这个问题吗?

\u MSC\u ver1800
是Visual Studio 2013,而
1600
是Visual Studio 2010。两个编译器在C++模式下互不兼容,因此需要重新编译项目或SDK,以便编译器匹配。
1800
告诉我xulrunner SDK是使用VS2013构建的,而您的项目仍然使用VS2010。(我猜当您尝试VS2012时,它抱怨的是
1700
而不是
1600
?)

因此,您需要在VS2013中使用v120平台工具集编译项目(请参见项目属性/常规),或者自己使用VS2010编译xulrunner SDK

从Gecko 37开始,您可能会:

请注意,从Firefox37开始,Visual Studio的早期版本将无法工作。我们已经开始使用Visual Studio 2012及更早版本不支持的C++11功能