[Pianod] (no subject)
Perette Barella
perette at barella.org
Wed Jun 26 05:55:48 PDT 2013
Hi Martin,
Thanks for the configure.log. Bugger this json library!
The issue is on some systems, the link parameter for json is -ljson, on others it's -ljson-c. I've added a fix so it checks for one, then the other if that's not found. Try the build in the Devel/pianod-json-json-c.tar.gz, let us know how that goes. If it works I'll check it into SVN.
Perette
On 2013年06月26日, at 6:37, Martin wrote:
> hi there,
>
> I'm trying to compile pianod, both on my arm- and x86-arch-linux (laptop).
>
> According to the Wiki, the dependencies needed on ArchLinuxArm are libao, libgcrypt, gnutls, json-c, faad2 and libmad, which I have installed.
>
> Additionaly, this is what pacman lists as installed packages regarding json:
> $ pacman -Qs json
> local/json-c 0.11-1
> A JSON implementation in C
> local/jsoncpp 0.5.0-4
> A JSON C++ library
> local/perl 5.18.0-1 (base)
> A highly capable, feature-rich programming language
> local/yajl 2.0.4-1
> Yet Another JSON Library.
>
> When I run ./configure it fails (I cut some stuff from the top):
> .....
> checking for gnutls... yes
> checking for ao... yes
> checking for mad... yes
> checking for json... yes
> checking for gcry_cipher_open in -lgcrypt... yes
> checking for gnutls_record_recv in -lgnutls... yes
> checking for json_object_new_string in -ljson... no
> configure: error: Cannot find required library: libjson (aka libjson0, json-c)
>
> locate libjson outputs the following:
> $ locate libjson
> /usr/lib/libjson-c.so
> /usr/lib/libjson-c.so.2
> /usr/lib/libjson-c.so.2.0.1
> /usr/lib/libjson.so
> /usr/lib/libjson.so.0
> /usr/lib/libjson.so.0.1.0
> /usr/lib32/libjson-c.so
> /usr/lib32/libjson-c.so.2
> /usr/lib32/libjson-c.so.2.0.1
> /usr/lib32/libjson.so
> /usr/lib32/libjson.so.0
> /usr/lib32/libjson.so.0.1.0
>
> config.log shows this about the error:
> ...
> configure:4886: checking for json_object_new_string in -ljson
> configure:4911: gcc -o conftest -g -O2 -std=c99 conftest.c -ljson -lgnutls -lgcrypt -lpthread -lm >&5
> /usr/bin/ld: /tmp/ccYsnkBX.o: undefined reference to symbol 'json_object_new_string'
> /usr/bin/ld: note: 'json_object_new_string' is defined in DSO /usr/lib/libjson-c.so.2 so try adding it to the linker command line
> /usr/lib/libjson-c.so.2: could not read symbols: Invalid operation
> collect2: error: ld returned 1 exit status
> configure:4911: $? = 1
> configure: failed program was:
> | /* confdefs.h */
> | #define PACKAGE_NAME "pianod"
> | #define PACKAGE_TARNAME "pianod"
> | #define PACKAGE_VERSION "147"
> | #define PACKAGE_STRING "pianod 147"
> | #define PACKAGE_BUGREPORT "pianod at lists.deviousfish.com"
> | #define PACKAGE_URL "http://deviousfish.com/pianod"
> | #define PACKAGE "pianod"
> | #define VERSION "147"
> | #define HAVE_LIBPTHREAD 1
> | #define HAVE_LIBGCRYPT 1
> | #define HAVE_LIBGNUTLS 1
> | /* end confdefs.h. */
> |
> | /* Override any GCC internal prototype to avoid an error.
> | Use char because int might match the return type of a GCC
> | builtin and then its argument prototype would still apply. */
> | #ifdef __cplusplus
> | extern "C"
> | #endif
> | char json_object_new_string ();
> | int
> | main ()
> | {
> | return json_object_new_string ();
> | ;
> | return 0;
> | }
> configure:4920: result: no
> configure:4930: error: Cannot find required library: libjson (aka libjson0, json-c)
>
> I've read in this mailing list about someone with the exact same problem, but he solved it by downloading and compiling the newest json-c, which didn't work for me.
>
> additional info:
> $ pkg-config --libs json
> -ljson-c
>
> any idea how to fix this?
> _______________________________________________
> Pianod mailing list
> 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/20130626/130d5dba/attachment-0003.htm>
More information about the Pianod
mailing list