Closed npisanti closed 8 years ago
What are the errors? I'm not seeing any issues on OSX. Also, are you cleaning your project after updating the sources ie. make clean
?
Today i cloned the last repo, imported the midiInputExample
project with the oF 0.9.5 project generator, make clean
and then compiled, this is the output (i also pulled the same repo in my oF 0.9.3 folder and it it works at usual) :
Compiling midiInputExample for Release
make[1]: Entering directory '/home/nick/of_v0.9.5_linux64_release/addons/ofxMidi/midiInputExample'
HOST_OS=Linux
checking pkg-config libraries: cairo zlib gstreamer-app-1.0 gstreamer-1.0 gstreamer-video-1.0 gstreamer-base-1.0 libudev freetype2 fontconfig sndfile openal openssl glfw3 gl glu glew gtk+-3.0 libmpg123
Linking bin/midiInputExample for linux64
g++ -o bin/midiInputExample obj/linux64/Release/src/main.o obj/linux64/Release/src/ofApp.o /home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/src/ofxMidiIn.o /home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/src/ofxBaseMidi.o /home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/src/ofxMidi.o /home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/src/ofxMidiOut.o /home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/src/ofxMidiMessage.o /home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/src/desktop/ofxRtMidiOut.o /home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/src/desktop/ofxRtMidiIn.o /home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/libs/rtmidi/RtMidi.o /home/nick/of_v0.9.5_linux64_release/libs/openFrameworksCompiled/lib/linux64/libopenFrameworks.a -Wl,-rpath=./libs:./bin/libs -Wl,--as-needed -Wl,--gc-sections -L/home/nick/of_v0.9.5_linux64_release/libs/fmodex/lib/linux64/ -lfmodex /home/nick/of_v0.9.5_linux64_release/libs/glfw/lib/linux64/libglfw3.a /home/nick/of_v0.9.5_linux64_release/libs/kiss/lib/linux64/libkiss.a /home/nick/of_v0.9.5_linux64_release/libs/tess2/lib/linux64/libtess2.a /home/nick/of_v0.9.5_linux64_release/libs/poco/lib/linux64/libPocoNetSSL.a /home/nick/of_v0.9.5_linux64_release/libs/poco/lib/linux64/libPocoNet.a /home/nick/of_v0.9.5_linux64_release/libs/poco/lib/linux64/libPocoCrypto.a /home/nick/of_v0.9.5_linux64_release/libs/poco/lib/linux64/libPocoUtil.a /home/nick/of_v0.9.5_linux64_release/libs/poco/lib/linux64/libPocoJSON.a /home/nick/of_v0.9.5_linux64_release/libs/poco/lib/linux64/libPocoXML.a /home/nick/of_v0.9.5_linux64_release/libs/poco/lib/linux64/libPocoFoundation.a -L/usr/lib/x86_64-linux-gnu -lz -lgstapp-1.0 -lgstvideo-1.0 -lgstbase-1.0 -lgstreamer-1.0 -ludev -lfontconfig -lfreetype -lsndfile -lopenal -lssl -lcrypto -lglfw -lGLEW -lGLU -lGL -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lmpg123 -lglut -lX11 -lXrandr -lXxf86vm -lXi -lXcursor -ldl -lpthread -lfreeimage -lboost_filesystem -lboost_system -lXinerama -lrtaudio
/home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/libs/rtmidi/RtMidi.o: In function `MidiInAlsa::closePort()':
RtMidi.cpp:(.text+0x131): undefined reference to `snd_seq_unsubscribe_port'
RtMidi.cpp:(.text+0x13a): undefined reference to `snd_seq_port_subscribe_free'
RtMidi.cpp:(.text+0x158): undefined reference to `snd_seq_control_queue'
RtMidi.cpp:(.text+0x161): undefined reference to `snd_seq_drain_output'
/home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/libs/rtmidi/RtMidi.o: In function `MidiOutAlsa::closePort()':
RtMidi.cpp:(.text+0x216): undefined reference to `snd_seq_unsubscribe_port'
RtMidi.cpp:(.text+0x21f): undefined reference to `snd_seq_port_subscribe_free'
/home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/libs/rtmidi/RtMidi.o: In function `MidiOutAlsa::~MidiOutAlsa()':
RtMidi.cpp:(.text+0x256): undefined reference to `snd_seq_delete_port'
RtMidi.cpp:(.text+0x264): undefined reference to `snd_midi_event_free'
RtMidi.cpp:(.text+0x27b): undefined reference to `snd_seq_close'
RtMidi.cpp:(.text+0x2bd): undefined reference to `snd_seq_unsubscribe_port'
RtMidi.cpp:(.text+0x2c6): undefined reference to `snd_seq_port_subscribe_free'
/home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/libs/rtmidi/RtMidi.o: In function `MidiOutAlsa::~MidiOutAlsa()':
RtMidi.cpp:(.text+0x336): undefined reference to `snd_seq_delete_port'
RtMidi.cpp:(.text+0x344): undefined reference to `snd_midi_event_free'
RtMidi.cpp:(.text+0x35b): undefined reference to `snd_seq_close'
RtMidi.cpp:(.text+0x39d): undefined reference to `snd_seq_unsubscribe_port'
RtMidi.cpp:(.text+0x3a6): undefined reference to `snd_seq_port_subscribe_free'
/home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/libs/rtmidi/RtMidi.o: In function `MidiInAlsa::~MidiInAlsa()':
RtMidi.cpp:(.text+0x41a): undefined reference to `snd_seq_unsubscribe_port'
RtMidi.cpp:(.text+0x423): undefined reference to `snd_seq_port_subscribe_free'
RtMidi.cpp:(.text+0x441): undefined reference to `snd_seq_control_queue'
RtMidi.cpp:(.text+0x44a): undefined reference to `snd_seq_drain_output'
RtMidi.cpp:(.text+0x47c): undefined reference to `snd_seq_delete_port'
RtMidi.cpp:(.text+0x488): undefined reference to `snd_seq_free_queue'
RtMidi.cpp:(.text+0x491): undefined reference to `snd_seq_close'
/home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/libs/rtmidi/RtMidi.o: In function `MidiInAlsa::~MidiInAlsa()':
RtMidi.cpp:(.text+0x5fa): undefined reference to `snd_seq_unsubscribe_port'
RtMidi.cpp:(.text+0x603): undefined reference to `snd_seq_port_subscribe_free'
RtMidi.cpp:(.text+0x621): undefined reference to `snd_seq_control_queue'
RtMidi.cpp:(.text+0x62a): undefined reference to `snd_seq_drain_output'
RtMidi.cpp:(.text+0x65c): undefined reference to `snd_seq_delete_port'
RtMidi.cpp:(.text+0x668): undefined reference to `snd_seq_free_queue'
RtMidi.cpp:(.text+0x671): undefined reference to `snd_seq_close'
/home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/libs/rtmidi/RtMidi.o: In function `MidiInAlsa::initialize(std::string const&)':
RtMidi.cpp:(.text+0xb25): undefined reference to `snd_seq_open'
RtMidi.cpp:(.text+0xb39): undefined reference to `snd_seq_set_client_name'
RtMidi.cpp:(.text+0xba4): undefined reference to `snd_seq_alloc_named_queue'
RtMidi.cpp:(.text+0xbac): undefined reference to `snd_seq_queue_tempo_sizeof'
RtMidi.cpp:(.text+0xbbc): undefined reference to `snd_seq_queue_tempo_sizeof'
RtMidi.cpp:(.text+0xbdf): undefined reference to `snd_seq_queue_tempo_set_tempo'
RtMidi.cpp:(.text+0xbec): undefined reference to `snd_seq_queue_tempo_set_ppq'
RtMidi.cpp:(.text+0xbfa): undefined reference to `snd_seq_set_queue_tempo'
RtMidi.cpp:(.text+0xc02): undefined reference to `snd_seq_drain_output'
/home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/libs/rtmidi/RtMidi.o: In function `MidiInAlsa::openVirtualPort(std::string)':
RtMidi.cpp:(.text+0xd4f): undefined reference to `snd_seq_control_queue'
RtMidi.cpp:(.text+0xd57): undefined reference to `snd_seq_drain_output'
RtMidi.cpp:(.text+0xdb5): undefined reference to `snd_seq_unsubscribe_port'
RtMidi.cpp:(.text+0xdbe): undefined reference to `snd_seq_port_subscribe_free'
RtMidi.cpp:(.text+0xe34): undefined reference to `snd_seq_port_info_sizeof'
RtMidi.cpp:(.text+0xe44): undefined reference to `snd_seq_port_info_sizeof'
RtMidi.cpp:(.text+0xe67): undefined reference to `snd_seq_port_info_set_capability'
RtMidi.cpp:(.text+0xe74): undefined reference to `snd_seq_port_info_set_type'
RtMidi.cpp:(.text+0xe81): undefined reference to `snd_seq_port_info_set_midi_channels'
RtMidi.cpp:(.text+0xe8e): undefined reference to `snd_seq_port_info_set_timestamping'
RtMidi.cpp:(.text+0xe9b): undefined reference to `snd_seq_port_info_set_timestamp_real'
RtMidi.cpp:(.text+0xea6): undefined reference to `snd_seq_port_info_set_timestamp_queue'
RtMidi.cpp:(.text+0xeb1): undefined reference to `snd_seq_port_info_set_name'
RtMidi.cpp:(.text+0xebc): undefined reference to `snd_seq_create_port'
RtMidi.cpp:(.text+0xecb): undefined reference to `snd_seq_port_info_get_port'
/home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/libs/rtmidi/RtMidi.o: In function `MidiOutAlsa::initialize(std::string const&)':
RtMidi.cpp:(.text+0x1021): undefined reference to `snd_seq_open'
RtMidi.cpp:(.text+0x1036): undefined reference to `snd_seq_set_client_name'
RtMidi.cpp:(.text+0x107e): undefined reference to `snd_midi_event_new'
RtMidi.cpp:(.text+0x10a4): undefined reference to `snd_midi_event_init'
/home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/libs/rtmidi/RtMidi.o: In function `MidiOutAlsa::openVirtualPort(std::string)':
RtMidi.cpp:(.text+0x1245): undefined reference to `snd_seq_create_simple_port'
/home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/libs/rtmidi/RtMidi.o: In function `MidiOutAlsa::sendMessage(std::vector<unsigned char, std::allocator<unsigned char> >*)':
RtMidi.cpp:(.text+0x1334): undefined reference to `snd_midi_event_resize_buffer'
RtMidi.cpp:(.text+0x145e): undefined reference to `snd_midi_event_encode'
RtMidi.cpp:(.text+0x1471): undefined reference to `snd_seq_event_output'
RtMidi.cpp:(.text+0x1482): undefined reference to `snd_seq_drain_output'
/home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/libs/rtmidi/RtMidi.o: In function `portInfo(_snd_seq*, _snd_seq_port_info*, unsigned int, int)':
RtMidi.cpp:(.text+0x23e1): undefined reference to `snd_seq_client_info_sizeof'
RtMidi.cpp:(.text+0x23f1): undefined reference to `snd_seq_client_info_sizeof'
RtMidi.cpp:(.text+0x2414): undefined reference to `snd_seq_client_info_set_client'
RtMidi.cpp:(.text+0x2424): undefined reference to `snd_seq_client_info_get_client'
RtMidi.cpp:(.text+0x2433): undefined reference to `snd_seq_query_next_client'
RtMidi.cpp:(.text+0x2466): undefined reference to `snd_seq_port_info_set_client'
RtMidi.cpp:(.text+0x2473): undefined reference to `snd_seq_port_info_set_port'
RtMidi.cpp:(.text+0x2487): undefined reference to `snd_seq_query_next_port'
RtMidi.cpp:(.text+0x2493): undefined reference to `snd_seq_port_info_get_type'
RtMidi.cpp:(.text+0x24a2): undefined reference to `snd_seq_port_info_get_capability'
/home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/libs/rtmidi/RtMidi.o: In function `MidiInAlsa::getPortCount()':
RtMidi.cpp:(.text+0x24db): undefined reference to `snd_seq_port_info_sizeof'
RtMidi.cpp:(.text+0x24eb): undefined reference to `snd_seq_port_info_sizeof'
/home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/libs/rtmidi/RtMidi.o: In function `MidiOutAlsa::getPortCount()':
RtMidi.cpp:(.text+0x253b): undefined reference to `snd_seq_port_info_sizeof'
RtMidi.cpp:(.text+0x254b): undefined reference to `snd_seq_port_info_sizeof'
/home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/libs/rtmidi/RtMidi.o: In function `MidiOutAlsa::MidiOutAlsa(std::string)':
RtMidi.cpp:(.text+0x25dc): undefined reference to `snd_seq_open'
RtMidi.cpp:(.text+0x25f2): undefined reference to `snd_seq_set_client_name'
RtMidi.cpp:(.text+0x263b): undefined reference to `snd_midi_event_new'
RtMidi.cpp:(.text+0x2661): undefined reference to `snd_midi_event_init'
/home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/libs/rtmidi/RtMidi.o: In function `MidiInAlsa::openPort(unsigned int, std::string)':
RtMidi.cpp:(.text+0x2941): undefined reference to `snd_seq_port_info_sizeof'
RtMidi.cpp:(.text+0x2951): undefined reference to `snd_seq_port_info_sizeof'
RtMidi.cpp:(.text+0x2b34): undefined reference to `snd_seq_port_info_get_client'
RtMidi.cpp:(.text+0x2b42): undefined reference to `snd_seq_port_info_get_port'
RtMidi.cpp:(.text+0x2b50): undefined reference to `snd_seq_client_id'
RtMidi.cpp:(.text+0x2b5b): undefined reference to `snd_seq_port_info_sizeof'
RtMidi.cpp:(.text+0x2b75): undefined reference to `snd_seq_port_info_sizeof'
RtMidi.cpp:(.text+0x2de2): undefined reference to `snd_seq_control_queue'
RtMidi.cpp:(.text+0x2dea): undefined reference to `snd_seq_drain_output'
RtMidi.cpp:(.text+0x2e57): undefined reference to `snd_seq_unsubscribe_port'
RtMidi.cpp:(.text+0x2e60): undefined reference to `snd_seq_port_subscribe_free'
RtMidi.cpp:(.text+0x2fce): undefined reference to `snd_seq_port_info_set_client'
RtMidi.cpp:(.text+0x2fd8): undefined reference to `snd_seq_port_info_set_port'
RtMidi.cpp:(.text+0x2fe5): undefined reference to `snd_seq_port_info_set_capability'
RtMidi.cpp:(.text+0x2ff2): undefined reference to `snd_seq_port_info_set_type'
RtMidi.cpp:(.text+0x2fff): undefined reference to `snd_seq_port_info_set_midi_channels'
RtMidi.cpp:(.text+0x300c): undefined reference to `snd_seq_port_info_set_timestamping'
RtMidi.cpp:(.text+0x3019): undefined reference to `snd_seq_port_info_set_timestamp_real'
RtMidi.cpp:(.text+0x3025): undefined reference to `snd_seq_port_info_set_timestamp_queue'
RtMidi.cpp:(.text+0x3030): undefined reference to `snd_seq_port_info_set_name'
RtMidi.cpp:(.text+0x303b): undefined reference to `snd_seq_create_port'
RtMidi.cpp:(.text+0x304f): undefined reference to `snd_seq_port_info_get_port'
RtMidi.cpp:(.text+0x3157): undefined reference to `snd_seq_port_subscribe_malloc'
RtMidi.cpp:(.text+0x316f): undefined reference to `snd_seq_port_subscribe_set_sender'
RtMidi.cpp:(.text+0x317f): undefined reference to `snd_seq_port_subscribe_set_dest'
RtMidi.cpp:(.text+0x318b): undefined reference to `snd_seq_subscribe_port'
RtMidi.cpp:(.text+0x31a0): undefined reference to `snd_seq_port_subscribe_free'
/home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/libs/rtmidi/RtMidi.o: In function `MidiInAlsa::getPortName(unsigned int)':
RtMidi.cpp:(.text+0x3451): undefined reference to `snd_seq_client_info_sizeof'
RtMidi.cpp:(.text+0x3461): undefined reference to `snd_seq_client_info_sizeof'
RtMidi.cpp:(.text+0x347c): undefined reference to `snd_seq_port_info_sizeof'
RtMidi.cpp:(.text+0x348c): undefined reference to `snd_seq_port_info_sizeof'
RtMidi.cpp:(.text+0x34d3): undefined reference to `snd_seq_port_info_get_client'
RtMidi.cpp:(.text+0x34e0): undefined reference to `snd_seq_get_any_client_info'
RtMidi.cpp:(.text+0x35f2): undefined reference to `snd_seq_client_info_get_name'
RtMidi.cpp:(.text+0x362e): undefined reference to `snd_seq_port_info_get_client'
RtMidi.cpp:(.text+0x3652): undefined reference to `snd_seq_port_info_get_port'
/home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/libs/rtmidi/RtMidi.o: In function `MidiOutAlsa::getPortName(unsigned int)':
RtMidi.cpp:(.text+0x3c21): undefined reference to `snd_seq_client_info_sizeof'
RtMidi.cpp:(.text+0x3c31): undefined reference to `snd_seq_client_info_sizeof'
RtMidi.cpp:(.text+0x3c4c): undefined reference to `snd_seq_port_info_sizeof'
RtMidi.cpp:(.text+0x3c5c): undefined reference to `snd_seq_port_info_sizeof'
RtMidi.cpp:(.text+0x3ca3): undefined reference to `snd_seq_port_info_get_client'
RtMidi.cpp:(.text+0x3cb0): undefined reference to `snd_seq_get_any_client_info'
RtMidi.cpp:(.text+0x3dc2): undefined reference to `snd_seq_client_info_get_name'
RtMidi.cpp:(.text+0x3dfe): undefined reference to `snd_seq_port_info_get_client'
RtMidi.cpp:(.text+0x3e22): undefined reference to `snd_seq_port_info_get_port'
/home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/libs/rtmidi/RtMidi.o: In function `MidiOutAlsa::openPort(unsigned int, std::string)':
RtMidi.cpp:(.text+0x44a1): undefined reference to `snd_seq_port_info_sizeof'
RtMidi.cpp:(.text+0x44b1): undefined reference to `snd_seq_port_info_sizeof'
RtMidi.cpp:(.text+0x4694): undefined reference to `snd_seq_port_info_get_client'
RtMidi.cpp:(.text+0x46a2): undefined reference to `snd_seq_port_info_get_port'
RtMidi.cpp:(.text+0x46b1): undefined reference to `snd_seq_client_id'
RtMidi.cpp:(.text+0x46d4): undefined reference to `snd_seq_port_subscribe_malloc'
RtMidi.cpp:(.text+0x46ed): undefined reference to `snd_seq_port_subscribe_set_sender'
RtMidi.cpp:(.text+0x46fe): undefined reference to `snd_seq_port_subscribe_set_dest'
RtMidi.cpp:(.text+0x470d): undefined reference to `snd_seq_port_subscribe_set_time_update'
RtMidi.cpp:(.text+0x471c): undefined reference to `snd_seq_port_subscribe_set_time_real'
RtMidi.cpp:(.text+0x472a): undefined reference to `snd_seq_subscribe_port'
RtMidi.cpp:(.text+0x494a): undefined reference to `snd_seq_port_subscribe_free'
RtMidi.cpp:(.text+0x49e2): undefined reference to `snd_seq_create_simple_port'
RtMidi.cpp:(.text+0x4a59): undefined reference to `snd_seq_port_subscribe_free'
/home/nick/of_v0.9.5_linux64_release/addons/obj/linux64/Release/ofxMidi/libs/rtmidi/RtMidi.o: In function `alsaMidiHandler(void*)':
RtMidi.cpp:(.text+0x57a9): undefined reference to `snd_midi_event_new'
RtMidi.cpp:(.text+0x57d2): undefined reference to `snd_midi_event_init'
RtMidi.cpp:(.text+0x57e1): undefined reference to `snd_midi_event_no_status'
RtMidi.cpp:(.text+0x57ef): undefined reference to `snd_seq_poll_descriptors_count'
RtMidi.cpp:(.text+0x5825): undefined reference to `snd_seq_poll_descriptors'
RtMidi.cpp:(.text+0x5850): undefined reference to `snd_seq_event_input_pending'
RtMidi.cpp:(.text+0x58a7): undefined reference to `snd_midi_event_free'
RtMidi.cpp:(.text+0x58e9): undefined reference to `snd_seq_event_input'
RtMidi.cpp:(.text+0x5947): undefined reference to `snd_midi_event_decode'
RtMidi.cpp:(.text+0x5a04): undefined reference to `snd_seq_free_event'
RtMidi.cpp:(.text+0x5d4b): undefined reference to `snd_midi_event_free'
collect2: error: ld returned 1 exit status
/home/nick/of_v0.9.5_linux64_release/libs/openFrameworksCompiled/project/makefileCommon/compile.project.mk:382: recipe for target 'bin/midiInputExample' failed
make[1]: *** [bin/midiInputExample] Error 1
make[1]: Leaving directory '/home/nick/of_v0.9.5_linux64_release/addons/ofxMidi/midiInputExample'
/home/nick/of_v0.9.5_linux64_release/libs/openFrameworksCompiled/project/makefileCommon/compile.project.mk:125: recipe for target 'Release' failed
make: *** [Release] Error 2
it could be that something in the oF makefiles is giving me the linking errors? from the 0.9.5 changelog:
/ mk: fixes rtaudio in latest distributions
Looks like the project is not linking alsa since it seems that OF now no longer builds RtAudio from scratch if it's installed on the system. Try adding the the following under the linux64
target in addons_config.mk:
ADDON_PKG_CONFIG_LIBRARIES = alsa
Then make clean
and make
again...
now it works, thank you very much!
Hi, after updating oF to 0.9.5 ofxMidi gives me lots of undefined references when compiling. I've updated the RtMidi files to version 2.1.1 with the included script and now it compiles but it doens't find the ALSA or the JACK API, so the result is just having a non-working
MidiInDummy
class. I've tried manually defining__UNIX_JACK__
and__LINUX_ALSA__
inRtMidi.h
and it just give me back linking errors. It is strange as everything works fine in oF 0.9.3 ... any clues?