Open thibaudk opened 6 years ago
yep, the version of the libossia submodule doesn't support boost 1.67. If you want a quick fix, download/install the v1.65 or 1.66, as it might take a while for me to solve this, because updating the libossia submodule could introduce a lot of cxx17-related problems in supercollider
that fixes it for me, if you could try on your setup !
Ok, i fnaly got around to testing again.
This builds but the resulting app's interpreter crashes on startup.
Trying to build on Ubuntu 18.04 also returns the following error related to boost:
[ 3%] Built target hidapi_parser
[ 3%] Building CXX object server/plugins/CMakeFiles/ML_UGens.dir/Onsets.cpp.o
[ 3%] Building CXX object server/plugins/CMakeFiles/PV_ThirdParty.dir/FeatureDetection.cpp.o
[ 3%] Building C object server/plugins/CMakeFiles/ML_UGens.dir/onsetsds.c.o
[ 3%] Linking CXX shared module UIUGens.so
Scanning dependencies of target DynNoiseUGens
[ 3%] Building CXX object server/plugins/CMakeFiles/DynNoiseUGens.dir/DynNoiseUGens.cpp.o
[ 3%] Building CXX object server/plugins/CMakeFiles/ML_UGens.dir/KeyTrack.cpp.o
[ 3%] Built target UIUGens
[ 3%] Building CXX object server/plugins/CMakeFiles/PV_ThirdParty.dir/PV_ThirdParty.cpp.o
Scanning dependencies of target PhysicalModelingUGens
[ 3%] Building CXX object server/plugins/CMakeFiles/PhysicalModelingUGens.dir/PhysicalModelingUGens.cpp.o
Scanning dependencies of target UnaryOpUGens
[ 3%] Building CXX object server/plugins/CMakeFiles/UnaryOpUGens.dir/UnaryOpUGens.cpp.o
Scanning dependencies of target DemandUGens
[ 3%] Building CXX object server/plugins/CMakeFiles/DemandUGens.dir/DemandUGens.cpp.o
[ 4%] Building CXX object server/plugins/CMakeFiles/ML_UGens.dir/MFCC.cpp.o
[ 5%] Linking CXX shared module PV_ThirdParty.so
[ 5%] Linking CXX shared module DynNoiseUGens.so
[ 5%] Linking CXX shared module PhysicalModelingUGens.so
[ 5%] Built target PV_ThirdParty
Scanning dependencies of target GrainUGens
[ 5%] Building CXX object server/plugins/CMakeFiles/GrainUGens.dir/GrainUGens.cpp.o
[ 5%] Built target DynNoiseUGens
[ 5%] Built target PhysicalModelingUGens
In file included from /home/scrime/Documents/dev/ossia-supercollider/submodules/supercollider/server/plugins/DiskIO_UGens.cpp:35:0:
/home/scrime/Documents/dev/ossia-supercollider/dependencies/boost/include/boost/lockfree/spsc_queue.hpp: In member function ‘ConstIterator boost::lockfree::detail::ringbuffer_base
After a good bit of tweeking on Ubuntu 18.04, building libossia with boost _1_67_0 and supercollider with boost_1_65_1 produces the following lincking error
[100%] Linking CXX executable sclang
libsclang.a(PyrStringPrim.cpp.o) : Dans la fonction « boost::re_detail_106700::perl_matcher<char const*, std::allocator<boost::sub_match<char const*> >, boost::regex_traits<char, boost::cpp_regex_traits<char> > >::unwind_extra_block(bool) » :
PyrStringPrim.cpp:(.text._ZN5boost16re_detail_10670012perl_matcherIPKcSaINS_9sub_matchIS3_EEENS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEE18unwind_extra_blockEb[_ZN5boost16re_detail_10670012perl_matcherIPKcSaINS_9sub_matchIS3_EEENS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEE18unwind_extra_blockEb]+0x22) : référence indéfinie vers « boost::re_detail_106700::put_mem_block(void*) »
libsclang.a(PyrStringPrim.cpp.o) : Dans la fonction « char const* boost::re_detail_106700::re_is_set_member<char const*, char, boost::regex_traits<char, boost::cpp_regex_traits<char> >, unsigned int>(char const*, char const*, boost::re_detail_106700::re_set_long<unsigned int> const*, boost::re_detail_106700::regex_data<char, boost::regex_traits<char, boost::cpp_regex_traits<char> > > const&, bool) » :
PyrStringPrim.cpp:(.text._ZN5boost16re_detail_10670016re_is_set_memberIPKccNS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEjEET_S8_S8_PKNS0_11re_set_longIT2_EERKNS0_10regex_dataIT0_T1_EEb[_ZN5boost16re_detail_10670016re_is_set_memberIPKccNS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEjEET_S8_S8_PKNS0_11re_set_longIT2_EERKNS0_10regex_dataIT0_T1_EEb]+0x33c) : référence indéfinie vers « boost::re_detail_106700::cpp_regex_traits_implementation<char>::transform_primary[abi:cxx11](char const*, char const*) const »
PyrStringPrim.cpp:(.text._ZN5boost16re_detail_10670016re_is_set_memberIPKccNS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEjEET_S8_S8_PKNS0_11re_set_longIT2_EERKNS0_10regex_dataIT0_T1_EEb[_ZN5boost16re_detail_10670016re_is_set_memberIPKccNS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEjEET_S8_S8_PKNS0_11re_set_longIT2_EERKNS0_10regex_dataIT0_T1_EEb]+0x440) : référence indéfinie vers « boost::re_detail_106700::cpp_regex_traits_implementation<char>::transform[abi:cxx11](char const*, char const*) const »
libsclang.a(PyrStringPrim.cpp.o) : Dans la fonction « boost::re_detail_106700::perl_matcher<char const*, std::allocator<boost::sub_match<char const*> >, boost::regex_traits<char, boost::cpp_regex_traits<char> > >::find_imp() » :
PyrStringPrim.cpp:(.text._ZN5boost16re_detail_10670012perl_matcherIPKcSaINS_9sub_matchIS3_EEENS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEE8find_impEv[_ZN5boost16re_detail_10670012perl_matcherIPKcSaINS_9sub_matchIS3_EEENS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEE8find_impEv]+0xa) : référence indéfinie vers « boost::re_detail_106700::get_mem_block() »
PyrStringPrim.cpp:(.text._ZN5boost16re_detail_10670012perl_matcherIPKcSaINS_9sub_matchIS3_EEENS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEE8find_impEv[_ZN5boost16re_detail_10670012perl_matcherIPKcSaINS_9sub_matchIS3_EEENS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEE8find_impEv]+0x125) : référence indéfinie vers « boost::re_detail_106700::verify_options(unsigned int, boost::regex_constants::_match_flags) »
PyrStringPrim.cpp:(.text._ZN5boost16re_detail_10670012perl_matcherIPKcSaINS_9sub_matchIS3_EEENS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEE8find_impEv[_ZN5boost16re_detail_10670012perl_matcherIPKcSaINS_9sub_matchIS3_EEENS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEE8find_impEv]+0x16f) : référence indéfinie vers « boost::re_detail_106700::put_mem_block(void*) »
PyrStringPrim.cpp:(.text._ZN5boost16re_detail_10670012perl_matcherIPKcSaINS_9sub_matchIS3_EEENS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEE8find_impEv[_ZN5boost16re_detail_10670012perl_matcherIPKcSaINS_9sub_matchIS3_EEENS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEE8find_impEv]+0x2bd) : référence indéfinie vers « boost::re_detail_106700::put_mem_block(void*) »
libsclang.a(PyrStringPrim.cpp.o) : Dans la fonction « bool boost::regex_search<char const*, char, boost::regex_traits<char, boost::cpp_regex_traits<char> > >(char const*, char const*, boost::basic_regex<char, boost::regex_traits<char, boost::cpp_regex_traits<char> > > const&, boost::regex_constants::_match_flags) » :
PyrStringPrim.cpp:(.text._ZN5boost12regex_searchIPKccNS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEEEbT_S7_RKNS_11basic_regexIT0_T1_EENS_15regex_constants12_match_flagsE[_ZN5boost12regex_searchIPKccNS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEEEbT_S7_RKNS_11basic_regexIT0_T1_EENS_15regex_constants12_match_flagsE]+0x18a) : référence indéfinie vers « boost::re_detail_106700::perl_matcher<char const*, std::allocator<boost::sub_match<char const*> >, boost::regex_traits<char, boost::cpp_regex_traits<char> > >::construct_init(boost::basic_regex<char, boost::regex_traits<char, boost::cpp_regex_traits<char> > > const&, boost::regex_constants::_match_flags) »
libsclang.a(PyrStringPrim.cpp.o) : Dans la fonction « bool boost::regex_search<char const*, std::allocator<boost::sub_match<char const*> >, char, boost::regex_traits<char, boost::cpp_regex_traits<char> > >(char const*, char const*, boost::match_results<char const*, std::allocator<boost::sub_match<char const*> > >&, boost::basic_regex<char, boost::regex_traits<char, boost::cpp_regex_traits<char> > > const&, boost::regex_constants::_match_flags, char const*) » :
PyrStringPrim.cpp:(.text._ZN5boost12regex_searchIPKcSaINS_9sub_matchIS2_EEEcNS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEEEbT_SA_RNS_13match_resultsISA_T0_EERKNS_11basic_regexIT1_T2_EENS_15regex_constants12_match_flagsESA_[_ZN5boost12regex_searchIPKcSaINS_9sub_matchIS2_EEEcNS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEEEbT_SA_RNS_13match_resultsISA_T0_EERKNS_11basic_regexIT1_T2_EENS_15regex_constants12_match_flagsESA_]+0x115) : référence indéfinie vers « boost::re_detail_106700::perl_matcher<char const*, std::allocator<boost::sub_match<char const*> >, boost::regex_traits<char, boost::cpp_regex_traits<char> > >::construct_init(boost::basic_regex<char, boost::regex_traits<char, boost::cpp_regex_traits<char> > > const&, boost::regex_constants::_match_flags) »
libsclang.a(PyrStringPrim.cpp.o) : Dans la fonction « void boost::re_detail_106700::raise_error<boost::regex_traits_wrapper<boost::regex_traits<char, boost::cpp_regex_traits<char> > > >(boost::regex_traits_wrapper<boost::regex_traits<char, boost::cpp_regex_traits<char> > > const&, boost::regex_constants::error_type) » :
PyrStringPrim.cpp:(.text._ZN5boost16re_detail_10670011raise_errorINS_20regex_traits_wrapperINS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEEEEEvRKT_NS_15regex_constants10error_typeE[_ZN5boost16re_detail_10670011raise_errorINS_20regex_traits_wrapperINS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEEEEEvRKT_NS_15regex_constants10error_typeE]+0x6c) : référence indéfinie vers « boost::re_detail_106700::get_default_error_string(boost::regex_constants::error_type) »
PyrStringPrim.cpp:(.text._ZN5boost16re_detail_10670011raise_errorINS_20regex_traits_wrapperINS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEEEEEvRKT_NS_15regex_constants10error_typeE[_ZN5boost16re_detail_10670011raise_errorINS_20regex_traits_wrapperINS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEEEEEvRKT_NS_15regex_constants10error_typeE]+0xa0) : référence indéfinie vers « boost::re_detail_106700::raise_runtime_error(std::runtime_error const&) »
PyrStringPrim.cpp:(.text._ZN5boost16re_detail_10670011raise_errorINS_20regex_traits_wrapperINS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEEEEEvRKT_NS_15regex_constants10error_typeE[_ZN5boost16re_detail_10670011raise_errorINS_20regex_traits_wrapperINS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEEEEEvRKT_NS_15regex_constants10error_typeE]+0xf8) : référence indéfinie vers « boost::re_detail_106700::get_default_error_string(boost::regex_constants::error_type) »
libsclang.a(PyrStringPrim.cpp.o) : Dans la fonction « boost::re_detail_106700::perl_matcher<char const*, std::allocator<boost::sub_match<char const*> >, boost::regex_traits<char, boost::cpp_regex_traits<char> > >::extend_stack() » :
PyrStringPrim.cpp:(.text._ZN5boost16re_detail_10670012perl_matcherIPKcSaINS_9sub_matchIS3_EEENS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEE12extend_stackEv[_ZN5boost16re_detail_10670012perl_matcherIPKcSaINS_9sub_matchIS3_EEENS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEE12extend_stackEv]+0x2e) : référence indéfinie vers « boost::re_detail_106700::get_mem_block() »
collect2: error: ld returned 1 exit status
lang/CMakeFiles/sclang.dir/build.make:131: recipe for target 'lang/sclang' failed
make[2]: *** [lang/sclang] Error 1
CMakeFiles/Makefile2:3471: recipe for target 'lang/CMakeFiles/sclang.dir/all' failed
make[1]: *** [lang/CMakeFiles/sclang.dir/all] Error 2
Makefile:162: recipe for target 'all' failed
make: *** [all] Error 2
https://github.com/OSSIA/ossia-supercollider/blob/master/Ossia/Primitives/pyrossiaprim.cpp#L337 "getType" also had to be edited to "get_type"
oops didn't mean to close this
oh yeah, thanks, forgot to commit the get_type() change...