[Pianod] Make Fails on pianod2
Michael Himmelstein KB3NZQ
kb3nzq at gmail.com
Fri Dec 25 08:36:19 PST 2015
It built and finished at 2am I tried to get some sound out of it but it
didn't seam to run I was going to look into it today. If you want to look
into stuff with it I will gladly give you ssh access to it I have a host
name that resolves to my house so that I can Vpn.
On Friday, December 25, 2015, Perette Barella <perette at barella.org> wrote:
> Excellent! Thanks for the feedback.
>
> pianod doesn’t directly use pthreads library, but libav/ffmpeg does, and
> ffmpeg doesn’t correctly register its needs with pkg-config… grrr. Let me
> think on this, I’ll probably add a switch and check if building with
> ffmpeg/libav to the configure, to link pthreads.
>
> Meanwhile… I take it the build with gcc 4.9.2 is running? Did you have to
> make any code changes to get past compiler limitations?
>
> Perette
>
> --
> Perette Barella • perette at barella.org
> <javascript:_e(%7B%7D,'cvml','perette at barella.org');> • 585-286-1312
> 176 Middlesex Road, Rochester NY 14610
>
> On 2015年12月25日, at 0:55, Michael Himmelstein KB3NZQ <kb3nzq at gmail.com
> <javascript:_e(%7B%7D,'cvml','kb3nzq at gmail.com');>> wrote:
>
> fixed add -lpthread to the command and it worked
>
> On Fri, Dec 25, 2015 at 12:20 AM, Michael Himmelstein KB3NZQ <
> kb3nzq at gmail.com <javascript:_e(%7B%7D,'cvml','kb3nzq at gmail.com');>>
> wrote:
>
>> well i'm getting somewhere still have issues. here is the output
>>
>>
>>
>> make[3]: Entering directory '/home/pi/pianod2-171/src'
>> g++ -g -O2 -std=gnu++11 -o pianod user/pianod-datastore.o
>> user/pianod-user.o user/pianod-users.o user/pianod-ownership.o
>> user/pianod-usercommand.o songs/pianod-musictypes.o
>> songs/pianod-encapmusic.o songs/pianod-musiclibrary.o
>> songs/pianod-musiclibrarytypes.o songs/pianod-filter.o
>> songs/pianod-querylist.o mediaunits/pianod-mediaunit.o
>> mediaunits/pianod-mediasource.o mediaunits/pianod-mediaplayer.o
>> mediaunits/pianod-threadedmediaplayer.o mediaunits/pianod-mediaparameters.o
>> mediaunits/manager/pianod-managersource.o
>> mediaunits/manager/pianod-mediamanager.o
>> mediaunits/manager/pianod-managercommand.o pianod-connection.o
>> pianod-conductor.o pianod-engine.o pianod-enginecommand.o
>> pianod-predicate.o pianod-audiooptionsparser.o pianod-tuner.o
>> pianod-response.o pianod-servicemanager.o pianod-pianod.o
>> mediaunits/pandora/libpandoracommand.a mediaunits/pandora/libpandora.a
>> mediaunits/pandora/libpiano/libpiano.a
>> mediaunits/pandora/libwaitress/libwaitress.a
>> mediaunits/audio/libaudiooutput.a mediaunits/metadata/libmetadata.a
>> libfootball/libfootball.a common/libutility.a -ljson-c -lao -lavutil
>> -lavcodec -lavformat -lavfilter -lcrypt -lz -ljson-c -lgcrypt -lgnutls
>> -lavfilter -lavformat -lavcodec -lavutil
>> /usr/bin/ld: mediaunits/pianod-threadedmediaplayer.o: undefined reference
>> to symbol 'pthread_create@@GLIBC_2.4'
>> //lib/arm-linux-gnueabihf/libpthread.so.0: error adding symbols: DSO
>> missing from command line
>> collect2: error: ld returned 1 exit status
>> Makefile:634: recipe for target 'pianod' failed
>> make[3]: *** [pianod] Error 1
>> make[3]: Leaving directory '/home/pi/pianod2-171/src'
>> Makefile:1106: recipe for target 'all-recursive' failed
>> make[2]: *** [all-recursive] Error 1
>> make[2]: Leaving directory '/home/pi/pianod2-171/src'
>> Makefile:666: recipe for target 'all-recursive' failed
>> make[1]: *** [all-recursive] Error 1
>> make[1]: Leaving directory '/home/pi/pianod2-171'
>> Makefile:585: recipe for target 'all' failed
>> make: *** [all] Error 2
>>
>>
>> like i have stated im on a raspberry pi running raspbain jessie which is
>> debian 8
>> g++ is version 4.9.2 which is the highest I can get this is the most
>> recent image of raspbain and i updated it at first boot.
>>
>> Merry Christmas
>> Michael Himmelstein
>>
>> On Thu, Dec 24, 2015 at 5:26 PM, Michael Himmelstein KB3NZQ <
>> kb3nzq at gmail.com <javascript:_e(%7B%7D,'cvml','kb3nzq at gmail.com');>>
>> wrote:
>>
>>> are you building on a raspberry pi?
>>> i'm having issues getting this to build with raspbain wheezy and jessy
>>> i killed one card. I can't get gcc5 installed on either version. the
>>> best i can get is gcc 4.9
>>>
>>>
>>> On Thu, Dec 17, 2015 at 1:26 PM, Michael Himmelstein KB3NZQ <
>>> kb3nzq at gmail.com <javascript:_e(%7B%7D,'cvml','kb3nzq at gmail.com');>>
>>> wrote:
>>>
>>>> Sorry work has had me super busy haven't had a chance to try it will
>>>> try to work on it this weekend
>>>> On Dec 14, 2015 12:54 PM, "Michael Himmelstein KB3NZQ" <
>>>> kb3nzq at gmail.com <javascript:_e(%7B%7D,'cvml','kb3nzq at gmail.com');>>
>>>> wrote:
>>>>
>>>>> I'll try that tonight after work
>>>>> On Dec 12, 2015 5:28 PM, "Perette Barella" <perette at barella.org
>>>>> <javascript:_e(%7B%7D,'cvml','perette at barella.org');>> wrote:
>>>>>
>>>>>> make[3]: Entering directory
>>>>>> '/home/pi/pianod2setup/pianod2-164/src/common'
>>>>>> g++ -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../src/include
>>>>>> -D_GNU_SOURCE -DSYSCONFDIR='"/usr/local/etc"' -g -O2 -std=gnu++11 -MT
>>>>>> libutility_a-lookup.o -MD -MP -MF .deps/libutility_a-lookup.Tpo -c -o
>>>>>> libutility_a-lookup.o `test -f 'lookup.cpp' || echo './'`lookup.cpp
>>>>>>
>>>>>> In file included from lookup.cpp:16:0:
>>>>>> lookup.h:154:23: error: ‘RatingLookup::base_class {aka
>>>>>> LookupTable<rating_values_t, rating_lookup_t>}::LookupTable’ *names
>>>>>> constructor*
>>>>>>
>>>>>> Suggests compiler is missing constructor inheritance (C++11 feature).
>>>>>> -std=gnu++11 is in the compiler line, so likely older compiler.
>>>>>>
>>>>>> The below failure seems due to missing constructor noted above.
>>>>>>
>>>>>> lookup.cpp:41:34: error: no matching function for call to
>>>>>> ‘RatingLookup::RatingLookup(const RATING_LOOKUP [14])’
>>>>>> lookup.cpp:41:34: note: candidate is:
>>>>>> In file included from lookup.cpp:16:0:
>>>>>> lookup.h:151:7: note: constexpr RatingLookup::RatingLookup(const
>>>>>> RatingLookup&) *— signature of copy constructor*
>>>>>>
>>>>>> lookup.h:151:7: note: no known conversion for argument 1 from
>>>>>> ‘const RATING_LOOKUP [14] {aka const rating_lookup_t [14]}’ to ‘const
>>>>>> RatingLookup&’* — force to try a type conversion because the proper
>>>>>> constructor didn’t get inherited*
>>>>>>
>>>>>>
>>>>>>
>>>>>> LookupTable (const LookupTableType *tab) {
>>>>>> table = tab;
>>>>>> }
>>>>>>
>>>>>> Replace line lookup.h:151:
>>>>>> using base_class::LookupTable;
>>>>>> with:
>>>>>> RatingLookup (const RATING_LOOKUP *tab) : LookupTable (tab) { };
>>>>>>
>>>>>> If that fixes it, it confirms it’s constructor inheritance. I don’t
>>>>>> think there’s too many instances, so if there’s some good reason for not
>>>>>> just upgrading the compiler, and that’s the only older-compiler snag...I’m
>>>>>> willing to code around it. Still, I don’t want to jump through hoops in
>>>>>> code for backward combatability. Look into upgrading the compiler; if it’s
>>>>>> not reasonable, let me know what other stumbling blocks this older beast
>>>>>> poses.
>>>>>>
>>>>>> Perette
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Perette Barella • perette at barella.org
>>>>>> <javascript:_e(%7B%7D,'cvml','perette at barella.org');> • 585-286-1312
>>>>>> 176 Middlesex Road, Rochester NY 14610
>>>>>>
>>>>>> On 2015年12月12日, at 15:13, Perette Barella <perette at barella.org
>>>>>> <javascript:_e(%7B%7D,'cvml','perette at barella.org');>> wrote:
>>>>>>
>>>>>> A quick look suggests the compiler is choking on constructor
>>>>>> inheritance; if so, the workaround is to implement constructors in the
>>>>>> derived class; see
>>>>>> http://stackoverflow.com/questions/9979194/what-is-constructor-inheritance
>>>>>>
>>>>>> What version of g++?
>>>>>> g++ --version
>>>>>> I’m using G++ 5.2 and it’s been handling constructor inheritance. If
>>>>>> you’re on an older version perhaps it’s not there yet.
>>>>>>
>>>>>> I’ll take a more in-depth look and confirm the quick Dx when I’m not
>>>>>> pressed for time. Thanks for reporting this.
>>>>>>
>>>>>> Perette
>>>>>>
>>>>>> --
>>>>>> Perette Barella • perette at barella.org
>>>>>> <javascript:_e(%7B%7D,'cvml','perette at barella.org');> • 585-286-1312
>>>>>> 176 Middlesex Road, Rochester NY 14610
>>>>>>
>>>>>> On 2015年12月12日, at 14:58, Michael Himmelstein KB3NZQ <
>>>>>> kb3nzq at gmail.com <javascript:_e(%7B%7D,'cvml','kb3nzq at gmail.com');>>
>>>>>> wrote:
>>>>>>
>>>>>> trying to build pianod2 on raspberry pi and make keeps failing with
>>>>>> this
>>>>>>
>>>>>>
>>>>>> pi at Pianod2 ~/pianod2setup/pianod2-164 $ make
>>>>>> make all-recursive
>>>>>> make[1]: Entering directory '/home/pi/pianod2setup/pianod2-164'
>>>>>> Making all in src
>>>>>> make[2]: Entering directory '/home/pi/pianod2setup/pianod2-164/src'
>>>>>> Making all in include
>>>>>> make[3]: Entering directory
>>>>>> '/home/pi/pianod2setup/pianod2-164/src/include'
>>>>>> make[3]: Nothing to be done for 'all'.
>>>>>> make[3]: Leaving directory
>>>>>> '/home/pi/pianod2setup/pianod2-164/src/include'
>>>>>> Making all in common
>>>>>> make[3]: Entering directory
>>>>>> '/home/pi/pianod2setup/pianod2-164/src/common'
>>>>>> g++ -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../src/include
>>>>>> -D_GNU_SOURCE -DSYSCONFDIR='"/usr/local/etc"' -g -O2 -std=gnu++11 -MT
>>>>>> libutility_a-lookup.o -MD -MP -MF .deps/libutility_a-lookup.Tpo -c -o
>>>>>> libutility_a-lookup.o `test -f 'lookup.cpp' || echo './'`lookup.cpp
>>>>>> In file included from lookup.cpp:16:0:
>>>>>> lookup.h:154:23: error: ‘RatingLookup::base_class {aka
>>>>>> LookupTable<rating_values_t, rating_lookup_t>}::LookupTable’ names
>>>>>> constructor
>>>>>> lookup.cpp:41:34: error: no matching function for call to
>>>>>> ‘RatingLookup::RatingLookup(const RATING_LOOKUP [14])’
>>>>>> lookup.cpp:41:34: note: candidate is:
>>>>>> In file included from lookup.cpp:16:0:
>>>>>> lookup.h:151:7: note: constexpr RatingLookup::RatingLookup(const
>>>>>> RatingLookup&)
>>>>>> lookup.h:151:7: note: no known conversion for argument 1 from
>>>>>> ‘const RATING_LOOKUP [14] {aka const rating_lookup_t [14]}’ to ‘const
>>>>>> RatingLookup&’
>>>>>> Makefile:408: recipe for target 'libutility_a-lookup.o' failed
>>>>>> make[3]: *** [libutility_a-lookup.o] Error 1
>>>>>> make[3]: Leaving directory
>>>>>> '/home/pi/pianod2setup/pianod2-164/src/common'
>>>>>> Makefile:1090: recipe for target 'all-recursive' failed
>>>>>> make[2]: *** [all-recursive] Error 1
>>>>>> make[2]: Leaving directory '/home/pi/pianod2setup/pianod2-164/src'
>>>>>> Makefile:666: recipe for target 'all-recursive' failed
>>>>>> make[1]: *** [all-recursive] Error 1
>>>>>> make[1]: Leaving directory '/home/pi/pianod2setup/pianod2-164'
>>>>>> Makefile:585: recipe for target 'all' failed
>>>>>> make: *** [all] Error 2
>>>>>>
>>>>>>
>>>>>> configure runns fine but it will not make.
>>>>>>
>>>>>> Michael Himmelstein
>>>>>> _______________________________________________
>>>>>> Pianod mailing list
>>>>>> Pianod at lists.deviousfish.com
>>>>>> <javascript:_e(%7B%7D,'cvml','Pianod at lists.deviousfish.com');>
>>>>>> http://lists.deviousfish.com/listinfo.cgi/pianod-deviousfish.com
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Pianod mailing list
>>>>>> Pianod at lists.deviousfish.com
>>>>>> <javascript:_e(%7B%7D,'cvml','Pianod at lists.deviousfish.com');>
>>>>>> http://lists.deviousfish.com/listinfo.cgi/pianod-deviousfish.com
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Pianod mailing list
>>>>>> Pianod at lists.deviousfish.com
>>>>>> <javascript:_e(%7B%7D,'cvml','Pianod at lists.deviousfish.com');>
>>>>>> http://lists.deviousfish.com/listinfo.cgi/pianod-deviousfish.com
>>>>>>
>>>>>>
>>>
>>
> _______________________________________________
> Pianod mailing list
> Pianod at lists.deviousfish.com
> <javascript:_e(%7B%7D,'cvml','Pianod at lists.deviousfish.com');>
> http://lists.deviousfish.com/listinfo.cgi/pianod-deviousfish.com
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.deviousfish.com/pipermail/pianod-deviousfish.com/attachments/20151225/55f11cdf/attachment.htm>
More information about the Pianod
mailing list