come compilare un programma ac che usa pthread.h?


14

Sono un principiante e sono nuovo di Ubuntu. L'ho appena installato e voglio eseguire un programma C. Non ho idea di quale piattaforma utilizzare o dove scrivere il codice. Devo usare il file header pthread.h nel programma. Qualcuno può aiutarmi?


Risposte:


21

Uso:

gcc MyProgram.c -o MyProgram -lpthread 

e non dimenticare di includere la libreria POSIX nel tuo codice. Compilerà il tuo codice.


2
per impostazione predefinita GCC non include la libreria pthread. quindi devi includere la libreria usando l'argomento lpthread.
Parthiv Shah,

Nota anche che in gcc-4.8 non c'è -lpthreadargomento in man gcc. Ma c'è una -pthreaddiscussione. Entrambi funzionano bene su Ubuntu 14.04 con gcc-4.8.
Elijah Lynn,

1

Se stai per compilare un programma C con pthread.h in LINUX usando GCC o G ++ dovrai usare l' opzione –lpthread dopo il comando di compilazione.

gcc xyz.c -o xyz -lpthread

Qui,

gcc è il comando del compilatore (nome del compilatore)
xyz.c è un nome del file di origine.
-o è un'opzione per creare file objcect.
xyz è il nome del file oggetto (binario).
-lpthread è un'opzione per pthread.h

per maggiori dettagli ecco il link che contiene l'articolo completo su di esso.
Compilazione del programma C con pthread.h in Linux.


0

La prima cosa di cui hai bisogno in Ubuntu per compilare i programmi C / C ++ è installare GCC (Gnu Compiler Collection) che fa parte del build-essentialpacchetto, eseguilo eseguendo:

sudo apt-get install build-essential

Quindi è possibile verificare se è installato eseguendo gcc. Se vedi un errore simile Fatal error: file not provided(non sei sicuro del messaggio di errore esatto, ma dovrebbe essere qualcosa di simile), significa che hai il compilatore pronto.

E per modificare il tuo codice, puoi utilizzare Gedit già disponibile , basta cercarlo in Dash.

Ora di seguito è la sintassi per compilare il file sorgente C, eseguire seguendo dove si trova il file:

gcc MyProgram.c -o MyProgram

Dove, switch -oè facoltativo, ma fornito per menzionare il nome del file binario che dovrebbe essere creato dal tuo sorgente.

Quindi esegui semplicemente ./MyProgramper eseguire il tuo binario.

Tieni presente che pthread.hcome hai già detto (POSIX Thread) dovrebbe essere disponibile per impostazione predefinita con GCC, quindi semplicemente includendolo nel tuo file C farà quel lavoro, nel caso in cui non sia disponibile, una semplice ricerca su Google dovrebbe aiutare. ;)

Aggiornare

Troppo a lungo, non hai letto? controlla questo . : D


0

Se dà errore di quanto puoi provare lo stesso comando scambiando i parametri come piace

gcc -lpthread -o output_file program_pthread.c

dopodiché ./output_filefornisce l'output per il programma ed ecco program_pthread.cil programma pthread che hai implementato.


0

Per il programma C ++:

g++ -std=c++11 Myprogram.cpp -o MyProgramTest -lpthread
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.