Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 18 Dec 2003 11:54:29 +0200 (EET)
From:      Dmitry Pryanishnikov <dmitry@atlantis.dp.ua>
To:        stable@freebsd.org
Subject:   ftime doesn't fetch from libcompat.a using -lcompat
Message-ID:  <20031218114047.W32014@atlantis.atlantis.dp.ua>

next in thread | raw e-mail | index | archive | help

Hello!

 I've found a very unusual bug. I've tried to build a legacy program which
uses ftime(), but I've got unresolved reference to `ftime'. I've created a
very simple program that demonstrates a bug:

#include <sys/types.h>
#include <sys/timeb.h>
main()
{
 struct timeb tb;
 return ftime(&tb);
}

dmitry@test$ cc -lcompat a.c
/tmp/cck3ZpNz.o: In function `main':
/tmp/cck3ZpNz.o(.text+0xe): undefined reference to `ftime'
dmitry@test$ cc -lcompat -static a.c
/tmp/ccbGUAGZ.o: In function `main':
/tmp/ccbGUAGZ.o(.text+0xe): undefined reference to `ftime'

The most interesting thing here is that I can extract module ftime.o from
my /usr/lib/libcompat.a and link against it:

dmitry@test$ ar p /usr/lib/libcompat.a ftime.o >ftime.o
dmitry@test$ cc a.c ftime.o
dmitry@test$

It seems that symbol `ftime' gets somehow "undeclared" in library symbol
table. Could this error be fixed? It's present in 4.8-RELEASE and 4.9-RELEASE.
I haven't found anything in GNATS about this issue.

Sincerely, Dmitry
-- 
Atlantis ISP, System Administrator
e-mail:  dmitry@atlantis.dp.ua
nic-hdl: LYNX-RIPE



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20031218114047.W32014>