I'm having a compilation error with Yoshimi 1.3.2 in Ubuntu 12.04:
This is the compilation error observed, please note the warning messages observed before the mentioned error:
[ 30%] Building CXX object CMakeFiles/yoshimi.dir/Effects/DynamicFilter.cpp.o
[ 31%] Building CXX object CMakeFiles/yoshimi.dir/MusicIO/MusicClient.cpp.o
[ 31%] Building CXX object CMakeFiles/yoshimi.dir/MusicIO/MusicIO.cpp.o
[ 31%] Building CXX object CMakeFiles/yoshimi.dir/MusicIO/JackEngine.cpp.o
[ 32%] Building CXX object CMakeFiles/yoshimi.dir/MusicIO/AlsaEngine.cpp.o
[ 32%] Building CXX object CMakeFiles/yoshimi.dir/MusicIO/JackClient.cpp.o
[ 33%] Building CXX object CMakeFiles/yoshimi.dir/MusicIO/AlsaClient.cpp.o
[ 33%] Building CXX object CMakeFiles/yoshimi.dir/MusicIO/JackAlsaClient.cpp.o
[ 34%] Building CXX object CMakeFiles/yoshimi.dir/MusicIO/AlsaJackClient.cpp.o
[ 34%] Building CXX object CMakeFiles/yoshimi.dir/WidgetPDialUI.cxx.o
[ 35%] Building CXX object CMakeFiles/yoshimi.dir/PresetsUI.cxx.o
[ 35%] Building CXX object CMakeFiles/yoshimi.dir/EnvelopeUI.cxx.o
[ 36%] Building CXX object CMakeFiles/yoshimi.dir/LFOUI.cxx.o
[ 36%] Building CXX object CMakeFiles/yoshimi.dir/FilterUI.cxx.o
[ 37%] Building CXX object CMakeFiles/yoshimi.dir/VirKeyboardUI.cxx.o
[ 37%] Building CXX object CMakeFiles/yoshimi.dir/ConfigUI.cxx.o
/home/diego/Downloads/yoshimi/yoshimi-1.3.2/src/ConfigUI.cxx: In member function ‘void ConfigUI::cb_BankRootok_i(Fl_Return_Button, void)’:
/home/diego/Downloads/yoshimi/yoshimi-1.3.2/src/ConfigUI.cxx:393:34: warning: format not a string literal and no format arguments [-Wformat-security]
/home/diego/Downloads/yoshimi/yoshimi-1.3.2/src/ConfigUI.cxx: In member function ‘void ConfigUI::cb_bankchange_i(Fl_Choice, void)’:
/home/diego/Downloads/yoshimi/yoshimi-1.3.2/src/ConfigUI.cxx:460:30: warning: format not a string literal and no format arguments [-Wformat-security]
/home/diego/Downloads/yoshimi/yoshimi-1.3.2/src/ConfigUI.cxx: In member function ‘void ConfigUI::cb_EPCok_i(Fl_Return_Button, void)’:
/home/diego/Downloads/yoshimi/yoshimi-1.3.2/src/ConfigUI.cxx:510:34: warning: format not a string literal and no format arguments [-Wformat-security]
[ 37%] Building CXX object CMakeFiles/yoshimi.dir/SUBnoteUI.cxx.o
[ 38%] Building CXX object CMakeFiles/yoshimi.dir/ResonanceUI.cxx.o
[ 38%] Building CXX object CMakeFiles/yoshimi.dir/OscilGenUI.cxx.o
[ 39%] Building CXX object CMakeFiles/yoshimi.dir/ADnoteUI.cxx.o
[ 39%] Building CXX object CMakeFiles/yoshimi.dir/PADnoteUI.cxx.o
[ 40%] Building CXX object CMakeFiles/yoshimi.dir/EffUI.cxx.o
[ 40%] Building CXX object CMakeFiles/yoshimi.dir/BankUI.cxx.o
[ 41%] Building CXX object CMakeFiles/yoshimi.dir/PartUI.cxx.o
[ 41%] Building CXX object CMakeFiles/yoshimi.dir/MicrotonalUI.cxx.o
[ 42%] Building CXX object CMakeFiles/yoshimi.dir/MasterUI.cxx.o
[ 42%] Building CXX object CMakeFiles/yoshimi.dir/MasterMiscUI.cxx.o
[ 43%] Building CXX object CMakeFiles/yoshimi.dir/ParametersUI.cxx.o
[ 43%] Building CXX object CMakeFiles/yoshimi.dir/ConsoleUI.cxx.o
[ 44%] Building CXX object CMakeFiles/yoshimi.dir/main.cpp.o
/home/diego/Downloads/yoshimi/yoshimi-1.3.2/src/main.cpp: In function ‘void mainGuiThread(void)’:
/home/diego/Downloads/yoshimi/yoshimi-1.3.2/src/main.cpp:103:84: error: no matching function for call to ‘Fl_PNG_Image::Fl_PNG_Image(const char [17], const unsigned char [152311], long unsigned int)’
/home/diego/Downloads/yoshimi/yoshimi-1.3.2/src/main.cpp:103:84: note: candidates are:
/usr/include/FL/Fl_PNG_Image.H:36:3: note: Fl_PNG_Image::Fl_PNG_Image(const char)
/usr/include/FL/Fl_PNG_Image.H:36:3: note: candidate expects 1 argument, 3 provided
/usr/include/FL/Fl_PNG_Image.H:32:17: note: Fl_PNG_Image::Fl_PNG_Image(const Fl_PNG_Image&)
/usr/include/FL/Fl_PNG_Image.H:32:17: note: candidate expects 1 argument, 3 provided
make[2]: [CMakeFiles/yoshimi.dir/main.cpp.o] Error 1
make[1]: [CMakeFiles/yoshimi.dir/all] Error 2
make: ** [all] Error 2
Thank you very much for your help.
Problem is caused by having FLTK version 1.1. This is quite old now, and upgrading to 1.3 resolves. However we will look to see if there is a practical work-round if anyone has no choice.
It's happening because fltk < 1.3 can't create png images from memory objects, only from files. I attached a patch that fixes it. It can be applied this way:
patch -p1 < 0001-Fix-for-fltk-1.3.patch
from yoshimi-1.3.2 directory
Fixed this in git master.
Regards,
Andrew