无法使用twitcurl编译程序

时间:2013-10-10 14:49:28

标签: c++ linux twitter

我想在Linux上用twitter库编译一个C ++程序。

我目前正在使用twitcurl作为twitter API库并安装了g ++以及官方网站上列出的所有必要文件和软件包:http://code.google.com/p/twitcurl/wiki/WikiHowToUseTwitcurlLibrary

但是,当我使用此命令g++ twitterClient.cpp -ltwitcurl编译程序时,出现此错误:cannot find -ltwitcurl

我还使用了CodeBlocks IDE来编译它,但是出现了这个错误:undefined reference to twitCurl::~twitCurl() `

我的代码只包含几行:

#include <iostream>
#include "Twitter/Twitter.hpp"
using namespace std ;

int main ()
{
    Twitter t ;
    return 0 ; 
}

我已经花了很多时间在这上面,但我无法解决问题。我应该怎么做才能在命令行和CodeBlocks上编译程序?

2 个答案:

答案 0 :(得分:1)

$ g++ twitterClient.cpp -ltwitcurl
cannot find -ltwitcurl

这意味着您的编译器在其库目录中找不到libtwitcurl.so.1.

首先,确保正确构建 twitcurl 库并获取libtwitcurl.so.1.文件,如下所示:

svn co http://twitcurl.googlecode.com/svn/trunk/libtwitcurl
cd libtwitcurl/
make

其次,确保将文件(或符号链接)放在编译器的一个库路径中:

cp libtwitcurl.so.1.0 /usr/lib/

您可以使用以下命令检查g ++库路径:

g++ --print-search-dirs | grep libraries

/usr/lib/通常在最后。)

如果您不希望/不能将文件放在编译器的库路径中,您还可以通过在g ++选项中添加libtwitcurl.so.1.来告诉它在哪里找到-L/path/to/twitcurl/,但它是如果文件已经在编译器的一个库路径中,则不需要。

答案 1 :(得分:0)

您需要指定twitter lib的路径:

g++ twitterClient.cpp -L/path/to/lib/dir -ltwitcurl