g++ 컴파일 시 라이브러리 링크

g++ 컴파일 시 라이브러리 링크

일부 라이브러리를 내 g++ 코드와 연결하려고 하는데 다음 오류가 발생합니다.

$ g++ -O myprob.o  -o myprob -Wl,-rpath $PATH/lib -L$PATH/lib -lprob7_cpp -lprob7
g++.exe: error: c:\mypath;c:\mypath\lib: Invalid argument

해당 부분 없이 이 명령을 실행하려고 하면 -Wl,-rpath $PATH/lib(할 수 있을 것 같습니다) 다음 오류가 발생합니다.

$ g++ -O myprob.o  -o myprob -L$PATH/lib -lprob7_cpp -lprob7
c:/mingw/bin/../lib/gcc/mingw32/4.8.1/../../../../mingw32/bin/ld.exe: cannot find -lprob7_cpp
c:/mingw/bin/../lib/gcc/mingw32/4.8.1/../../../../mingw32/bin/ld.exe: cannot find -lprob
collect2.exe: error: ld returned 1 exit status

나는 이 문제를 몇 시간 동안 고민했지만 도저히 이해할 수 없는 것 같습니다.

.cpp다음 명령을 사용하여 파일을 성공적으로 컴파일 했습니다 .

$ g++ -O -I$PATH/include -c myProb.cpp -o myProb.o

이러한 오류를 어떻게 수정할 수 있나요?

답변1

$PATH컴파일 라인 옵션에 변수를 사용 하지 마십시오 !

다음 명령줄을 사용해 보세요.

$ g++ -O myprob.o  -o myprob -Wl,-rpath ./lib -L./lib -lprob7_cpp -lprob7

관련 정보