我已经能够从这一步取得进展:在 Windows 7 上构建 QGIS 源代码 - 不工作
我正在尝试使用 Visual Studio 10 Express 构建最新的 QGIS(2.10.1),但在构建“ALL BUILD”时获取这些未解析的符号。
在 Cmake-gui 中,我可以看到这些变量未定义:QWTPOLAR_INCLUDE_DIR
and QWTPOLAR_LIBRARY
.
构建配置设置为发布。
我记得在构建解决方案本身时,它出现了一些失败。
所有未解析的符号都以“ALL BUILD”中的 Qwt 开头,例如:
Creating library d:/build/src/gui/Release/qgis_gui.lib and object d:/build/src/gui/Release/qgis_gui.exp
81>qgsrasterhistogramwidget.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall QwtPlot::print(class QPainter *,class QRect const &,class QwtPlotPrintFilter const &)const " (?print@QwtPlot@@UBEXPAVQPainter@@ABVQRect@@ABVQwtPlotPrintFilter@@@Z)
81>qgshistogramwidget.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall QwtPlot::print(class QPainter *,class QRect const &,class QwtPlotPrintFilter const &)const " (?print@QwtPlot@@UBEXPAVQPainter@@ABVQRect@@ABVQwtPlotPrintFilter@@@Z)
81>qgsrasterhistogramwidget.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall QwtPlot::polish(void)" (?polish@QwtPlot@@UAEXXZ)
81>qgshistogramwidget.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall QwtPlot::polish(void)" (?polish@QwtPlot@@UAEXXZ)
81>qgsrasterhistogramwidget.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall QwtPlot::clear(void)" (?clear@QwtPlot@@UAEXXZ)
81>qgshistogramwidget.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall QwtPlot::clear(void)" (?clear@QwtPlot@@UAEXXZ)
81>qgsrasterhistogramwidget.obj : error LNK2001: unresolved external symbol "protected: virtual void __thiscall QwtPlot::drawItems(class QPainter *,class QRect const &,class QwtScaleMap const * const,class QwtPlotPrintFilter const &)const " (?drawItems@QwtPlot@@MBEXPAVQPainter@@ABVQRect@@QBVQwtScaleMap@@ABVQwtPlotPrintFilter@@@Z)
81>qgshistogramwidget.obj : error LNK2001: unresolved external symbol "protected: virtual void __thiscall QwtPlot::drawItems(class QPainter *,class QRect const &,class QwtScaleMap const * const,class QwtPlotPrintFilter const &)const " (?drawItems@QwtPlot@@MBEXPAVQPainter@@ABVQRect@@QBVQwtScaleMap@@ABVQwtPlotPrintFilter@@@Z)
81>qgsrasterhistogramwidget.obj : error LNK2001: unresolved external symbol "protected: virtual void __thiscall QwtPlot::printLegendItem(class QPainter *,class QWidget const *,class QRect const &)const " (?printLegendItem@QwtPlot@@MBEXPAVQPainter@@PBVQWidget@@ABVQRect@@@Z)
81>qgshistogramwidget.obj : error LNK2001: unresolved external symbol "protected: virtual void __thiscall QwtPlot::printLegendItem(class QPainter *,class QWidget const *,class QRect const &)const " (?printLegendItem@QwtPlot@@MBEXPAVQPainter@@PBVQWidget@@ABVQRect@@@Z)
81>qgsrasterhistogramwidget.obj : error LNK2001: unresolved external symbol "protected: virtual void __thiscall QwtPlot::printTitle(class QPainter *,class QRect const &)const " (?printTitle@QwtPlot@@MBEXPAVQPainter@@ABVQRect@@@Z)
81>qgshistogramwidget.obj : error LNK2001: unresolved external symbol "protected: virtual void __thiscall QwtPlot::printTitle(class QPainter *,class QRect const &)const " (?printTitle@QwtPlot@@MBEXPAVQPainter@@ABVQRect@@@Z)
81>qgsrasterhistogramwidget.obj : error LNK2001: unresolved external symbol "protected: virtual void __thiscall QwtPlot::printScale(class QPainter *,int,int,int,int,class QRect const &)const " (?printScale@QwtPlot@@MBEXPAVQPainter@@HHHHABVQRect@@@Z)
81>qgshistogramwidget.obj : error LNK2001: unresolved external symbol "protected: virtual void __thiscall QwtPlot::printScale(class QPainter *,int,int,int,int,class QRect const &)const " (?printScale@QwtPlot@@MBEXPAVQPainter@@HHHHABVQRect@@@Z)
81>qgsrasterhistogramwidget.obj : error LNK2001: unresolved external symbol "protected: virtual void __thiscall QwtPlot::printCanvas(class QPainter *,class QRect const &,class QRect const &,class QwtScaleMap const * const,class QwtPlotPrintFilter const &)const " (?printCanvas@QwtPlot@@MBEXPAVQPainter@@ABVQRect@@1QBVQwtScaleMap@@ABVQwtPlotPrintFilter@@@Z)
81>qgshistogramwidget.obj : error LNK2001: unresolved external symbol "protected: virtual void __thiscall QwtPlot::printCanvas(class QPainter *,class QRect const &,class QRect const &,class QwtScaleMap const * const,class QwtPlotPrintFilter const &)const " (?printCanvas@QwtPlot@@MBEXPAVQPainter@@ABVQRect@@1QBVQwtScaleMap@@ABVQwtPlotPrintFilter@@@Z)
81>qgsrasterhistogramwidget.obj : error LNK2001: unresolved external symbol "protected: virtual void __thiscall QwtPlot::printLegend(class QPainter *,class QRec
可能是什么原因造成的?