Bug 517 - Porting problems using glibc
Porting problems using glibc
Product: Red Hat Raw Hide
Classification: Retired
Component: glibc (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Cristian Gafton
: 2244 (view as bug list)
Depends On:
  Show dependency treegraph
Reported: 1998-12-18 13:12 EST by Jeff Johnson
Modified: 2008-05-01 11:37 EDT (History)
10 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 1999-08-31 15:41:57 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Jeff Johnson 1998-12-18 13:12:47 EST
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 13:17:59 EST
From tcltk:
errno.h now has
which resulted in duplicate case.
Comment 2 Jeff Johnson 1998-12-18 13:37:59 EST
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 14:14:59 EST
From e2fsprogs, linux/major.h

	#define	SCSI_DISK_MAJOR	8
	#define	SCSI_DISK0_MAJOR 8
Comment 4 Jeff Johnson 1998-12-20 15:57:59 EST
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 16:12:59 EST
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 10:16:59 EST
The routine _cleanup (runs actions scheduled by atexit) is
now static in the shared libc.
Comment 7 Jeff Johnson 1998-12-22 10:18:59 EST
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 10:38:59 EST
<limits.h> needs to be explicitly included.
Comment 9 Mike Maher 1998-12-22 15:22:59 EST
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 18:10:59 EST
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 18:20:59 EST
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 16:02:59 EST
You need to add -D_GNU_SOURCE to get WTMPX_FILE defined.
Comment 13 Preston Brown 1999-03-23 14:03:59 EST
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 13:47:59 EDT
*** 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.