2017-04-06 10 views
0

라이브러리 경로를 검색하지 않습니다 그것을 구축하기 위해서는 D. libD.so가 다른 사람들과 연결될 필요가있다. bin directorty에 모든 것을 넣기 때문에 bin 폴더를 찾아 라이브러리를 찾을 수 있도록 -L$${OUTDIR}을 추가했습니다. OUTDIR은 내가 bin dir과 같게 설정 한 변수이며 올바른 디렉토리라고 확신합니다. 메시지로 인쇄합니다. 하지만 libB.so가 libB.so를 찾을 수 없다는 오류가 나타납니다. 나는 여기에서 혼란 스럽다. 다른 A와 C를 찾는다. 왜 B를 찾을 수 없는가? 그들은 모두 같은 디렉터리 아래에 있으며 라이브러리 경로에 -L$${OUTDIR}을 사용하여 추가하고 있습니다. 무엇이 문제 일 수 있습니까?qmake를 내가 사용하여 내 라이브러리를 연결하는 .PRO 파일이

그런데 -L$${OUTDIR}을 삭제하고 해당 디렉토리를 QtCreator Projects 탭의 LD_LIBRARY_PATH에 직접 추가하고 구성을 빌드하면 모든 라이브러리를 올바르게 찾습니다. 이 라이브러리를 찾습니다 빌드의 시점에서, 라이브러리가 아직 구축되어 있지 않기 때문에

답변

0

제거 \ -LC

LIBS += -L$${OUTDIR} \ 
     -lA \ 
     -lB \ 
     -lC 
+0

불행히도, 그것을 해결하지 못했습니다. – meguli

+0

@meguli 그러나 문제를 해결하기 시작해야합니다. –

0

후에 그것은을 찾을 수 없습니다. 라이브러리가 종속성 순서대로 빌드되었는지 확인해야합니다.

+0

하지만 lib 파일이 빌드되어 있습니다. 이 디렉토리를'LD_LIBRARY_PATH'에 수동으로 추가하면 모든 것이 잘 동작합니다. 어떻게 든 qmake는 컴파일러 플래그에'-LOUTDIR'을 추가하는 makefile을 생성하지 않습니다. 그건 그렇고, 다른 접근 방식에도 똑같은 접근 방식이 적용됩니다. – meguli