2013-10-10 3 views
0

Я хочу скомпилировать C++-программу с библиотекой twitter в Linux.Невозможно скомпилировать программу с twitcurl

Я тока с помощью twitcurl как библиотеки твиттер API и установленного г ++ и все необходимые файлы и пакеты, которые перечислены на официальном сайте: 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?

+0

связывают вас реализацию библиотеки? Похоже, вы забыли связать библиотеку .lib (.dll). – Manu343726

+0

может у вас привести пример на ссылку .lib ?? Вы говорите о «libtwitcurl.so.1». ? – user2649244

+0

Есть много вопросов, отвечая на что-то очень похожее. Вам нужно понять, как вызывать 'g ++' (и, вероятно, как использовать' make') –

ответ

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/ 

Вы можете проверить г ++ библиотеки пути, используя следующую команду:

(/usr/lib/ обычно в конце.)

Если вы не хотите/не можете поместить файл в путь к библиотеке вашего компилятора, вы можете сказать ему, где найти libtwitcurl.so.1. путем добавления -L/path/to/twitcurl/ в g ++, но он не нужен, если файл уже находится в одном из путей библиотеки компилятора.

+0

Я уже копирую libtwitcurl.so.1. в/usr/lib /, но все еще отображается «не могу найти -ltwitcurl» Если я хочу использовать последний параметр, команда будет такой: "g ++ twitterClient.cpp -L/usr/lib/-ltwitcurl" – user2649244

0

Вы должны указать путь к твиттер Lib:

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

все еще получить ошибку, это команда вроде этого? "g ++ twitterClient.cpp -L/usr/lib/-ltwitcurl" – user2649244

Смежные вопросы