Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Aiuto mandriva 2006

    allora ho un make file tutte le librerie e programmi c in una carte il make è uno script e ve lo posto

    #Makefile

    ALL = lib-errori lib-corso-reti \
    byteorder \
    daytimesrv daytimecli daytimesrv-ric \
    echosrv echocli echosrv-sigh \
    sommasrv sommacli \
    echocli-slct echocli-shtd echosrv-slct \
    echoudpsrv echoudpsrv-count echoudpcli echoudpcli-connect echoudpcli-count \
    spedisci_dg \
    sockopts-check sockopts-set


    all: $(ALL)

    .c: lib-errori.o lib-corso-reti.o
    @echo compiling $< with rule 1
    gcc $< -g -O0 -Werror -o $@ lib-errori.o lib-corso-reti.o

    lib-errori: lib-errori.c
    gcc -g -O0 -Werror -c lib-errori.c

    lib-corso-reti: lib-corso-reti.c
    gcc -g -O0 -Werror -c lib-corso-reti.c
    clean:
    rm -f $(ALL)
    rm -f *~
    rm -f *.o
    il problema accade quando mando in esecuzione il make e mi dice :
    [carmine@tin Laboratorio]$ make
    gcc -g -O0 -Werror -c lib-errori.c
    gcc -g -O0 -Werror -c lib-corso-reti.c
    compiling byteorder.c with rule 1
    gcc byteorder.c -g -O0 -Werror -o byteorder lib-errori.o lib-corso-reti.o
    cc1: warnings being treated as errors
    byteorder.c: In function 'main':
    byteorder.c:23: warning: incompatible implicit declaration of built-in function 'exit'
    make: *** [byteorder] Error 1
    [carmine@tin Laboratorio]$

    aiutatemi cortesemente i file so buoni e anche lo script altri miei compagni universitari riescono a farlo giare senza nessun problema
    come devo fare ??? visto che sono poco pratico me lo spiegate un po passo passo
    grazie anticipatamente a tutti

  2. #2
    vi posto anche il file byteorder.c:

    #include <stdio.h>

    int main(int argc, char **argv) {
    union {
    short s;
    char c[sizeof(short)];
    } un;

    un.s = 0x0102;
    printf("CPU = %s - byte ordering: ",getenv("CPU"));

    if (sizeof(short) == 2) {
    if ( un.c[0] == 1 && un.c[1] == 2 )
    printf ("big-endian\n");
    else if ( un.c[0] == 2 && un.c[1] == 1 )
    printf ("little-endian\n");
    else
    printf("unknown\n");
    }
    else
    printf("size of short: %d.\n",sizeof(short));

    exit(0);
    }

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.