Visualizzazione dei risultati da 1 a 9 su 9

Discussione: C e Ubunto 10.04

  1. #1

    C e Ubunto 10.04

    Allora.. ho scaricato Ubunto 10.04, mi serve per la programmazione normale e di sistema in C.. dato che non l'ho mai usato, come faccio a compilare ed eseguire sorgenti C? Serve qualche programma o basta un semplicissimo editor di testo? Come li compilo? Come li eseguo?
    Inoltre, devo scaricare qualche libreria? Oppure mi ritrovo già tutto quello che mi serve appena installo il sistema operativo?

  2. #2
    se lo hai appena installato, dai da linea di comando

    codice:
    >> sudo apt-get update
    >> sudo apt-get install build-essential
    A questo punto hai tutto il necessario per cominciare a sviluppare in C.
    Apri gedit dal menù o da shell con

    codice:
    >> gedit &
    Scrivi il tuo programma e compilalo, sempre da linea di comando, con

    codice:
    >> gcc app.c -o app
    ed eseguilo con

    codice:
    >> ./app

  3. #3
    Ok, grazie mille!!

  4. #4
    Originariamente inviato da antotan
    Scrivi il tuo programma e compilalo, sempre da linea di comando, con

    codice:
    >> gcc app.c -o app
    Tutto giusto, ma sarebbe meglio
    codice:
    gcc -Wall -Wextra -ansi -pedantic app.c -o app
    così si abitua bene fin da subito.
    Per attivare l'ottimizzatore a paletta eventualmente aggiungi anche -O3.
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    Originariamente inviato da MItaly
    Tutto giusto, ma sarebbe meglio
    codice:
    gcc -Wall -Wextra -ansi -pedantic app.c -o app
    così si abitua bene fin da subito.
    Per attivare l'ottimizzatore a paletta eventualmente aggiungi anche -O3.
    Esattamente, ero tornato per editare infatti

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480

    Re: C e Ubunto 10.04

    Ubunto ?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Originariamente inviato da MItaly
    Tutto giusto, ma sarebbe meglio
    codice:
    gcc -Wall -Wextra -ansi -pedantic app.c -o app
    così si abitua bene fin da subito.
    Per attivare l'ottimizzatore a paletta eventualmente aggiungi anche -O3.
    Cosa cambia con questa linea di comando? Che differenza c'è con l'altra?



    *Ubuntu, ho sbagliato a scrivere. XD

  8. #8

    Re: Re: C e Ubunto 10.04

    Originariamente inviato da oregon
    Ubunto ?
    U-bún-to, s. m.: fam. per Ubuntu; v. anche bubuntu, l'ubuntu, il coso lì tipo africano, quel programma marrone che usi.

    Ma le storpiature peggiori restano Mozzilla e Excell.

    Originariamente inviato da Crosta_01
    Cosa cambia con questa linea di comando? Che differenza c'è con l'altra?
    Attiva tutti i warning, ossia segnalazioni di costrutti che, pur non essendo errori, sono potenzialmente sospetti (che so, usare una variabile non inizializzata, effettuare un assegnamento in un'istruzione condizionale, ...); disattiva inoltre le estensioni e i costrutti non standard che fornisce gcc.
    Amaro C++, il gusto pieno dell'undefined behavior.

  9. #9
    -ansi disabilita alcune funzionalità del compilatore, che si manterrà fedele allo standard ANSI c89 (o C++ 98, se compili un progetto in C++).

    -pendatic solleva tutti i warning su pezzi di codice che non seguono strettamente lo standard:

    codice:
    #include <stdio.h>
    
    int main()
    {
    	int i;
    	printf("ciao\n");
    	int j;
    }
    Genera:

    codice:
    anto@anto-net:~/desktop$ gcc -ansi -pedantic main.c 
    main.c: In function ‘main’:
    main.c:9: warning: ISO C90 forbids mixed declarations and code
    -Wall abilita diversi flag di warning, mostrati quando si presentano situazioni strane.
    Ad esempio:

    codice:
    #include <stdio.h>
    
    int main()
    {
    	int i;
    
    	printf("%d\n", i);
    }
    Genera i warning:

    codice:
    anto@anto-net:~/desktop$ gcc -Wall main.c 
    main.c: In function ‘main’:
    main.c:8: warning: control reaches end of non-void function
    main.c:7: warning: ‘i’ is used uninitialized in this function
    Senza -Wall non li avresti.

    -Wextra ne attiva ancora altri. In pratica dovresti averli attivi tutti aggiungendo anche Wextra (se non ricordo male, lo trovi anche come -W, la vecchia sintassi)

    Talvolta utilizzo anche -Werror. Dove trova un warning, lo tratta come un errore, quindi la compilazione non va a buon fine.

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 © 2025 vBulletin Solutions, Inc. All rights reserved.