This is the mail archive of the gsl-discuss@sourceware.cygnus.com mailing list for the GSL project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

["Khimenko Victor" <khim@sch57.msk.ru>] Can not compile some GSL-based programs with SHARED GLIBC 2.1.1


------- Start of forwarded message -------
To: bugs@gnu.org
Message-Id: <AFBXpBtuiC@khim.mccme.ru>
Organization: MCCME
From: "Khimenko Victor" <khim@sch57.msk.ru>
Date: Tue,  4 May 1999 22:11:23 +0400 (MSD)
Subject: Can not compile some GSL-based programs with SHARED GLIBC 2.1.1

>Submitter-Id:  net
>Originator:    khim@sch57.msk.ru
>Organization:  The Moscow State 57th School
>Confidential:  no
>Synopsis:      Problems with __setfpucw, used in GSL
>Severity:      non-critical
>Priority:      low
>Category:      libc
>Class:         sw-bug
>Release:       libc-2.1.1
>Environment:
Host type: i586-ksi-linux-gnu
System: Linux khim.sch57.msk.ru 2.2.2-ac5 #1 SMP Sat Feb 27 12:19:08 EET 1999 i586 unknown
Architecture: i586

Addons: crypt glibc-compat linuxthreads
Build CFLAGS: -D__USE_STRING_INLINES -O3 -Wall -Winline -Wstrict-prototypes -Wwrite-strings -fstrict-aliasing -g -march=pentium -mcpu=pentium -pipe
Build CC: gcc
Compiler version: egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)
Kernel headers: 2.2.2-ac5
Symbol versioning: yes
Build static: yes
Build shared: yes
Build pic-default: no
Build profile: yes
Build omitfp: no
Build bounded: no
Build static-nss: no
Stdio: libio

>Description:
I can not link some GSL-programs with SHARED GLIBC 2.1.1 ... I tracked problem
down to __setfpucw() function usage. __setfpucw is in libc.a but not in
libc.so.2.2.1 nor in libc_nonshared.a ...

The question: who is wrong ? GSL or GLIBC ? Or may be I'm just miscompiled
GLIBC ? Looks like this function is now replaced with macro _FPU_SETCW in
fpu_control.h, but if this function is not needed why it's in libc.a ?
>How-To-Repeat:
-- cut --
[khim@khim test]$ gcc -static test.c
[khim@khim test]$ gcc test.c
/tmp/ccW3MNYl.o: In function `main':
/tmp/ccW3MNYl.o(.text+0x6): undefined reference to `__setfpucw'
collect2: ld returned 1 exit status
[khim@khim test]$ cat test.c
main() {
    __setfpucw(1);
}
[khim@khim test]$
-- cut --
>Fix:
Now know which one will be right :-/ For now I just changed GSL to use
_FPU_SETCW instead of __setfpucw ...



------- End of forwarded message -------


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]