无法使用 twitcurl 编译程序

Unable to compile program with twitcurl

本文关键字:twitcurl 编译程序      更新时间:2023-10-16

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

我目前使用 twitcurl

作为 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 ; 
}

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

$ 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++ 选项中添加-L/path/to/twitcurl/来告诉它在哪里可以找到libtwitcurl.so.1.,但如果文件已经在编译器的库路径之一中,则不需要它。

您需要指定 Twitter lib 的路径:

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