On 3/23/19 5:36 PM, Pierre Labastie via blfs-dev wrote:
When building plasma 5.15, everything goes well until "plasma-workspace". Then I get the following: --------------- [...] Scanning dependencies of target appmenu [ 7%] Building CXX object appmenu/CMakeFiles/appmenu.dir/appmenu_autogen/mocs_c ompilation.cpp.o [ 7%] Building CXX object appmenu/CMakeFiles/appmenu.dir/appmenu.cpp.o In file included from /sources/plasma/plasma-workspace-5.15.0/appmenu/appmenu.cp p:27: /sources/plasma/plasma-workspace-5.15.0/build/config-X11.h:44:18: warning: "TRUE " is not defined, evaluates to 0 [-Wundef] #define HAVE_X11 TRUE ^~~~ /sources/plasma/plasma-workspace-5.15.0/appmenu/appmenu.cpp:47:5: note: in expan sion of macro ‘HAVE_X11’ #if HAVE_X11 ^~~~~~~~ /sources/plasma/plasma-workspace-5.15.0/appmenu/appmenu.cpp: In member function ‘void AppMenuModule::slotWindowRegistered(WId, const QString&, const QDBusObjectPath&)’: /sources/plasma/plasma-workspace-5.15.0/appmenu/appmenu.cpp:111:19: error: ‘QX11Info’ has not been declared auto *c = QX11Info::connection(); ^~~~~~~~ /sources/plasma/plasma-workspace-5.15.0/appmenu/appmenu.cpp:113:16: error: ‘xcb_atom_t’ does not name a type static xcb_atom_t s_serviceNameAtom = XCB_ATOM_NONE; [...] make[2]: *** [appmenu/CMakeFiles/appmenu.dir/build.make:98: appmenu/CMakeFiles/appmenu.dir/appmenu.cpp.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:1793: appmenu/CMakeFiles/appmenu.dir/all] Error 2 make: *** [Makefile:130: all] Error 2 ---------------The reason for all the errors is in the first warning: TRUE is not defined, so it evaluate to 0. Then the appmenu.cpp file has: ---------- #if HAVE_X11 #include <QX11Info> #include <xcb/xcb.h> #endif [...] #ifdef HAVE_X11 if (KWindowSystem::isPlatformX11()) { auto *c = QX11Info::connection(); [...] ---------- The first #if HAVE_X11 evaluates to false, so the header file is not included. Then the second #ifdef HAVE_X11 evaluates to true, since HAVE_X11 _is_ defined, so that "auto *c = QX11Info::connection();" is compiled, but of course, QX11Info has not been defined. There is a fix in 5.15.3. Now, how is it that we have not seen that before? I've built plasma-5.15.0 already once, without error... The only difference I see is that I had gcc-8.2.0. But I tried to reinstall gcc-8.2.0, and: same error! I may well be out of my depth here.
OK, the other difference is cmake version... The above is with 3.14. There is no error with 3.13.4: what is generated is: #define HAVE_X11 1 with 3.13.4 while it is #define HAVE_X11 TRUE with 3.14. Pierre -- http://lists.linuxfromscratch.org/listinfo/blfs-dev FAQ: http://www.linuxfromscratch.org/blfs/faq.html Unsubscribe: See the above information page
