November 7, 2011

spyhunter88 spyhunter88
Lab Rat
2 posts

[Moved] Taglib on symbian


So how do I build taglib in Windows? I try hard to build it in Desktop to get tag.lib and tag.dll, but cannot add to Symbian. I don’t want to use QMultimediaKit because it waste memory and I’m confused about AlbumArtist and Artist, that QMultimediaKit doesn’t have.

So I must compile in Linux base (Ubuntu) ?

I tried in Windows (can build .dll and .lib, run with Desktop app), and have Ubuntu 10.10. Can anyone help me to build for Symbian, how to import this library ?
I add INCLUDEPATH += and LIBS += to pro file with .lib that built in Windows but cannot run, it finish right after run.

I tried in Ubuntu 10.10 but get the same result:
1. I try :

  1. cmake -DZLIB_INCLUDE_DIR:PATH=/usr/local/zlib/include -DZLIB_LIBRARY:FILEPATH=/usr/local/zlib/lib/libz.a -
with install zlib, cppunit (gcc4.5 and g++4.5), without error. Get taglib.a file (about 3.1MB). Co I copy to Window and add to *.pro with LIBS += /path to file/taglib.a
When build, it said unresolved external symbol.
2. I try with: excluded -DBUILD_FRAMEWORK=ON
  1. cmake -DZLIB_INCLUDE_DIR:PATH=/usr/local/zlib/include -DZLIB_LIBRARY:FILEPATH=/usr/local/zlib/lib/libz.a -

and get *.pc file, not *.a file or *.dll or *.lib file anymore. So I try to add like LIBS+= and get invalid file.

4 replies

November 7, 2011

Andre Andre
Robot Herder
6661 posts

I split off this topic from

While I applaud you searching for related contents before posting, it is not a good idea to just continue an existing topic many months after it died. Instead, just start a new topic, and perhaps reference the older topics you have already found and read.

November 7, 2011

Volker Volker
Ant Farmer
5331 posts

Moderators’ note:
changed title and moved to the Mobile Subforum, as it’s about taglib on symbian.

November 10, 2011

spyhunter88 spyhunter88
Lab Rat
2 posts

Volker suggests ignore BUILD_FRAMEWORK, but I’m so confused about how to ignore. I simple change:
Is that right?

November 14, 2011

spyhunter88 spyhunter88
Lab Rat
2 posts

I have one clue, when I use cmake 2.8.6 ×86 in Window 7. Choose only ENABLE_STATIC and NO_ITUNES_HACKS, and build with VS 9 2008 (native). I get tag.lib file with 520KB, and compiler in Qt, it shows error with no constructor for Taglib::FileName when convert string to Taglib::FileName. And I cannot find another way to open Taglib::FileRef without using Taglib::FileName. So I comeback to tiostream.h (in the latest version in Git, the version in homepage the code below is put in tfile.h), it show:

  1. #ifdef _WIN32
  2.   class TAGLIB_EXPORT FileName
  3.   {
  4.   public:
  5.     FileName(const wchar_t *name) : m_wname(name) {}
  6.     FileName(const char *name) : m_name(name) {}
  7.     operator const wchar_t *() const { return m_wname.c_str(); }
  8.     operator const char *() const { return m_name.c_str(); }
  9.   private:
  10.     std::string m_name;
  11.     std::wstring m_wname;
  12.   };
  13. #else
  14.   typedef const char *FileName;
  15. #endif

Maybe that code only accept win32 can use constructor FileName from w_char_t. I try to find depth but cannot find constructor inside tiostream.cpp. I try to exclude #ifdef statement, Qt show unresolved symbol for FileName constructor again.
I but now when I try to build again in VS 2008, output always is a big file (~6MB tag.lib). I reinstall Cmake, erase and Generate again and again with cmake, build again and again with VS but cannot make tag.lib in 520KB again.
So I try now is find another way to constructor FileName from string, Qstring … or re-build again and again.

Any suggestion please?

  ‹‹ How we can we install linux offline sdk 64bit?      "Publishing is currently not possible" ? ››

You must log in to post a reply. Not a member yet? Register here!