WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: Request: upmpdcli for piCore 7.0  (Read 3663 times)

Offline Sebster

  • Newbie
  • *
  • Posts: 17
Request: upmpdcli for piCore 7.0
« on: November 15, 2016, 09:42:11 AM »
Hello !

Still trying to build upmpdcli myself as a UPnP Media Renderer front-end for MPD.
Because I still don't have any luck with it, I wanted to request it here as the last, final step...

I hope bmarkus or someone else of the extremely talented people in this forum can build it. I got so much help here already that I just can say it's awesome to have such a active forum to take use of, especially as a TC-newbie as I am...

I'm using piCoreLinux 7.0 atm if this is important.

Links:
Overview: https://www.lesbonscomptes.com/upmpdcli/
Building information: https://www.lesbonscomptes.com/upmpdcli/upmpdcli.html

I think  there will be also the libaries libupnp version 1.6, libcurl, libmpdclient, and libexpat, that need to be build for this tcz.(Thats the point I'm stuck right now btw).
 
Cheers!

Sebastian
 
« Last Edit: November 15, 2016, 09:44:20 AM by Sebster »

Offline Rich

  • Administrator
  • Hero Member
  • *****
  • Posts: 11519
Re: Request: upmpdcli for piCore 7.0
« Reply #1 on: November 15, 2016, 11:01:43 AM »
Hi Sebster
I think  there will be also the libaries libupnp version 1.6, libcurl, libmpdclient, and libexpat, that need to be build for this tcz.(Thats the point I'm stuck right now btw).

You'll want to install  curl-dev.tcz, libmpdclient-dev.tcz, and expat2-dev.tcz. For libupnp version 1.6 the build instructions
from https://www.lesbonscomptes.com/upmpdcli/upmpdcli.html#upmpdcli.building state:

Quote
The libupnpp library, which used to be part of upmpdcli, has been separated, and you need to build it first.

So you need to either clone two github repositories: https://github.com/medoc92/libupnpp and https://github.com/medoc92/upmpdcli, or download the release tar files from the the download area
The  "download area"  for the tar files is https://www.lesbonscomptes.com/upmpdcli/downloads.html

Offline Sebster

  • Newbie
  • *
  • Posts: 17
Re: Request: upmpdcli for piCore 7.0
« Reply #2 on: November 16, 2016, 01:19:38 PM »
Hello Rich!

Thanks, I made some progress again thanks to you!

I got that far, that the upnpdcli needs jsoncpp.
I followed the intructions https://github.com/open-source-parsers/jsoncpp/blob/master/README.md to build jsoncpp by myself:

Code: [Select]
mkdir -p build/debug
cd build/debug
cmake -DCMAKE_BUILD_TYPE=debug -DBUILD_STATIC_LIBS=ON -DBUILD_SHARED_LIBS=OFF -DARCHIVE_INSTALL_DIR=. -G "Unix Makefiles" ../..
make


But I am not succesfull. After hitting make I got the following error and I can't figure out what to do...

Code: [Select]

root@box:/home/tc/jsoncpp# make
/tmp/tcloop/cmake/usr/local/bin/cmake -H/home/tc/jsoncpp -B/home/tc/jsoncpp --check-build-system CMakeFiles/Makefile.cmake 0
/tmp/tcloop/cmake/usr/local/bin/cmake -E cmake_progress_start /home/tc/jsoncpp/CMakeFiles /home/tc/jsoncpp/CMakeFiles/progress.marks
make -f CMakeFiles/Makefile2 all
make[1]: Entering directory '/home/tc/jsoncpp'
make -f src/lib_json/CMakeFiles/jsoncpp_lib_static.dir/build.make src/lib_json/CMakeFiles/jsoncpp_lib_static.dir/depend
make[2]: Entering directory '/home/tc/jsoncpp'
cd /home/tc/jsoncpp && /tmp/tcloop/cmake/usr/local/bin/cmake -E cmake_depends "Unix Makefiles" /home/tc/jsoncpp /home/tc/jsoncpp/src/lib_json /home/tc/jsoncpp /home/tc/jsoncpp/src/lib_json /home/tc/jsoncpp/src/lib_json/CMakeFiles/jsoncpp_lib_static.dir/DependInfo.cmake --color=
make[2]: Leaving directory '/home/tc/jsoncpp'
make -f src/lib_json/CMakeFiles/jsoncpp_lib_static.dir/build.make src/lib_json/CMakeFiles/jsoncpp_lib_static.dir/build
make[2]: Entering directory '/home/tc/jsoncpp'
make[2]: Nothing to be done for 'src/lib_json/CMakeFiles/jsoncpp_lib_static.dir/build'.
make[2]: Leaving directory '/home/tc/jsoncpp'
[ 44%] Built target jsoncpp_lib_static
make -f src/jsontestrunner/CMakeFiles/jsontestrunner_exe.dir/build.make src/jsontestrunner/CMakeFiles/jsontestrunner_exe.dir/depend
make[2]: Entering directory '/home/tc/jsoncpp'
cd /home/tc/jsoncpp && /tmp/tcloop/cmake/usr/local/bin/cmake -E cmake_depends "Unix Makefiles" /home/tc/jsoncpp /home/tc/jsoncpp/src/jsontestrunner /home/tc/jsoncpp /home/tc/jsoncpp/src/jsontestrunner /home/tc/jsoncpp/src/jsontestrunner/CMakeFiles/jsontestrunner_exe.dir/DependInfo.cmake --color=
make[2]: Leaving directory '/home/tc/jsoncpp'
make -f src/jsontestrunner/CMakeFiles/jsontestrunner_exe.dir/build.make src/jsontestrunner/CMakeFiles/jsontestrunner_exe.dir/build
make[2]: Entering directory '/home/tc/jsoncpp'
make[2]: Nothing to be done for 'src/jsontestrunner/CMakeFiles/jsontestrunner_exe.dir/build'.
make[2]: Leaving directory '/home/tc/jsoncpp'
[ 66%] Built target jsontestrunner_exe
make -f src/test_lib_json/CMakeFiles/jsoncpp_test.dir/build.make src/test_lib_json/CMakeFiles/jsoncpp_test.dir/depend
make[2]: Entering directory '/home/tc/jsoncpp'
cd /home/tc/jsoncpp && /tmp/tcloop/cmake/usr/local/bin/cmake -E cmake_depends "Unix Makefiles" /home/tc/jsoncpp /home/tc/jsoncpp/src/test_lib_json /home/tc/jsoncpp /home/tc/jsoncpp/src/test_lib_json /home/tc/jsoncpp/src/test_lib_json/CMakeFiles/jsoncpp_test.dir/DependInfo.cmake --color=
make[2]: Leaving directory '/home/tc/jsoncpp'
make -f src/test_lib_json/CMakeFiles/jsoncpp_test.dir/build.make src/test_lib_json/CMakeFiles/jsoncpp_test.dir/build
make[2]: Entering directory '/home/tc/jsoncpp'
[ 77%] Linking CXX executable jsoncpp_test
cd /home/tc/jsoncpp/src/test_lib_json && /tmp/tcloop/cmake/usr/local/bin/cmake -E cmake_link_script CMakeFiles/jsoncpp_test.dir/link.txt --verbose=1
/usr/local/bin/c++    -std=c++11 -Wall -Wconversion -Wshadow -Wextra -Werror=conversion -pedantic -g   CMakeFiles/jsoncpp_test.dir/jsontest.cpp.o CMakeFiles/jsoncpp_test.dir/main.cpp.o  -o jsoncpp_test -rdynamic ../lib_json/libjsoncpp.a
cd /home/tc/jsoncpp/src/test_lib_json && ./jsoncpp_test
Testing ValueTest/checkNormalizeFloatingPointStr: OK
Testing ValueTest/memberCount: OK
Testing ValueTest/objects: OK
Testing ValueTest/arrays: OK
Testing ValueTest/arrayIssue252: OK
Testing ValueTest/null: OK
Testing ValueTest/strings: OK
Testing ValueTest/bools: OK
Testing ValueTest/integers: OK
Testing ValueTest/nonIntegers: OK
Testing ValueTest/compareNull: OK
Testing ValueTest/compareInt: OK
Testing ValueTest/compareUInt: OK
Testing ValueTest/compareDouble: OK
Testing ValueTest/compareString: OK
Testing ValueTest/compareBoolean: OK
Testing ValueTest/compareArray: OK
Testing ValueTest/compareObject: OK
Testing ValueTest/compareType: OK
Testing ValueTest/offsetAccessors: OK
Testing ValueTest/typeChecksThrowExceptions: terminate called after throwing an instance of 'Json::LogicError'
Aborted
src/test_lib_json/CMakeFiles/jsoncpp_test.dir/build.make:124: recipe for target 'src/test_lib_json/jsoncpp_test' failed
make[2]: *** [src/test_lib_json/jsoncpp_test] Error 134
make[2]: *** Deleting file 'src/test_lib_json/jsoncpp_test'
make[2]: Leaving directory '/home/tc/jsoncpp'
CMakeFiles/Makefile2:289: recipe for target 'src/test_lib_json/CMakeFiles/jsoncpp_test.dir/all' failed
make[1]: *** [src/test_lib_json/CMakeFiles/jsoncpp_test.dir/all] Error 2
make[1]: Leaving directory '/home/tc/jsoncpp'
Makefile:141: recipe for target 'all' failed
make: *** [all] Error 2
root@box:/home/tc/jsoncpp#



Any ideas?
« Last Edit: November 16, 2016, 01:22:56 PM by Sebster »

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 14756
Re: Request: upmpdcli for piCore 7.0
« Reply #3 on: November 16, 2016, 11:58:17 PM »
I don't think it will help with your problem, but it would seem to make more sense to use the following:
Code: [Select]
cmake -DCMAKE_BUILD_TYPE=release -DBUILD_STATIC_LIBS=OFF -DBUILD_SHARED_LIBS=ON...

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 14756
Re: Request: upmpdcli for piCore 7.0
« Reply #4 on: November 17, 2016, 01:56:09 AM »
I just did a test using jsoncpp-1.7.7 from the releases section of the github site - albeit using corepure64 rather than Pi:
Code: [Select]
$ mkdir build
$ cd build
$ cmake -DCMAKE_C_FLAGS="-mtune=generic -Os -pipe" -DCMAKE_CXX_FLAGS="-mtune=generic -Os -pipe" -D
CMAKE_INSTALL_PREFIX=/usr/local -DENABLE_STATIC=OFF -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=release ../
$ make
...
[ 92%] Building CXX object src/test_lib_json/CMakeFiles/jsoncpp_test.dir/main.cpp.o
[100%] Linking CXX executable jsoncpp_test
Testing ValueTest/checkNormalizeFloatingPointStr: OK
Testing ValueTest/memberCount: OK
...
Testing RValueTest/moveConstruction: OK
All 57 tests passed
[100%] Built target jsoncpp_test

You'd need to swap the Pi tinycore standard build flags for the corepure64 ones, but I don't see why it wouldn't work.

Offline bzfrp

  • Newbie
  • *
  • Posts: 15
Re: Request: upmpdcli for piCore 7.0
« Reply #5 on: October 15, 2017, 03:59:18 AM »
Thanks Juanito for the help on compiling jsoncpp.
I was able to install the latest version of upmpdcli on piCore 9.0.3 (tcz and note ).