pkgsrc-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: pkg/45500 benchmarks/libmicro doesn't compile on dfly64
The following reply was made to PR pkg/45500; it has been noted by GNATS.
From: Juan Francisco Cantero Hurtado <iam%juanfra.info@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc:
Subject: Re: pkg/45500 benchmarks/libmicro doesn't compile on dfly64
Date: Tue, 1 Nov 2011 04:42:55 +0100
On Mon, Oct 31, 2011 at 11:05:03PM +0000, John Marino wrote:
>
> Hi Juan,
>
> I know your patches didn't cause the following error, but
> benchmarks/libmicro doesn't build on x86_64-dragonfly2.13. Have you
> only been building this on i386?
>
> The error I'm seeing is:
> gcc -c -O -DUSE_SEMOP -DUSE_SEMOP -D_REENTRANT -D_REENTRANT
> ../getcontext.c -o getcontext.o
> gcc -o getcontext getcontext.o -O -DUSE_SEMOP libmicro.a -lpthread -lm
> getcontext.o: In function `benchmark':
> getcontext.c:(.text+0x23): undefined reference to `getcontext'
> getcontext.c:(.text+0x2d): undefined reference to `getcontext'
> getcontext.c:(.text+0x37): undefined reference to `getcontext'
> getcontext.c:(.text+0x41): undefined reference to `getcontext'
> getcontext.c:(.text+0x4b): undefined reference to `getcontext'
> getcontext.o:getcontext.c:(.text+0x55): more undefined references to
> `getcontext' follow
> gmake[1]: *** [getcontext] Error 1
> rm close_tcp.o cascade_lockf.o cascade_fcntl.o cascade_cond.o
> getcontext.o file_lock.o fcntl_ndelay.o exp.o fork.o close.o
> cascade_flock.o fcntl.o dup.o bind.o connection.o chdir.o exec.o
> cascade_mutex.o exit.o
> gmake[1]: Leaving directory
> `/usr/obj/psworkzone/benchmarks/libmicro/work/libMicro-0.4.0/bin-x86_64'
> gmake: *** [default] Error 2
> *** Error code 2
>
> Stop.
> bmake: stopped in /usr/pkgsrc/benchmarks/libmicro
> *** Error code 1
Yes, only in i386. My fault. Sorry.
The libc in dfly/amd64 hasn't "getcontext", only
lib/libc/i386/sys/getcontext.S. I think the team worked in the i386
version of "getcontext" before of the creation of dfly/amd64 GSoC
project, but they not ported all libc to amd64
I've opened a bug in dfly bugtracker:
http://bugs.dragonflybsd.org/issue2179
References:
- lib/libc/i386/sys/getcontext.S
- Request for swapcontext and getcontext to be ported to our libc:
http://leaf.dragonflybsd.org/mailarchive/users/2006-12/msg00153.html
- Port DragonFly to the AMD64 architecture:
http://www.dragonflybsd.org/docs/developer/AMD64GSoC/
--
Tomorrow I'll review the problem and I'll give you a solution. The
problem is only with amd64, so I think the better is import run-libmicro
in pkgsrc because this is broke for all OS and create two Makefiles for
DragonFly. I think the fix in libc is hard, so I'll disable temporary
the code affected.
Thanks.
--
Juan Francisco Cantero Hurtado http://juanfra.info
Home |
Main Index |
Thread Index |
Old Index