저는 초보자이며 우분투를 처음 사용합니다. 방금 설치하고 C 프로그램을 실행하고 싶습니다. 사용할 플랫폼 또는 코드를 작성할 위치를 모릅니다. 프로그램에서 pthread.h 헤더 파일을 사용해야합니다. 누구든지 나를 도울 수 있습니까?
답변
사용하다:
gcc MyProgram.c -o MyProgram -lpthread
POSIX 라이브러리를 코드에 포함시키는 것을 잊지 마십시오. 코드를 컴파일합니다.
답변
GCC 또는 G ++를 사용하여 LINUX에서 pthread.h 를 사용하여 C 프로그램을 컴파일 하려면 컴파일 명령 뒤에 –lpthread 옵션 을 사용해야 합니다.
gcc xyz.c -o xyz -lpthread
여기,
gcc 는 컴파일러 명령 (컴파일러 이름)입니다.
xyz.c 는 소스 파일 이름입니다.
-o 는 objcect 파일을 작성하는 옵션입니다.
xyz 는 객체 (이진) 파일의 이름입니다.
-lpthread 는 pthread.h의 옵션입니다.
자세한 내용은 여기 링크 관련 기사를 참조하십시오.
Linux에서 pthread.h를 사용하여 C 프로그램 컴파일
답변
C / C ++ 프로그램을 컴파일하기 위해 우분투에서 가장 먼저해야 할 일은 build-essential
package의 일부인 GCC (Gnu Compiler Collection)를 설치 하는 것입니다.
sudo apt-get install build-essential
그런 다음을 실행하여 설치했는지 테스트 할 수 있습니다 gcc
. 당신이 당신과 같은 오류가 표시되는 경우 Fatal error: file not provided
, (하지 않도록 정확한 오류 메시지를하지만, 비슷한이어야 함) 수단 것을 당신은 컴파일러가 준비되어 있습니다.
그리고 코드를 편집하기 위해 이미 사용 가능한 Gedit을 사용할 수 있습니다 . 대시에서 검색하십시오.
다음은 C 소스 파일을 컴파일하는 구문입니다. 파일이있는 위치에서 다음을 실행하십시오.
gcc MyProgram.c -o MyProgram
여기서 switch -o
는 선택 사항이지만 소스에서 만들어야하는 이진 파일의 이름을 언급하기 위해 제공됩니다.
그런 다음 간단히 실행 ./MyProgram
하여 바이너리를 실행하십시오.
참고 pthread.h
당신이 언급 한 바와 같이 그렇게 간단하게 그 일을 할 것입니다 귀하의 C 파일에 포함 (POSIX 스레드)가 사용할 수없는 경우, 간단한 구글 검색이 도움이 될 것입니다, GCC와 기본적으로 사용할 수 있습니다. 😉
최신 정보
답변
오류가 발생하면 다음과 같이 매개 변수를 교환하여 동일한 명령을 시도 할 수 있습니다
gcc -lpthread -o output_file program_pthread.c
그 후 ./output_file
프로그램에 대한 출력을 제공하며 여기 program_pthread.c
에 구현 한 pthread 프로그램이 있습니다.
답변
C ++ 프로그램의 경우 :
g++ -std=c++11 Myprogram.cpp -o MyProgramTest -lpthread