LINUX.ORG.RU

id3lib


0

0

Здравствуйте. Я начинающий программист, поэтому видать что-то недопонимаю. Имеем исходный код:

cat convid3.cpp
#include <stdio.h>
#include <id3/tag.h>
#include <id3/field.h>


int main(void){
char str[1024];
ID3_Tag myTag("song.mp3");
myTag.Link("song.mp3", ID3TT_ID3V1);
ID3_Frame* myFrame = myTag.Find(ID3FID_ALBUM);
ID3_Field* myField = myFrame->GetField(ID3FN_TEXT);
if(myField != NULL){
myField->Get(str, 1024);
}

printf("Here: %s\n", str);
}

При попытке откомпилировать:

g++ -o convid3 convid3.cpp
/tmp/cc1soLKz.o(.text+0x24): In function `main':
: undefined reference to `ID3_Tag::ID3_Tag[in-charge](char const*)'
/tmp/cc1soLKz.o(.text+0x3d): In function `main':
: undefined reference to `ID3_Tag::Link(char const*, unsigned short)'
/tmp/cc1soLKz.o(.text+0x51): In function `main':
: undefined reference to `ID3_Tag::Find(ID3_FrameID) const'
/tmp/cc1soLKz.o(.text+0x6a): In function `main':
: undefined reference to `ID3_Frame::GetField(ID3_FieldID) const'
/tmp/cc1soLKz.o(.text+0xd7): In function `main':
: undefined reference to `ID3_Tag::~ID3_Tag [in-charge]()'
/tmp/cc1soLKz.o(.text+0xfd): In function `main':
: undefined reference to `ID3_Tag::~ID3_Tag [in-charge]()'
collect2: ld returned 1 exit status

Что не так? Такая библиотека есть, права на нее есть. Чт нужно компиляторы? Заранее спасибо за помощь.

anonymous

> Чт нужно компиляторы?

Нужно явно указывать библиотеку при компиляции

g++ -o convid3 convid3.cpp -lid3lib

abbr
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.