Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 199556 - x11-wm/wmii-3.5.1 cannot be build with sys-libs/libixp-0.4
Summary: x11-wm/wmii-3.5.1 cannot be build with sys-libs/libixp-0.4
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: David Shakaryan (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-11-18 16:48 UTC by Denis Misiurca
Modified: 2007-11-19 04:00 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Denis Misiurca 2007-11-18 16:48:15 UTC
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.
Comment 1 Sky 2007-11-18 22:35:50 UTC
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.
Comment 2 David Shakaryan (RETIRED) gentoo-dev 2007-11-19 03:46:00 UTC
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.
Comment 3 David Shakaryan (RETIRED) gentoo-dev 2007-11-19 04:00:27 UTC
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.