amarok install failure
Michael Landin Hostbaek
mich at prodnet.eu
Sun Dec 28 23:48:03 UTC 2008
On 28 déc. 08, at 21:57, Gary Kline <kline at thought.org> wrote:
> On Sun, Dec 28, 2008 at 09:00:35AM -0900, Mel wrote:
>> On Sunday 28 December 2008 00:35:56 Alain G. Fabry wrote:
>>> During the installation of amarok, I get the following error, what
>>> is going
>>> wrong here.
>>>
>>> gmake[5]: Entering directory
>>> `/usr/ports/audio/amarok/work/amarok-1.4.10/amarok/src/mediadevice/
>>> mtp'
>>> /bin/sh /usr/local/bin/libtool --silent --tag=CXX --mode=compile
>>> c++
>>> -DHAVE_CONFIG_H -I. -I../../../.. -I../../../../amarok/src
>>> -I../../../../amarok/src -I../../../../amarok/src/amarokcore
>>> -I../../../../amarok/src/amarokcore -I../../../../amarok/src/engine
>>> -I../../../../amarok/src/engine -I../../../../amarok/src/mediadevice
>>> -I/usr/local/include/taglib -I/usr/local/include -I/usr/local/
>>> include
>>> -D_THREAD_SAFE -pthread -DQT_THREAD_SUPPORT -I/usr/local/include
>>> -I/usr/local/include -I/usr/local/include -D_GETOPT_H -
>>> D_THREAD_SAFE
>>> -Wno-long-long -Wundef -Wall -W -Wpointer-arith -O2 -fno-strict-
>>> aliasing
>>> -pipe -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-
>>> common
>>> -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT
>>> -DQT_NO_TRANSLATION -MT mtpmediadevice.lo -MD -MP -MF
>>> .deps/mtpmediadevice.Tpo -c -o mtpmediadevice.lo mtpmediadevice.cpp
>>> /usr/local/include/libmtp.h: In member function 'virtual MediaItem*
>>> MtpMediaDevice::copyTrackToDevice(const MetaBundle&)':
>>> /usr/local/include/libmtp.h:489: error: too many arguments to
>>> function 'int
>>> LIBMTP_Send_Track_From_File(LIBMTP_mtpdevice_t*, const char*,
>>> LIBMTP_track_t*, int (*)(uint64_t, uint64_t, const void*), const
>>> void*)'
>>> mtpmediadevice.cpp:302: error: at this point in file
>>> mtpmediadevice.cpp: In member function 'uint32_t
>>> MtpMediaDevice::getDefaultParentId()': mtpmediadevice.cpp:383:
>>> warning:
>>> deprecated conversion from string constant to 'char*'
>>> /usr/local/include/libmtp.h: In member function 'LIBMTP_album_t*
>>> MtpMediaDevice::getOrCreateAlbum(QPtrList<MediaItem>*)':
>>> /usr/local/include/libmtp.h:533: error: too many arguments to
>>> function 'int
>>> LIBMTP_Create_New_Album(LIBMTP_mtpdevice_t*, LIBMTP_album_t*)'
>>> mtpmediadevice.cpp:532: error: at this point in file
>>> /usr/local/include/libmtp.h: In member function 'uint32_t
>>> MtpMediaDevice::createFolder(const char*, uint32_t)':
>>> /usr/local/include/libmtp.h:508: error: too few arguments to
>>> function
>>> 'uint32_t LIBMTP_Create_Folder(LIBMTP_mtpdevice_t*, char*, uint32_t,
>>> uint32_t)' mtpmediadevice.cpp:611: error: at this point in file
>>> /usr/local/include/libmtp.h: In member function 'void
>>> MtpMediaDevice::playlistFromItem(MtpMediaItem*)':
>>> /usr/local/include/libmtp.h:521: error: too many arguments to
>>> function 'int
>>> LIBMTP_Create_New_Playlist(LIBMTP_mtpdevice_t*, LIBMTP_playlist_t*)'
>>> mtpmediadevice.cpp:916: error: at this point in file
>>> gmake[5]: *** [mtpmediadevice.lo] Error 1
>>> gmake[5]: Leaving directory
>>> `/usr/ports/audio/amarok/work/amarok-1.4.10/amarok/src/mediadevice/
>>> mtp'
>>> gmake[4]: *** [all-recursive] Error 1
>>> gmake[4]: Leaving directory
>>> `/usr/ports/audio/amarok/work/amarok-1.4.10/amarok/src/mediadevice'
>>> gmake[3]: *** [all-recursive] Error 1
>>> gmake[3]: Leaving directory
>>> `/usr/ports/audio/amarok/work/amarok-1.4.10/amarok/src' gmake[2]:
>>> ***
>>> [all-recursive] Error 1
>>> gmake[2]: Leaving directory
>>> `/usr/ports/audio/amarok/work/amarok-1.4.10/amarok' gmake[1]: ***
>>> [all-recursive] Error 1
>>> gmake[1]: Leaving directory `/usr/ports/audio/amarok/work/
>>> amarok-1.4.10'
>>> gmake: *** [all] Error 2
>>> *** Error code 2
>>
>> This is a result of libmtp update. Either don't use libmtp,
>> downgrade it to
>> previous version 0.2.6 or add the patch below my sig
>> as /usr/ports/audio/amarok/files/patch-
>> amarok_src_mediadevice_mtp_mtpmediadevice.cpp
>>
>> --
>> Mel
>>
>> --- amarok/src/mediadevice/mtp/mtpmediadevice.cpp.orig 2008-08-13
>> 13:21:51.000000000 -0800
>> +++ amarok/src/mediadevice/mtp/mtpmediadevice.cpp 2008-12-28
>> 08:47:14.000000000 -0900
>> @@ -296,9 +296,10 @@
>>
>> m_critical_mutex.lock();
>> debug() << "Sending track... " << bundle.url().path().utf8() <<
>> endl;
>> + trackmeta->parent_id = parent_id;
>> int ret = LIBMTP_Send_Track_From_File(
>> m_device, bundle.url().path().utf8(), trackmeta,
>> - progressCallback, this, parent_id
>> + progressCallback, this
>> );
>> m_critical_mutex.unlock();
>>
>> @@ -529,7 +530,8 @@
>> for( MtpMediaItem *it = dynamic_cast<MtpMediaItem*>(items-
>> >first());
>> it; it = dynamic_cast<MtpMediaItem*>(items->next()) )
>> album_object->tracks[i++] = it->track()->id();
>> album_object->no_tracks = items->count();
>> - ret = LIBMTP_Create_New_Album( m_device, album_object, 0 );
>> + album_object->parent_id = 0;
>> + ret = LIBMTP_Create_New_Album( m_device, album_object);
>> if( ret != 0 )
>> {
>> debug() << "creating album failed : " << ret << endl;
>> @@ -577,7 +579,7 @@
>> {
>> if( create )
>> {
>> - check_folder = createFolder( (*it).utf8() ,
>> parent_id );
>> + check_folder = createFolder( (*it).utf8() ,
>> parent_id);
>> if( check_folder == 0 )
>> {
>> m_critical_mutex.unlock();
>> @@ -608,7 +610,9 @@
>> {
>> debug() << "Creating new folder '" << name << "' as a child of
>> "<<
>> parent_id << endl;
>> char *name_copy = qstrdup( name );
>> - uint32_t new_folder_id = LIBMTP_Create_Folder( m_device,
>> name_copy,
>> parent_id );
>> + // XXX: storage_id not used anywhere, so pass in 0, but upstream
>> + // should revisit this.
>> + uint32_t new_folder_id = LIBMTP_Create_Folder( m_device,
>> name_copy,
>> parent_id, 0 );
>> delete(name_copy);
>> debug() << "New folder ID: " << new_folder_id << endl;
>> if( new_folder_id == 0 )
>> @@ -913,7 +917,8 @@
>> if( item->playlist()->id() == 0 )
>> {
>> debug() << "creating new playlist : " << metadata->name <<
>> endl;
>> - int ret = LIBMTP_Create_New_Playlist( m_device, metadata,
>> 0 );
>> + metadata->parent_id = 0;
>> + int ret = LIBMTP_Create_New_Playlist( m_device, metadata);
>> if( ret == 0 )
>> {
>> item->playlist()->setId( metadata->playlist_id );
>
>
> Mel,
>
> amaroK is one of my favorites. Any idea if/how soon your
> patch will be in ports? ---It's been awhile since my last
> portupgrade and I'd hate to break this one, especially!
I will test tomorrow, and commit straight after if it does not break
anything.
/mich
>
>
> gary
>
>
>>
>> _______________________________________________
>> freebsd-questions at freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
>> To unsubscribe, send any mail to "freebsd-questions-unsubscribe at freebsd.org
>> "
>
> --
> Gary Kline kline at thought.org http://www.thought.org Public
> Service Unix
> http://jottings.thought.org http://transfinite.thought.org
> The 2.17a release of Jottings: http://jottings.thought.org/
> index.php
More information about the freebsd-questions
mailing list