Bug 517 - Porting problems using glibc
Summary: Porting problems using glibc
Alias: None
Product: Red Hat Raw Hide
Classification: Retired
Component: glibc
Version: 1.0
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Cristian Gafton
QA Contact:
: 2244 (view as bug list)
Depends On:
TreeView+ depends on / blocked
Reported: 1998-12-18 18:12 UTC by Jeff Johnson
Modified: 2008-05-01 15:37 UTC (History)
10 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 1999-08-31 19:41:57 UTC

Attachments (Terms of Use)

Description Jeff Johnson 1998-12-18 18:12:47 UTC
This is a generic bug to try and capture some of the
porting problems encountered in building packages
with glibc-2.1. Add yourself to the CC line if you
wish to be notified of information by E-mail.

Comment 1 Jeff Johnson 1998-12-18 18:17:59 UTC
From tcltk:
errno.h now has
which resulted in duplicate case.

Comment 2 Jeff Johnson 1998-12-18 18:37:59 UTC
All programs that use pam

/usr/include/security/_pam_macros.h has
	extern char *strdup(const char *s);
which, since glibc21 implements many string functions as macros,
fails to compile.

Comment 3 Jeff Johnson 1998-12-18 19:14:59 UTC
From e2fsprogs, linux/major.h

	#define	SCSI_DISK_MAJOR	8
	#define	SCSI_DISK0_MAJOR 8

Comment 4 Jeff Johnson 1998-12-20 20:57:59 UTC
If accessing struct exit_status after #include <utmp.h>, you
must add -D_GNU_SOURCE to expose the structure elements.

Comment 5 Jeff Johnson 1998-12-20 21:12:59 UTC
smtp.c:1008: warning: preprocessing directive not recognized within
macro arg

triggered by this code:

sm_reply.length =
        strlen (strcpy (sm_reply.text, sm_wfp == NULL ? "no socket
            : sm_alarmed ? "write to socket timed out"
#ifdef MPOP
            : sm_ispool ? "error writing to spool file"
            : "error writing to socket"));

Comment 6 Jeff Johnson 1998-12-22 15:16:59 UTC
The routine _cleanup (runs actions scheduled by atexit) is
now static in the shared libc.

Comment 7 Jeff Johnson 1998-12-22 15:18:59 UTC
Accessing fds_bits (the int32 array of bits used by FD_SET and
friends) is not possible unless specifying XPG4 compatibility
explicitly. Meanwhile the FD_* access works just fine.

Comment 8 Jeff Johnson 1998-12-22 15:38:59 UTC
<limits.h> needs to be explicitly included.

Comment 9 Mike Maher 1998-12-22 20:22:59 UTC
C files formerly making stdio declarations as constants such as:

FILE *foo = {stdin}, *bar = {stdout};

no longer work and should be declared as variables:

FILE *foo;
FILE *bar;

foo = stdin;
bar = stdout;

Comment 10 Mike Maher 1998-12-22 23:10:59 UTC
Things that will no longer work (that did) if they are defined or

Any mem thing:
#define mem*

extern char *strpbrk();     register char CONST *s1;
    register char CONST *s2;
    register int n = strlen(s2);

    if (! *s2)
        return (char *) s1;

    while (*s1) {
        if (! strncmp(s2,s1,n))
            return (char *) s1;
    return((char *) 0);

rewrites of string maniupulation such as:

Comment 11 Mike Maher 1998-12-22 23:20:59 UTC
That was supposed to be---

extern char *strpbrk();     register char CONST *s1;

rewrites of string maniupulation such as:

char * strstr(s1, s2)
    register char CONST *s1;
    register char CONST *s2;
    register int n = strlen(s2);

    if (! *s2)
        return (char *) s1;
    while (*s1) {
        if (! strncmp(s2,s1,n))
            return (char *) s1;
    return((char *) 0);

Comment 12 Jeff Johnson 1998-12-30 21:02:59 UTC
You need to add -D_GNU_SOURCE to get WTMPX_FILE defined.

Comment 13 Preston Brown 1999-03-23 19:03:59 UTC
I believe we have more or less figured out all these issues.  If
people have additional things to add, reopen the 'bug'.

Comment 14 Jeff Johnson 1999-04-18 17:47:59 UTC
*** Bug 2244 has been marked as a duplicate of this bug. ***

I am not certain this error is due to glibc or not.  I am
having extreme difficulty compiling (meaning I cannot
compile at all) a number of useful applications which worked
flawlessly under the last distribution of redhat I used.  In
particular, ssh, version 1.x.x or 2.x.x will not compile at
all, nor will the binary RPMS for ssh that I have found work

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