저는 Arch Linux를 사용하고 있으며 성공적으로 빌드되었습니다.https://github.com/JosephP91/curlcpp 그런데 예제 프로그램을 어떻게 만드는지 모르겠습니다. 계속 받고 있어요
fatal error: curl_easy.h: No such file or directory
물론 이것은 path 에 추가하는 방법을 모르기 때문입니다 library/include
.
<curlcpp root>/build/src/
폴더 안에는 libcurlcpp.a
모든 .o
파일이 들어 있는 파일이 있고 <curlcpp root>/include/
여기에는 필요한 모든 .h
파일이 들어 있습니다.
-I library/include
추가 정보, 시도 및 기타 조합 에 지정된 명령을 시도했습니다 .
시스템 전체에서 사용할 수 있도록 하려면 파일을 어딘가에 수동으로 복사하거나 일부 명령줄 응용 프로그램을 실행해야 합니까?
ldconfig
나는 이것이 동적 라이브러리에 대한 것이기 때문에 올바른 절차라고 생각하지 않습니다 .
답변1
프로그램의 실행 파일을 빌드하는 데 사용한 정확한 명령은 무엇입니까?
g++
프로젝트별 헤더와 라이브러리를 사용하여 다른 디렉터리에 알려야 합니다 . 여기에 libcurlcpp.a
복사 $proj_home/lib
하고 libcurlcpp.h
복사한 경우 $proj_home/hdr
다음과 같습니다.
$ g++ your_program.cpp -Ihdr -Llib -lcurlcpp -static -o your_executable
-I
제목과 함께 추가 목차 지정-L
라이브러리를 사용하여 추가 디렉터리 지정-l
링크하려는 특정 라이브러리를 지정하십시오(lib
및.a
/ 제외.so
).-static
동적 라이브러리( )보다g++
정적 라이브러리( )를 선호하도록 지시합니다 (기본값은 반대임).*.a
*.so
-I
-L
키와 경로 자체 사이에 공백 없이 및 에 대한 경로를 지정합니다 . 비슷한 것이 -l
.
Makefile
자신에게 맞는 특정 명령을 찾으면 이에 따라 프로젝트 일정을 계획하세요.
답변2
/usr/include 경로에 제공된 헤더를 복사하기만 하면 됩니다. 아니요? 분명히 소스 코드를 컴파일할 때 라이브러리를 링크하는 것을 잊지 마세요. 나는 그것을 시도했고 그것은 매력처럼 작동합니다!