Closed RealNobser closed 2 years ago
you probably tried to install from a zip download (or similar), not from a cloned repository. Currently the compilation requires the git version history and toolchain for compilation (installation of sub-modules, determination of version number). Solution: Download source code with
git clone https://github.com/gisogrimm/ov-client.git
cd ov-client
make
Ok, that's it. Now it starts the build! Thanks a lot.
But now I'm facing linker errors.
ld: library not found for -lcpprest
Can be fixed by adding
brew install cpprestsdk
to the preconditions. After that I'm hitting
ld: library not found for -lcrypto
Which cryptographic library is used here, respectively which brew packet do I have to add?
Please try building it with
./build_osx.sh
This should set some paths for cpprest and nlohmann/json libaries
OK, again, one step forward. But I guess we are getting some deeper problems now. Something is not compatible with the boost library.
First I get
In file included from src/receivermod_itu51.cc:1:
In file included from /usr/local/include/boost/geometry.hpp:17:
/usr/local/include/boost/geometry/geometry.hpp:28:1: warning: CAUTION: Define BOOST_GEOMETRY_DISABLE_DEPRECATED_03_WARNING to suppress this message.
[-W#pragma-messages]
BOOST_PRAGMA_MESSAGE("CAUTION: Define BOOST_GEOMETRY_DISABLE_DEPRECATED_03_WARNING to suppress this message.")
^
Which leads to a bunch of errors afterwards:
/Library/Developer/CommandLineTools/usr/bin/../include/c++/v1/type_traits:530:33: note: 'conditional' declared here
struct _LIBCPP_TEMPLATE_VIS conditional {typedef _If type;};
^
In file included from src/receivermod_itu51.cc:1:
In file included from /usr/local/include/boost/geometry.hpp:17:
In file included from /usr/local/include/boost/geometry/geometry.hpp:34:
In file included from /usr/local/include/boost/geometry/core/closure.hpp:24:
/usr/local/include/boost/geometry/core/ring_type.hpp:111:18: error: no template named 'conditional_t' in namespace 'std'; did you mean 'conditional'?
std::conditional_t
~~~~~^~~~~~~~~~~~~
conditional
and ends in
/usr/local/include/boost/geometry/core/coordinate_dimension.hpp:101:23: error: constexpr function's return type 'void' is not a literal type
constexpr inline void assert_dimension()
^
/usr/local/include/boost/geometry/core/coordinate_dimension.hpp:111:23: error: constexpr function's return type 'void' is not a literal type
constexpr inline void assert_dimension_less_equal()
^
/usr/local/include/boost/geometry/core/coordinate_dimension.hpp:117:23: error: constexpr function's return type 'void' is not a literal type
constexpr inline void assert_dimension_greater_equal()
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
2 warnings and 20 errors generated.
make[1]: *** [build/ovclienttascarreceiver_itu51.dylib] Error 1
make: *** [tscplug] Error 2
Maybe this helps:
c++ -v
Apple clang version 12.0.0 (clang-1200.0.32.29)
Target: x86_64-apple-darwin19.6.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
BTW: Thanks for the great support!
The MacOS build is still experimental, please switch to the development branch with
git checkout development
git pull
git submodule update
(the problem should be fixed there by deactivating the ITU 5.1 output plugin which is broken on MacOS, but that is not needed for headphone listening anyway)
I usually refer to the github actions file for building on macos: https://github.com/gisogrimm/ov-client/blob/703843a25f5d7e44b29835a7656ac16358d40dfa/.github/workflows/macos.yml#L16
But I updated the build_osx.sh script these days to compile even on an Apple Silicon M1.
But the boost compatibility issue is new to me -.-
ive used the boost lib provided by brew and it worked for me
It is a "virgin device", I've never worked with brew on that macbook, so I did it all step by step as written in the installation documentation.
OK, but, the good news, after installing two additional packages:
brew install nlohmann-json cmake
I finally got an executable file I can play around with, now! (using the development branch as told by Giso).
So if you want me to do some further tests or test new releases, feel free to contact me! I'll install the ovbox in parallel.
On MacOS you will probably need to start jack manually before starting ov-client, and in the device settings dialog of the web frontend (currently box.orlandoviols.com) switch your device to use a manually started jack server.
I was finally able to jam in one of your rooms. Great concept! Keep up the cool work!
Just to make the brew list complete: "node" package also is needed for the local mixer. But now anything works!
Thank you, I updated the installation instructions. In the github action we don't need node, because it is not needed for compilation, only at run-time.
Latest github actions document how to compile with make or cmake on MacOS
I tried to compile the most recent version of the OV-Client on MacOS (Catalina, 10.15.7) regarding the corresponding installation instructions. Installations of all preconditions worked fine.
Unfortunately I'm facing a compiler error when starting the make process in ov-client:
The libov folder is empty, indeed. Any advice?