Mingw を使用して taglib 1.8 を正常にコンパイルし、それを Qt プロジェクトに統合しました。目的は、mp3 ファイルから ID3 タグを削除することです。
このコード:
void MainWindow::removeTagFromFile(QByteArray &fileContent)
{
TagLib::ByteVector byteVector(fileContent.constData());
TagLib::ID3v2::FrameFactory *frame = TagLib::ID3v2::FrameFactory::instance();
TagLib::IOStream *vectorStream = new TagLib::ByteVectorStream(byteVector);
TagLib::MPEG::File file(vectorStream, frame);
file.strip();
file.save();
}
XPでコンパイルして正常に動作します。コンパイルしても、Windows 7 で期待どおりに動作しません。「XP でコンパイルされた .exe」を 7 に変更しても、問題は解決しません。
変ですか?これは Taglib のバグだと思いますが、意味はありますか? アイデアや説明は大歓迎です。よろしくお願いします。
プロジェクトはこちらからダウンロードできます
Qt プロジェクトへのコンパイルと統合の詳細について、フランス語でチュートリアルを書いています。興味のある人がいる場合は、英語で書きます。