在Mac OSX 10.7.4上编译简单的Qwt程序时出错

时间:2012-05-10 19:10:33

标签: c++ osx-lion qwt

我正在尝试使用Qwt v.6.0.1来实现以下c ++程序:

#include <cmath>
#include <QApplication>
#include <qwt_plot.h>
#include <qwt_plot_curve.h>

int main(int argc, char **argv)
{
   QApplication a(argc, argv);
   QwtPlot plot(QwtText("CppQwtExample1"));
   plot.setGeometry(0,0,640,400);
   plot.setAxisScale(QwtPlot::xBottom, 0.0, 2.0*M_PI);
   plot.setAxisScale(QwtPlot::yLeft, -1.0, 1.0);

   QwtPlotCurve sine("Sine");
   std::vector<double> xs;
   std::vector<double> ys;
   for (double x=0; x<2.0*M_PI; x+=(M_PI/10.0)) {
      xs.push_back(x);
      ys.push_back(std::sin(x));
   }
   sine.setData(&xs[0], &ys[0], xs.size());
   sine.attach(&plot);

   plot.show();
   return a.exec();
}

和.pro文件如下:

TEMPLATE = app
TARGET = CppQwtExample1
QMAKEFEATURES += /usr/local/qwt-6.0.1/features
CONFIG += qwt
INCLUDEPATH += /usr/local/qwt-6.0.1/lib/qwt.framework/Headers
LIBS += -L/usr/local/qwt-6.0.1/lib/qwt.framework/Versions/6/ \
 -lqwt
SOURCES += qwtTest.cpp

然而,当我现在尝试做

的qmake

我收到错误:

ld:找不到-lqwt的库 collect2:ld返回1退出状态 make: * [qwtTest.app/Contents/MacOS/qwtTest]错误1

我肯定会错过这里的一些东西。非常感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

LIBS += -L/usr/local/qwt-6.0.1/lib/qwt.framework/Versions/6/ -lqwt

这是错误的。由于Mac OS X框架的命名约定,qwt.framework中的动态库未命名为“libqwt.dylib”(链接器需要),而只是“qwt”。 使用

LIBS += -F/usr/local/qwt-6.0.1/lib -framework qwt

代替。