wmii build dies with errors in wmii.h Reproducible: Always Steps to Reproduce: 1. Upgrade your system 2. See that wmii 3.6 does not suit your needs 3. Try ro rollback to wmii 3.5.1 Actual Results: wmii build options: CFLAGS = -O2 -march=pentium4 -pipe -fomit-frame-pointer -I. -I/usr/include -I/usr/include -I/usr/include -DVERSION="3.5.1" LDFLAGS = -L/usr/lib -lc -L/usr/lib -lX11 -L/usr/lib -lixp -lm CC = i686-pc-linux-gnu-gcc LD = i686-pc-linux-gnu-gcc CC area.c In file included from area.c:5: wmii.h:219: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘srv’ wmii.h:220: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘p9srv’ wmii.h:313: error: expected ‘)’ before ‘*’ token wmii.h:325: error: expected ‘)’ before ‘*’ token wmii.h:326: error: expected ‘)’ before ‘*’ token wmii.h:327: error: expected ‘)’ before ‘*’ token wmii.h:328: error: expected ‘)’ before ‘*’ token wmii.h:329: error: expected ‘)’ before ‘*’ token wmii.h:330: error: expected ‘)’ before ‘*’ token wmii.h:331: error: expected ‘)’ before ‘*’ token wmii.h:332: error: expected ‘)’ before ‘*’ token wmii.h:333: error: expected ‘)’ before ‘*’ token wmii.h:334: error: expected ‘)’ before ‘*’ token wmii.h:335: error: expected ‘)’ before ‘*’ token make: *** [area.o] Error 1 * * ERROR: x11-wm/wmii-3.5.1 failed. * Call stack: * ebuild.sh, line 1701: Called dyn_compile * ebuild.sh, line 1039: Called qa_call 'src_compile' * ebuild.sh, line 44: Called src_compile * ebuild.sh, line 711: Called die * The specific snippet of code: * emake || die "emake failed" * The die message: * emake failed * * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/log/portage/x11-wm:wmii-3.5.1:20071118-162944.log'. * Expected Results: Older version of wmii has older version of libixp in dependencies. libixp 0.2-r1 cannot be built if new version is installed. Newer version must be unmerged first.
I've exactly the same problem. Wmii 3.6 don't work for me and I can't rebuild libixp-0.2 and wmii 3.5.1: CFLAGS = -O2 -march=pentium-m -pipe -fomit-frame-pointer -I. -I/usr/include -DVERSION="0.2" LDFLAGS = -L/usr/lib -lc -L. CC = i686-pc-linux-gnu-gcc SOFLAGS = -fPIC -shared LD = i686-pc-linux-gnu-gcc CC client.c CC convert.c CC intmap.c CC message.c CC request.c CC server.c CC socket.c CC transport.c CC util.c CC ixpc.c AR libixp.a CC libixp.so LD ixpc ixpc.o: In function `write_data': ixpc.c:(.text+0x60): undefined reference to `ixp_client_write' ixpc.c:(.text+0xf0): undefined reference to `ixp_client_write' ixpc.o: In function `main': ixpc.c:(.text+0x46d): undefined reference to `ixp_client_dial' ixpc.c:(.text+0x4f3): undefined reference to `ixp_client_walkopen' ixpc.c:(.text+0x546): undefined reference to `ixp_client_read' ixpc.c:(.text+0x565): undefined reference to `ixp_client_close' ixpc.c:(.text+0x598): undefined reference to `ixp_client_hangup' ixpc.c:(.text+0x5d9): undefined reference to `ixp_client_remove' ixpc.c:(.text+0x651): undefined reference to `ixp_client_walk' ixpc.c:(.text+0x67f): undefined reference to `ixp_client_create' ixpc.c:(.text+0x69d): undefined reference to `ixp_client_close' ixpc.c:(.text+0x738): undefined reference to `ixp_client_stat' ixpc.c:(.text+0x75e): undefined reference to `ixp_unpack_stat' ixpc.c:(.text+0x7b3): undefined reference to `ixp_client_walkopen' ixpc.c:(.text+0x7d1): undefined reference to `ixp_client_close' ixpc.c:(.text+0x8c7): undefined reference to `ixp_client_open' ixpc.c:(.text+0x955): undefined reference to `ixp_client_read' ixpc.c:(.text+0x9a0): undefined reference to `ixp_unpack_stat' ixpc.c:(.text+0x9ec): undefined reference to `ixp_unpack_stat' ixpc.c:(.text+0xa6a): undefined reference to `ixp_client_close' collect2: ld returned 1 exit status make: *** [ixpc] Error 1 * * ERROR: sys-libs/libixp-0.2-r1 failed. * Call stack: * ebuild.sh, line 1701: Called dyn_compile * ebuild.sh, line 1039: Called qa_call 'src_compile' * ebuild.sh, line 44: Called src_compile * ebuild.sh, line 711: Called die * The specific snippet of code: * emake || die "emake failed" * The die message: * emake failed And I've already tried to unmerge libixp and wmii first.
Okay. I have fixed the dependencies of both 3.x versions of wmii. The 3.6 release now depends on libixp 0.4 or later. The 3.5.1 release now depends on libixp 0.2. This should solve any problems caused by dependency mismatches. As for 0.2 not installing properly when 0.4 is installed, I am able to successfully reproduce this. I'll take care of this in a few minutes. Sky, if your problem still persists, please file a new bug report for it. Your problem does not exactly fit the summary, although I do see the connection you made. I am sorry for the inconvenience, but I would prefer not to change the summary. I am closing this bug fixed. Please reopen if anything is still wrong.
By the way, I just added a blocker dependency to the older version of libixp, to prevent it from being installed when the newer one is installed. This forces the user to uninstall the newer one prior to installing the older one.