Bug 37752 - lack of fstat()
Summary: lack of fstat()
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: glibc
Version: 7.1
Hardware: i686
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Jakub Jelinek
QA Contact: Aaron Brown
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2001-04-26 08:50 UTC by Need Real Name
Modified: 2016-11-24 15:19 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2001-04-26 08:50:26 UTC
Embargoed:


Attachments (Terms of Use)

Description Need Real Name 2001-04-26 08:50:22 UTC
From Bugzilla Helper:
User-Agent: Mozilla/4.75 [en] (X11; U; Linux 2.2.16-22 i686)


binaries compiled with Lahey fortran lf95 complain:
./a.out: error while loading shared libraries:
/usr/local/lf9555/lib/libfj9i6.so.1:
undefined symbol: fstat
However, they run when compiled statically. Suspect bug in glibc

Reproducible: Always
Steps to Reproduce:
1. lf95 test.f
2. ./a.out
3.
	

Actual Results:  /a.out: error while loading shared libraries:
/usr/local/lf9555/lib/libfj9i6.so.1:
undefined symbol: fstat

lf95 is working well under RH7.0 with glibc-2.2-5

Comment 1 Jakub Jelinek 2001-04-26 09:23:59 UTC
No, the problem is in Lahey libraries.
Each library should have its own private copies of stat/fstat/lstat/mknod
if not all their occurences are inlined.
Current glibc just enforces this.
Either request the libraries to be recompiled, or link things with additional
objects which will as workaround export those symbols until this is fixed in
Lahey, something like:
#include <sys/stat.h>
#undef fstat
#undef __fstat
int
__fstat (int fd, struct stat *buf)
{
  return __fxstat (_STAT_VER, fd, buf);
}
extern int fstat (int fd, struct stat *buf) __attribute__((weak, alias("__fstat")));
and similarly for other functions.


Note You need to log in before you can comment on or make changes to this bug.