[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 :
      [code]cmake -DZLIB_INCLUDE_DIR:PATH=/usr/local/zlib/include -DZLIB_LIBRARY:FILEPATH=/usr/local/zlib/lib/libz.a -
      DCMAKE_BUILD_TYPE=Release -DBUILD_FRAMEWORK=ON -DWITH_MP4=ON -DWITH_ASF=ON[/code]
      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
      [code]cmake -DZLIB_INCLUDE_DIR:PATH=/usr/local/zlib/include -DZLIB_LIBRARY:FILEPATH=/usr/local/zlib/lib/libz.a -
      DCMAKE_BUILD_TYPE=Release -DWITH_MP4=ON -DWITH_ASF=ON[/code]
      and get *.pc file, not *.a file or *.dll or *.lib file anymore. So I try to add like LIBS+= and get invalid file.


  • I split off this topic from http://developer.qt.nokia.com/forums/viewthread/2765/

    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.



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



  • Volker suggests ignore BUILD_FRAMEWORK, but I'm so confused about how to ignore. I simple change:
    -DBUILD_FRAMEWORK=OFF instead of =ON.
    Is that right?



  • I have one clue, when I use cmake 2.8.6 x86 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:

    @#ifdef _WIN32
    class TAGLIB_EXPORT FileName
    {
    public:
    FileName(const wchar_t *name) : m_wname(name) {}
    FileName(const char *name) : m_name(name) {}
    operator const wchar_t *() const { return m_wname.c_str(); }
    operator const char *() const { return m_name.c_str(); }
    private:
    std::string m_name;
    std::wstring m_wname;
    };
    #else
    typedef const char *FileName;
    #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?


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.