我在 Qt 应用程序中使用libvcard 。我按照自述文件中的说明在 Ubuntu 上安装了该库(即我在项目文件上运行了qmake
, make
, sudo make install
),但是当我尝试从网站运行此代码时,出现了一堆错误。
#include <QtCore/QCoreApplication>
#include <vcard/vcard.h>
#include <QtDebug>
int main(int argc, char *argv[])
{
// Now we can parse it...
QList<vCard> vcards = vCard::fromFile("/home/ubuntu/Desktop/Contacts.vcf");
// ...and then we can use it.
if (!vcards.isEmpty())
{
vCard vcard = vcards.takeFirst();
vCardProperty name_prop = vcard.property(VC_NAME);
if (name_prop.isValid())
{
QStringList values = name_prop.values();
QString firstname = values.at(vCardProperty::Firstname);
QString lastname = values.at(vCardProperty::Lastname);
qDebug()<<firstname<<" "<<lastname;
}
}
}
错误
在主函数中:
/home/ubuntu/Workspace/Qt/cVCardTest-build-desktop-Desktop_Qt_4_8_1_for_GCC__Qt_SDK__Debug/../cVCardTest/main.cpp:8:
错误:未定义对 `vCard::fromFile(QString const&) /home/ubuntu/Workspace/Qt/cVCardTest-build-desktop-Desktop_Qt_4_8_1_for_GCC__Qt_SDK__Debug/../cVCardTest/main.cpp:15 的引用:
错误:未定义对
vCard::property(QString const&, QList<vCardParam> const&, bool) const /home/ubuntu/Workspace/Qt/cVCardTest-build-desktop-Desktop_Qt_4_8_1_for_GCC__Qt_SDK__Debug/../cVCardTest/main.cpp:15: error: undefined reference to
vCard::property(QString const&, QList const&, bool) const' ' 的引用
我不确定我做错了什么。我应该在项目文件中添加一些东西以使用这个库吗?