Dewb / monome-rack

VCV Rack plugin for monome Eurorack modules
GNU General Public License v2.0
225 stars 13 forks source link

build fail on Linux with latest source #27

Closed davephillips closed 6 years ago

davephillips commented 6 years ago

Linux Fedora 23 Rack 0.5 (source build)

Latest code fails here:

g++ -o plugin.so build/lib/base64/base64.cpp.o build/lib/oscpack/ip/IpEndpointName.cpp.o build/lib/oscpack/osc/OscOutboundPacketStream.cpp.o build/lib/oscpack/osc/OscPrintReceivedElements.cpp.o build/lib/oscpack/osc/OscTypes.cpp.o build/lib/oscpack/osc/OscReceivedElements.cpp.o build/lib/serialosc/SerialOsc.cpp.o build/src/plugin.cpp.o build/src/common/MonomeWidgets.cpp.o build/src/common/FirmwareManager.cpp.o build/src/common/monomemodulebase.cpp.o build/src/common/MonomeModuleBase.cpp.o build/src/common/monomewidgets.cpp.o build/src/common/firmwaremanager.cpp.o build/src/common/MonomeModuleBaseWidget.cpp.o build/src/whitewhale/WhiteWhaleWidget.cpp.o build/src/whitewhale/WhiteWhaleModule.cpp.o build/src/virtualgrid/VirtualGridModule.cpp.o build/src/virtualgrid/VirtualGridWidget.cpp.o build/src/earthsea/EarthseaModule.cpp.o build/src/earthsea/EarthseaWidget.cpp.o build/src/meadowphysics/MeadowphysicsModule.cpp.o build/src/meadowphysics/MeadowphysicsWidget.cpp.o build/src/common/GridConnection/SerialOscGridConnection.cpp.o build/src/common/GridConnection/VirtualGridConnection.cpp.o build/src/common/GridConnection/GridConnection.cpp.o build/lib/oscpack/ip/posix/NetworkingUtils.cpp.o build/lib/oscpack/ip/posix/UdpSocket.cpp.o -shared

build/src/common/MonomeModuleBase.cpp.o: In function rack::Module::fromJson(json_t*)': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeModuleBase.cpp:83: multiple definition ofMonomeModuleBase::buttonPressMessageReceived(MonomeDevice, int, int, bool)' build/src/common/monomemodulebase.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/monomemodulebase.cpp:83: first defined here build/src/common/MonomeModuleBase.cpp.o: In function rack::Module::~Module()': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeModuleBase.hpp:31: multiple definition ofnon-virtual thunk to MonomeModuleBase::buttonPressMessageReceived(MonomeDevice, int, int, bool)' build/src/common/monomemodulebase.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeModuleBase.hpp:31: first defined here build/src/common/MonomeModuleBase.cpp.o: In function rack::Module::~Module()': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeModuleBase.cpp:92: multiple definition ofMonomeModuleBase::readSerialMessages()' build/src/common/monomemodulebase.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/monomemodulebase.cpp:92: first defined here build/src/common/MonomeModuleBase.cpp.o: In function MonomeModuleBase::deviceRemoved(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeModuleBase.cpp:75: multiple definition ofMonomeModuleBase::deviceRemoved(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&)' build/src/common/monomemodulebase.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/monomemodulebase.cpp:75: first defined here build/src/common/MonomeModuleBase.cpp.o: In function `non-virtual thunk to MonomeModuleBase::deviceRemoved(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&)': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeModuleBase.hpp:30: multiple definition of non-virtual thunk to MonomeModuleBase::deviceRemoved(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)' build/src/common/monomemodulebase.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeModuleBase.hpp:30: first defined here build/src/common/MonomeModuleBase.cpp.o: In functionMonomeModuleBase::~MonomeModuleBase()': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeModuleBase.cpp:19: multiple definition of MonomeModuleBase::~MonomeModuleBase()' build/src/common/monomemodulebase.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/monomemodulebase.cpp:19: first defined here build/src/common/MonomeModuleBase.cpp.o: In functionMonomeModuleBase::~MonomeModuleBase()': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeModuleBase.cpp:19: multiple definition of MonomeModuleBase::~MonomeModuleBase()' build/src/common/monomemodulebase.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/monomemodulebase.cpp:19: first defined here build/src/common/MonomeModuleBase.cpp.o: In functionMonomeModuleBase::~MonomeModuleBase()': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeModuleBase.cpp:19: multiple definition of MonomeModuleBase::~MonomeModuleBase()' build/src/common/monomemodulebase.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/monomemodulebase.cpp:19: first defined here build/src/common/MonomeModuleBase.cpp.o: In functionMonomeModuleBase::toJson()': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeModuleBase.cpp:183: multiple definition of MonomeModuleBase::toJson()' build/src/common/monomemodulebase.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/monomemodulebase.cpp:183: first defined here build/src/common/MonomeModuleBase.cpp.o: In functionMonomeModuleBase::fromJson(json_t)': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeModuleBase.cpp:212: multiple definition of `MonomeModuleBase::fromJson(json_t)' build/src/common/monomemodulebase.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/monomemodulebase.cpp:212: first defined here build/src/common/MonomeModuleBase.cpp.o: In function MonomeModuleBase::setGridConnection(GridConnection*)': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeModuleBase.cpp:25: multiple definition ofMonomeModuleBase::setGridConnection(GridConnection)' build/src/common/monomemodulebase.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/monomemodulebase.cpp:25: first defined here build/src/common/MonomeModuleBase.cpp.o: In function `MonomeModuleBase::deviceFound(MonomeDevice const)': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeModuleBase.cpp:67: multiple definition of MonomeModuleBase::deviceFound(MonomeDevice const*)' build/src/common/monomemodulebase.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/monomemodulebase.cpp:67: first defined here build/src/common/MonomeModuleBase.cpp.o: In functionnon-virtual thunk to MonomeModuleBase::deviceFound(MonomeDevice const)': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeModuleBase.hpp:29: multiple definition of `non-virtual thunk to MonomeModuleBase::deviceFound(MonomeDevice const)' build/src/common/monomemodulebase.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeModuleBase.hpp:29: first defined here build/src/common/MonomeModuleBase.cpp.o: In function MonomeModuleBase::step()': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeModuleBase.cpp:145: multiple definition ofMonomeModuleBase::step()' build/src/common/monomemodulebase.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/monomemodulebase.cpp:145: first defined here build/src/common/MonomeModuleBase.cpp.o: In function MonomeModuleBase::MonomeModuleBase(int, int, int, int)': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeModuleBase.cpp:10: multiple definition ofMonomeModuleBase::MonomeModuleBase(int, int, int, int)' build/src/common/monomemodulebase.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/monomemodulebase.cpp:10: first defined here build/src/common/MonomeModuleBase.cpp.o: In function MonomeModuleBase::MonomeModuleBase(int, int, int, int)': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeModuleBase.cpp:10: multiple definition ofMonomeModuleBase::MonomeModuleBase(int, int, int, int)' build/src/common/monomemodulebase.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/monomemodulebase.cpp:10: first defined here build/src/common/monomewidgets.cpp.o: In function rack::TransparentWidget::onScroll(rack::EventScroll&)': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/monomewidgets.cpp:11: multiple definition ofUSBAJack::draw(NVGcontext)' build/src/common/MonomeWidgets.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeWidgets.cpp:11: first defined here build/src/common/monomewidgets.cpp.o: In function MonomeKnob::~MonomeKnob()': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeWidgets.hpp:12: multiple definition ofvirtual thunk to USBAJack::draw(NVGcontext)' build/src/common/MonomeWidgets.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeWidgets.hpp:12: first defined here build/src/common/monomewidgets.cpp.o: In function MonomeKnob::~MonomeKnob()': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/monomewidgets.cpp:5: multiple definition ofWhiteLight::WhiteLight()' build/src/common/MonomeWidgets.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeWidgets.cpp:5: first defined here build/src/common/monomewidgets.cpp.o: In function WhiteLight::WhiteLight()': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/monomewidgets.cpp:5: multiple definition ofWhiteLight::WhiteLight()' build/src/common/MonomeWidgets.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeWidgets.cpp:5: first defined here build/src/common/monomewidgets.cpp.o: In function MonomeKnob::MonomeKnob()': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/monomewidgets.cpp:23: multiple definition ofMonomeKnob::MonomeKnob()' build/src/common/MonomeWidgets.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeWidgets.cpp:23: first defined here build/src/common/monomewidgets.cpp.o: In function MonomeKnob::MonomeKnob()': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/monomewidgets.cpp:23: multiple definition ofMonomeKnob::MonomeKnob()' build/src/common/MonomeWidgets.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/MonomeWidgets.cpp:23: first defined here build/src/common/firmwaremanager.cpp.o: In function FirmwareManager::FirmwareManager()': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/firmwaremanager.cpp:110: multiple definition ofFirmwareManager::FirmwareManager()' build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:228: first defined here build/src/common/firmwaremanager.cpp.o: In function FirmwareManager::FirmwareManager()': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/firmwaremanager.cpp:110: multiple definition ofFirmwareManager::FirmwareManager()' build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:228: first defined here build/src/common/firmwaremanager.cpp.o: In function std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data(char*)': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/firmwaremanager.cpp:110: multiple definition ofFirmwareManager::~FirmwareManager()' build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:232: first defined here build/src/common/firmwaremanager.cpp.o: In function std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_data(char*)': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/firmwaremanager.cpp:110: multiple definition ofFirmwareManager::~FirmwareManager()' build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:232: first defined here build/src/common/firmwaremanager.cpp.o: In function FirmwareManager::init()': /usr/include/c++/5.3.1/bits/basic_string.h:131: multiple definition ofFirmwareManager::init()' build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:250: first defined here build/src/common/firmwaremanager.cpp.o: In function FirmwareManager::step()': /usr/include/c++/5.3.1/bits/basic_string.h:270: multiple definition ofFirmwareManager::step()' build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:258: first defined here build/src/common/firmwaremanager.cpp.o: In function FirmwareManager::getGPIO(unsigned int) const': build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:266: first defined here build/src/common/firmwaremanager.cpp.o: In functionFirmwareManager::setGPIO(unsigned int, bool)': /usr/include/c++/5.3.1/bits/basic_string.h:1029: multiple definition of FirmwareManager::setGPIO(unsigned int, bool)' build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:277: first defined here build/src/common/firmwaremanager.cpp.o: In functionFirmwareManager::getDAC(int)': /usr/include/c++/5.3.1/bits/basic_string.h:589: multiple definition of FirmwareManager::getDAC(int)' build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:286: first defined here build/src/common/firmwaremanager.cpp.o: In functionFirmwareManager::setADC(int, unsigned short)': /usr/include/c++/5.3.1/bits/basic_string.h:179: multiple definition of FirmwareManager::setADC(int, unsigned short)' build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:297: first defined here build/src/common/firmwaremanager.cpp.o: In functionFirmwareManager::serialConnectionChange(serial_bus_t, unsigned char, char const, char const, char const)': /usr/include/c++/5.3.1/bits/basic_string.h:109: multiple definition of `FirmwareManager::serialConnectionChange(serial_bus_t, unsigned char, char const, char const, char const)' build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:305: first defined here build/src/common/firmwaremanager.cpp.o: In function FirmwareManager::readSerial(serial_bus_t, unsigned char**, unsigned int*)': /usr/include/c++/5.3.1/bits/basic_string.tcc:221: multiple definition ofFirmwareManager::readSerial(serial_bus_t, unsigned char, unsigned int)' build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:313: first defined here build/src/common/firmwaremanager.cpp.o: In function `FirmwareManager::writeSerial(serial_bus_t, unsigned char, unsigned int)': /usr/include/c++/5.3.1/bits/char_traits.h:243: multiple definition of FirmwareManager::writeSerial(serial_bus_t, unsigned char*, unsigned int)' build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:326: first defined here build/src/common/firmwaremanager.cpp.o: In functionFirmwareManager::triggerInterrupt(int)': /usr/include/c++/5.3.1/bits/functional_hash.h:131: multiple definition of FirmwareManager::triggerInterrupt(int)' build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:335: first defined here build/src/common/firmwaremanager.cpp.o: In functionFirmwareManager::setClockPeriod(float)': /usr/include/c++/5.3.1/bits/hashtable_policy.h:446: multiple definition of FirmwareManager::setClockPeriod(float)' build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:343: first defined here build/src/common/firmwaremanager.cpp.o: In functionFirmwareManager::advanceClock(float)': /usr/include/c++/5.3.1/bits/hashtable.h:1427: multiple definition of FirmwareManager::advanceClock(float)' build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:351: first defined here build/src/common/firmwaremanager.cpp.o: In functionFirmwareManager::readNVRAM(void*, unsigned int)': /usr/include/c++/5.3.1/bits/hashtable_policy.h:1322: multiple definition of `FirmwareManager::readNVRAM(void, unsigned int)' build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:363: first defined here build/src/common/firmwaremanager.cpp.o: In function `FirmwareManager::writeNVRAM(void const, unsigned int)': /usr/include/c++/5.3.1/bits/hashtable.h:1436: multiple definition of FirmwareManager::writeNVRAM(void const*, unsigned int)' build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:371: first defined here build/src/common/firmwaremanager.cpp.o: In functionFirmwareManager::readVRAM(void, unsigned int*)': /usr/include/c++/5.3.1/bits/hashtable_policy.h:715: multiple definition of FirmwareManager::readVRAM(void**, unsigned int*)' build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:379: first defined here build/src/common/firmwaremanager.cpp.o: In functionFirmwareManager::writeVRAM(void const, unsigned int)': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/firmwaremanager.cpp:182: multiple definition of `FirmwareManager::writeVRAM(void const, unsigned int)' build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:387: first defined here build/src/common/firmwaremanager.cpp.o: In function FirmwareManager::FirmwareManager()': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/firmwaremanager.cpp:110: multiple definition ofFirmwareManagerImpl::alreadyLoadedPaths[abi:cxx11]' build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:228: first defined here build/src/common/firmwaremanager.cpp.o: In function FirmwareManager::load(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)': /home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/firmwaremanager.cpp:198: multiple definition ofFirmwareManager::load(std::cxx11::basic_string<char, std::char_traits, std::allocator >)' build/src/common/FirmwareManager.cpp.o:/home/dlphilp/src/Rack-050/plugins/monome-rack/src/common/FirmwareManager.cpp:238: first defined here build/src/common/FirmwareManager.cpp.o: In function `std::_Hashtable<std::cxx11::basic_string<char, std::char_traits, std::allocator >, std::cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::cxx11::basic_string<char, std::char_traits, std::allocator > >, std::detail::_Identity, std::equal_to<std::cxx11::basic_string<char, std::char_traits, std::allocator > >, std::hash<std::cxx11::basic_string<char, std::char_traits, std::allocator > >, std::__detail::_Mod_range_hashing, std::detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::detail::_Hashtable_traits<true, true, true> >::_M_insert_unique_node(unsigned long, unsigned long, std::detail::_Hash_node<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, true>)': /usr/include/c++/5.3.1/bits/hashtable.h:1594: warning: the use of tmpnam' is dangerous, better usemkstemp' collect2: error: ld returned 1 exit status ../../compile.mk:43: recipe for target 'plugin.so' failed make: [plugin.so] Error 1

Dewb commented 6 years ago

Looks like there were duplicate lowercase copies of some source files left over from the big renaming to standard C++ casing. Differing core.ignorecase settings across dev machines may be implicated, perhaps. I removed the bogus files and compilation works now on Ubuntu 16.04 for me. Thanks for the report!

davephillips commented 6 years ago

You rock, it's all good again. :)