Chargement...
 
[Voir/Cacher menus de gauche]
[Voir/Cacher menus de droite]

7 - Développer/traduire/documenter/annoncer une application

> Forums de discussion > 7 - Développer/traduire/documenter/annoncer une application > [RÉSOLU] azr3-jack ne compile plus sur Debian Stretch
Dernier post

[RÉSOLU] azr3-jack ne compile plus sur Debian Stretch

olinuxx utilisateur non connecté France
AZR3 n'est plus maintenu en amont. De ce fait, il ne compile plus sur Debian Stretch par exemple, et il a était retiré des dépôts Debian.

Si quelqu'un avec quelques notions de codage voulait le reprendre, ça serait un bon moment pour faire ça.

ycollet utilisateur non connecté France
Bonjour,

Je viens de trouver le soucis.
Conflit entre
std::bind
et
sigc::bind
..
J'ajoute un patch à ce message.

diff --git a/Makefile b/Makefile
index 5b9546e..23ed12a 100644
--- a/Makefile
+++ b/Makefile
@@ -32,7 +32,7 @@ azr3_SOURCES = \
 	drawbar.hpp drawbar.cpp \
 	textbox.hpp textbox.cpp
 azr3_SOURCEDIR = azr3
-azr3_CFLAGS = `pkg-config --cflags gtkmm-2.4 jack lash-1.0` -DDATADIR=\"$(pkgdatadir)\"
+azr3_CFLAGS = -O2 `pkg-config --cflags gtkmm-2.4 jack lash-1.0` -DDATADIR=\"$(pkgdatadir)\"
 azr3_LDFLAGS = `pkg-config --libs gtkmm-2.4 jack lash-1.0` -lpthread
 azr3_cpp_CFLAGS = $(shell if pkg-config --atleast-version=0.107 jack ; then echo -include azr3/newjack.hpp; fi)
 main_cpp_CFLAGS = -DPACKAGE_VERSION=\"$(PACKAGE_VERSION)\"
diff --git a/azr3/azr3gui.cpp b/azr3/azr3gui.cpp
index 7aa500b..7ea9fce 100644
--- a/azr3/azr3gui.cpp
+++ b/azr3/azr3gui.cpp
@@ -80,7 +80,7 @@ AZR3GUI::AZR3GUI()
     connect(mem_fun(*this, &AZR3GUI::splitpoint_changed));
   Menu* menu = create_menu();
   m_tbox->signal_button_press_event().
-    connect(bind(mem_fun(*this, &AZR3GUI::popup_menu), menu));
+    connect(sigc::bind(mem_fun(*this, &AZR3GUI::popup_menu), menu));
   
   // keyboard split switch
   m_splitswitch = add_switch(m_fbox, -1, 537, 49, Switch::Mini);
@@ -141,7 +141,7 @@ AZR3GUI::AZR3GUI()
   // mode switcher
   Widget* eb = add_clickbox(m_fbox, 14, 319, 14, 44);
   eb->signal_button_press_event().
-    connect(sigc::hide(bind(bind(mem_fun(*this, &AZR3GUI::change_mode), 
+    connect(sigc::hide(sigc::bind(sigc::bind(mem_fun(*this, &AZR3GUI::change_mode), 
 				 sigc::ref(m_fbox)), false)));
   m_fx_widgets.push_back(eb);
   
@@ -182,7 +182,7 @@ AZR3GUI::AZR3GUI()
   // mode switcher 2
   Widget* eb2 = add_clickbox(m_vbox, 14, 53, 14, 44);
   eb2->signal_button_press_event().
-    connect(sigc::hide(bind(bind(mem_fun(*this, &AZR3GUI::change_mode), 
+    connect(sigc::hide(sigc::bind(sigc::bind(mem_fun(*this, &AZR3GUI::change_mode), 
 				 sigc::ref(m_fbox)), true)));
 
   // vibrato controls
@@ -352,7 +352,7 @@ Knob* AZR3GUI::add_knob(Fixed& fbox, RefPtr<Pixmap>& pm, size_t port,
   knob->set_style(s);
   if (port < m_adj.size()) {
     knob->get_adjustment().signal_value_changed().
-      connect(compose(bind<0>(mem_fun(*this, &AZR3GUI::control_changed), port),
+      connect(compose(sigc::bind<0>(mem_fun(*this, &AZR3GUI::control_changed), port),
 		      mem_fun(knob->get_adjustment(), 
 			      &Adjustment::get_value)));
     assert(m_adj[port] == 0);
@@ -382,7 +382,7 @@ Drawbar* AZR3GUI::add_drawbar(Fixed& fbox, RefPtr<Pixmap>& pm, size_t port,
   db->set_style(s);
   if (port < m_adj.size()) {
     db->get_adjustment().signal_value_changed().
-      connect(compose(bind<0>(mem_fun(*this, &AZR3GUI::control_changed), port),
+      connect(compose(sigc::bind<0>(mem_fun(*this, &AZR3GUI::control_changed), port),
 		      mem_fun(db->get_adjustment(), &Adjustment::get_value)));
     assert(m_adj[port] == 0);
     m_adj[port] = &db->get_adjustment();
@@ -397,7 +397,7 @@ Switch* AZR3GUI::add_switch(Fixed& fbox, size_t port,
   fbox.put(*sw, xoffset, yoffset);
   if (port >= 0 && port < m_adj.size()) {
     sw->get_adjustment().signal_value_changed().
-      connect(compose(bind<0>(mem_fun(*this, &AZR3GUI::control_changed),port),
+      connect(compose(sigc::bind<0>(mem_fun(*this, &AZR3GUI::control_changed),port),
 		      mem_fun(sw->get_adjustment(), &Adjustment::get_value)));
     assert(m_adj[port] == 0);
     m_adj[port] = &sw->get_adjustment();
@@ -489,7 +489,7 @@ void AZR3GUI::update_program_menu() {
     oss<<setw(2)<<setfill('0')<<iter->first<<' '<<iter->second.substr(0, 23);
     MenuItem* item = manage(new MenuItem(oss.str()));
     item->signal_activate().
-      connect(bind(mem_fun(*this, &AZR3GUI::program_changed), iter->first));
+      connect(sigc::bind(mem_fun(*this, &AZR3GUI::program_changed), iter->first));
     m_program_menu->items().push_back(*item);
     item->show();
     item->get_child()->modify_bg(STATE_NORMAL, m_menu_bg);
@@ -503,7 +503,7 @@ void AZR3GUI::update_split_menu() {
   for (int i = 0; i < 128; ++i) {
     MenuItem* item = manage(new MenuItem(note2str(i)));
     item->signal_activate().
-      connect(bind(mem_fun(*m_splitpoint_adj, &Adjustment::set_value),
+      connect(sigc::bind(mem_fun(*m_splitpoint_adj, &Adjustment::set_value),
 		   i / 128.0));
     m_split_menu->items().push_back(*item);
     item->show();


olinuxx utilisateur non connecté France
Super ycollet, la compile progresse grâce à cette rustine.

Ceci dit, elle plante toujours avec un nouveau message :

make[1]: Entering directory '/build/azr3-jack-1.2.3'
Generating dependencies for azr3/azr3.cpp...Generating dependencies for azr3/main.cpp......
Generating dependencies for azr3/fx.cpp.....
Generating dependencies for azr3/optionparser.cpp.....
Generating dependencies for azr3/voice_classes.cpp.....
Generating dependencies for azr3/azr3gui.cpp.....
Generating dependencies for azr3/knob.cpp.....
Generating dependencies for azr3/switch.cpp.....
Generating dependencies for azr3/drawbar.cpp.....
Generating dependencies for azr3/textbox.cpp.....
.
Merging dependencies....
g++ -c -o azr3/main.o -g -O2 -fdebug-prefix-map=/build/azr3-jack-1.2.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/build/azr3-jack-1.2.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -O2 `pkg-config --cflags gtkmm-2.4 jack` -DDATADIR=\"/usr/share/azr3-jack\" -DPACKAGE_VERSION=\"1.2.3\" -O2 `pkg-config --cflags gtkmm-2.4 jack` -DDATADIR=\"/usr/share/azr3-jack\" azr3/main.cpp
g++ -c -o azr3/azr3.o -g -O2 -fdebug-prefix-map=/build/azr3-jack-1.2.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/build/azr3-jack-1.2.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -O2 `pkg-config --cflags gtkmm-2.4 jack` -DDATADIR=\"/usr/share/azr3-jack\" -include azr3/newjack.hpp -O2 `pkg-config --cflags gtkmm-2.4 jack` -DDATADIR=\"/usr/share/azr3-jack\" azr3/azr3.cpp
g++ -c -o azr3/fx.o -g -O2 -fdebug-prefix-map=/build/azr3-jack-1.2.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/build/azr3-jack-1.2.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -O2 `pkg-config --cflags gtkmm-2.4 jack` -DDATADIR=\"/usr/share/azr3-jack\"  -O2 `pkg-config --cflags gtkmm-2.4 jack` -DDATADIR=\"/usr/share/azr3-jack\" azr3/fx.cpp
g++ -c -o azr3/optionparser.o -g -O2 -fdebug-prefix-map=/build/azr3-jack-1.2.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/build/azr3-jack-1.2.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -O2 `pkg-config --cflags gtkmm-2.4 jack` -DDATADIR=\"/usr/share/azr3-jack\"  -O2 `pkg-config --cflags gtkmm-2.4 jack` -DDATADIR=\"/usr/share/azr3-jack\" azr3/optionparser.cpp
g++ -c -o azr3/voice_classes.o -g -O2 -fdebug-prefix-map=/build/azr3-jack-1.2.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/build/azr3-jack-1.2.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -O2 `pkg-config --cflags gtkmm-2.4 jack` -DDATADIR=\"/usr/share/azr3-jack\"  -O2 `pkg-config --cflags gtkmm-2.4 jack` -DDATADIR=\"/usr/share/azr3-jack\" azr3/voice_classes.cpp
g++ -c -o azr3/azr3gui.o -g -O2 -fdebug-prefix-map=/build/azr3-jack-1.2.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/build/azr3-jack-1.2.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -O2 `pkg-config --cflags gtkmm-2.4 jack` -DDATADIR=\"/usr/share/azr3-jack\"  -O2 `pkg-config --cflags gtkmm-2.4 jack` -DDATADIR=\"/usr/share/azr3-jack\" azr3/azr3gui.cpp
g++ -c -o azr3/knob.o -g -O2 -fdebug-prefix-map=/build/azr3-jack-1.2.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/build/azr3-jack-1.2.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -O2 `pkg-config --cflags gtkmm-2.4 jack` -DDATADIR=\"/usr/share/azr3-jack\"  -O2 `pkg-config --cflags gtkmm-2.4 jack` -DDATADIR=\"/usr/share/azr3-jack\" azr3/knob.cpp
azr3/azr3gui.cpp: In constructor 'AZR3GUI::AZR3GUI()':
azr3/azr3gui.cpp:145:16: error: call of overloaded 'ref(Gtk::Fixed&)' is ambiguous
      ref(m_fbox)), false)));
                ^
In file included from /usr/include/sigc++-2.0/sigc++/adaptors/bound_argument.h:24:0,
                 from /usr/include/sigc++-2.0/sigc++/adaptors/bind.h:6,
                 from /usr/include/sigc++-2.0/sigc++/adaptors/adaptors.h:23,
                 from /usr/include/sigc++-2.0/sigc++/sigc++.h:107,
                 from /usr/include/glibmm-2.4/glibmm/thread.h:50,
                 from /usr/include/glibmm-2.4/glibmm.h:89,
                 from /usr/include/gtkmm-2.4/gtkmm.h:87,
                 from azr3/azr3gui.cpp:26:
/usr/include/sigc++-2.0/sigc++/reference_wrapper.h:75:27: note: candidate: sigc::reference_wrapper<T_type> sigc::ref(T_type&) [with T_type = Gtk::Fixed]
 reference_wrapper<T_type> ref(T_type& v)
                           ^~~
/usr/include/sigc++-2.0/sigc++/reference_wrapper.h:91:33: note: candidate: sigc::const_reference_wrapper<T_type> sigc::ref(const T_type&) [with T_type = Gtk::Fixed]
 const_reference_wrapper<T_type> ref(const T_type& v)
                                 ^~~
In file included from /usr/include/sigc++-2.0/sigc++/reference_wrapper.h:22:0,
                 from /usr/include/sigc++-2.0/sigc++/adaptors/bound_argument.h:24,
                 from /usr/include/sigc++-2.0/sigc++/adaptors/bind.h:6,
                 from /usr/include/sigc++-2.0/sigc++/adaptors/adaptors.h:23,
                 from /usr/include/sigc++-2.0/sigc++/sigc++.h:107,
                 from /usr/include/glibmm-2.4/glibmm/thread.h:50,
                 from /usr/include/glibmm-2.4/glibmm.h:89,
                 from /usr/include/gtkmm-2.4/gtkmm.h:87,
                 from azr3/azr3gui.cpp:26:
/usr/include/c++/6/functional:473:5: note: candidate: std::reference_wrapper<_Tp> std::ref(_Tp&) [with _Tp = Gtk::Fixed]
     ref(_Tp& __t) noexcept
     ^~~
azr3/azr3gui.cpp:186:16: error: call of overloaded 'ref(Gtk::Fixed&)' is ambiguous
      ref(m_fbox)), true)));
                ^
In file included from /usr/include/sigc++-2.0/sigc++/adaptors/bound_argument.h:24:0,
                 from /usr/include/sigc++-2.0/sigc++/adaptors/bind.h:6,
                 from /usr/include/sigc++-2.0/sigc++/adaptors/adaptors.h:23,
                 from /usr/include/sigc++-2.0/sigc++/sigc++.h:107,
                 from /usr/include/glibmm-2.4/glibmm/thread.h:50,
                 from /usr/include/glibmm-2.4/glibmm.h:89,
                 from /usr/include/gtkmm-2.4/gtkmm.h:87,
                 from azr3/azr3gui.cpp:26:
/usr/include/sigc++-2.0/sigc++/reference_wrapper.h:75:27: note: candidate: sigc::reference_wrapper<T_type> sigc::ref(T_type&) [with T_type = Gtk::Fixed]
 reference_wrapper<T_type> ref(T_type& v)
                           ^~~
/usr/include/sigc++-2.0/sigc++/reference_wrapper.h:91:33: note: candidate: sigc::const_reference_wrapper<T_type> sigc::ref(const T_type&) [with T_type = Gtk::Fixed]
 const_reference_wrapper<T_type> ref(const T_type& v)
                                 ^~~
In file included from /usr/include/sigc++-2.0/sigc++/reference_wrapper.h:22:0,
                 from /usr/include/sigc++-2.0/sigc++/adaptors/bound_argument.h:24,
                 from /usr/include/sigc++-2.0/sigc++/adaptors/bind.h:6,
                 from /usr/include/sigc++-2.0/sigc++/adaptors/adaptors.h:23,
                 from /usr/include/sigc++-2.0/sigc++/sigc++.h:107,
                 from /usr/include/glibmm-2.4/glibmm/thread.h:50,
                 from /usr/include/glibmm-2.4/glibmm.h:89,
                 from /usr/include/gtkmm-2.4/gtkmm.h:87,
                 from azr3/azr3gui.cpp:26:
/usr/include/c++/6/functional:473:5: note: candidate: std::reference_wrapper<_Tp> std::ref(_Tp&) [with _Tp = Gtk::Fixed]
     ref(_Tp& __t) noexcept
     ^~~


ycollet utilisateur non connecté France
OK, chez moi, ça passe nickel.
Est-ce que tu peux me donner la version de gcc ? (gcc --version).
Est-ce que tu peux ajouter le flag -std=c++11 dans le Makefile ?
Il faut remplacer:
azr3_CFLAGS = -O2 `pkg-config --cflags gtkmm-2.4 jack lash-1.0` -DDATADIR=\"$(pkgdatadir)\"

par:
azr3_CFLAGS = -O2 -std=c++11 `pkg-config --cflags gtkmm-2.4 jack lash-1.0` -DDATADIR=\"$(pkgdatadir)\"


ycollet utilisateur non connecté France
L'autre possibilité: dans azr3/azr3gui.cpp, remplacer les
sigc::ref(

par
std::ref(


ycollet utilisateur non connecté France
J'ai fait un build avec les flags ajoutés par debian:
-fdebug-prefix-map=/build/azr3-jack-1.2.3=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2

Avec gcc-6.3.1 (sur Fedora), ça passe.

r1 utilisateur non connecté France
Hello,

Sur Ubuntu Xenial avec :
gcc (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609

Ça passe aussi (j'ai eu besoin d'installer liblash-compat-dev)

A+
Erwan

olinuxx utilisateur non connecté France
Merci ycollet. J'ai récupéré les sources de ton git, mis à jour les rustines du paquet debian, et ça fonctionne. Grâce à cela, azr3-jack sera présent dans la prochaine LibraZiK.

Lars Luthman n'est pas très actif, mais j'ai vu que ses derniers commits pour azr3 datent d'il y a un an. Peut être peux-tu lui faire parvenir tes rustines ou peut être l'as tu déjà fait ? Ça serait chouette qu'il relâche une version 1.2.4 incluant ces correctifs.

Encore merci pour l'aide !

ycollet utilisateur non connecté France
Je vais tenter le pull request. On vera si le patch est accepté ou pas.

ycollet utilisateur non connecté France
Bon, finalement, comme il n'est pas sur github, je lui ai envoyé un mail avec le patch.
A suivre ...

olinuxx utilisateur non connecté France
Croisons les doigts.

Afficher les articles :
Aller au forum :

Documentation [Afficher / Cacher]

Faire un don
[Afficher / Cacher]

Connexion
[Afficher / Cacher]



Mégaphone [Afficher / Cacher]

PascalC67, 15:21, dim. 26 Jun 2022: Merci Olinuxx :-)
olinuxx, 08:51, dim. 26 Jun 2022: Merci pour les retours Bluedid29 et PascalC67. Bonnes musiques à vous !
olinuxx, 08:51, dim. 26 Jun 2022: Bonjour et bienvenue à PascalC67 cool
PascalC67, 00:23, dim. 26 Jun 2022: Bien joué Olinuxx. :-) Librazik4 + Harrison Mixbus 32C + Bitwig studio 4 + 01V96i
bluedid29, 22:12, sam. 25 Jun 2022: Test en cours LibraZiK-4 et nouvelle interface audio Audient iD4... ...tout se passe bien, super boulot olinuxx :-)
PascalC67, 19:39, sam. 25 Jun 2022: Bonsoir. retour d'un ancien. Je vais tenter une installe de Librazik 4 sur l'un de mes HPZ sous XEon et 01V96i. Si ca tourne bien j'envisagerai ... de connecter une carte MERGING via AES67 dessus en ethernet
Jim-Bo33, 16:42, sam. 25 Jun 2022: Bonjour Olinux, finalement j'ai retrouvert mon login et mon logon. tout va bien
bluedid29, 19:24, ven. 24 Jun 2022: Et hop,distribution LibraZiK-4 installée à partir de Debian 11 Voyager, y'a plus qu'à tester ! Bon week-end :-)
olinuxx, 20:50, mer. 22 Jun 2022: Bonjour et bienvenue à agp cool
olinuxx, 22:35, ven. 17 Jun 2022: Bonjour et bienvenue à lerenti cool
Haldolcoma, 01:51, mar. 14 Jun 2022: Il y a un djinn dans ma machine
olinuxx, 17:52, sam. 11 Jun 2022: Bonjour et bienvenue à Haldolcoma cool