/my/path/to/file 폴더에 헤더 파일이 거의 없습니다. 나는이 파일을 새로운 C 프로그램에 포함시키는 방법을 알고 있지만 매번 헤더 파일에 전체 경로를 입력해야합니다. linux에서 헤더 파일을 자동으로 찾는 경로 변수를 설정할 수 있습니까?업데이트 경로가 리눅스에 포함
답변
메이크 파일을 만들 수 있습니다. 최소 예는 다음과 같습니다.
INC_PATH=/my/path/to/file
CFLAGS=-I$(INC_PATH)
all:
gcc $(CFLAGS) -o prog src1.c src2.c
여기에서 여러 가지 방법으로이 메이크 파일을 개선 할 수 있습니다. 가장 중요한 것은 컴파일 종속성을 명시하는 것입니다 (따라서 수정 된 파일 만 다시 컴파일됩니다).
참조로 여기에 GNU make documentation에 대한 링크가 있습니다.
gcc -I${MY_INC_PATH} -o prog src1.c src2.c ...
:
export MY_INC_PATH=/my/path/to/file
그런 다음 당신이 좋아하는 프로그램을 컴파일 할 수 있습니다 : 당신이 메이크 파일을 사용하지 않으려면
, 당신은 항상 쉽게 컴파일 명령을 입력 할 수 있도록 환경 변수를 설정할 수 있습니다
.bashrc
파일에 MY_INC_PATH
변수를 정의하거나 변수 정의가 포함 된 편리한 위치에 파일을 만드는 것이 좋습니다. 그런 다음 현재 쉘에서 그 변수를 설정 source
을 사용할 수
source env.sh
내가 메이크 파일을 사용하는 것이 훨씬 바람직한 방법입니다, 그러나, 생각합니다.
고마워,하지만 makefile을 쓰지 않으면 어떤 방법이 있니? –
@ username_4567 대체 솔루션을 포함하도록 제 질문을 업데이트했습니다. 그러나 5 줄짜리 makefile을 작성하는 것이 쉽고 더 좋은 해결책 인 것 같습니다. – betabandido
실제로 모든 헤더 파일을 찾을 기본 경로가 있다고 생각합니다. –
저는 지금 리눅스에 없기 때문에 모든 것이 옳은지 확인하기 위해 재부팅 할 수는 없지만 심볼릭 링크를 만들려고 했습니까? 예를 들어, 당신은 우분투에 있습니다 : 당신이 STUF을 포함 할 때 그래서
$ cd /usr/include
$ sudo ln -s /my/path/to/file mystuff
다음, 당신은 사용할 수 있습니다 : 당신이 관심이 있다면 (이 비슷한 질문과 가능성이 더 나은 해결
#include <mystuff/SpamFlavours.h>
) 영구적 인 해결책에 : https://stackoverflow.com/a/558819/1408096
는 (C 헤더 파일 C_INCLUDE_PATH) 또는 CPLUS_INCLUDE_PATH (를위한 C++ 헤더 파일)를 설정하십시오.
명성 : jcrossley3
- 1. fseek과 리눅스에
- 2. 삽입 Qt는 윈도우, 리눅스에
- 3. DotNetNuke에서 상대 경로가 포함 된 문제
- 4. WSDL에 포함 된 XSD 파일 경로가 잘못되었습니다.
- 5. VB.net 폴더 경로가 포함 된 문자열 반환
- 6. 경로가 포함 된 PHP 복사 파일
- 7. Bash 파일 경로가 포함 된 변수
- 8. 경로가 포함 된 포함 파일로 Visual Studio를 빌드하는 방법은 무엇입니까?
- 9. 업데이트 방법 "경로가 [POST]와 일치하지 않습니다."
- 10. 레일에서 양식 업데이트 - 경로가 일치하지 않습니다 [PUT]
- 11. Debian 리눅스에 SciPy 설치
- 12. 리눅스에 대한 제한된 권한
- 13. 리눅스에 언어 프로그램 작성하기
- 14. 우분투 리눅스에 WSF 설치하기
- 15. 파일을 리눅스에 마운트해야하는 이유
- 16. 리눅스에/dev/tcp가 없습니다.
- 17. 파워 리눅스에 D (탱고)
- 18. 리눅스에 비해 코드가 느립니다.
- 19. VPS 서버 리눅스에 관하여
- 20. 간단한 애플릿을 리눅스에 작성하기
- 21. 경로가
- 22. 포트 Win32 DLL을 리눅스에 연결
- 23. woocommerce 업데이트 가격에 세금 포함
- 24. Windows Server - PHP 파일에 이제 상대 경로가 아닌 포함 경로의 절대 경로가 필요합니다.
- 25. 리눅스에 사운드 카드 드라이버 등록하기
- 26. 리눅스에 mod-jk를 어떻게 설치합니까?
- 27. 리눅스에 맞춤 소프트웨어를 배포 하시겠습니까?
- 28. 루트 권한이없는 리눅스에 gcc를 설치하십시오.
- 29. 아치 리눅스에 VMware 도구 설치
- 30. PHP와 MySQL을 서비스로 리눅스에 설치하기
메이크 파일에 경로를 추가 할 수 있습니까? – mathematician1975
gcc를 사용합니까? 직접 사용 하시겠습니까? 아니면 makefile을 사용합니까? – rekire
직접 사용하기 –