웹캠에서 비디오를 캡처하고 Android로 스트리밍하는 응용 프로그램을 개발하고 있습니다. 내가 ffmpeg 최신 릴리스 - 2.5.2 "보어"우분투 14.04 32 비트 및 IDE로 이클립스 사용하여 사용하고 있습니다. 컴파일 할 때우분투에서 ffmpeg bohr를 컴파일 할 수 없습니다. 14.04 32bit
나는이 오류가 발생 해요 :
g++ -L/usr/local/lib -L/home/idanhahn/ffmpeg/ffmpeg_build/lib -o "camera" ./src/.metadata/.plugins/org.eclipse.cdt.make.core/specs.o ./src/CameraSec.o ./src/camera.o ./.metadata/.plugins/org.eclipse.cdt.make.core/specs.o -lz -lswscale -lopencv_core -lavcodec -lavutil -lpthread -lboost_thread -lboost_system -lboost_date_time -lopencv_imgproc -lopencv_highgui -lopencv_ml -lopencv_video -lopencv_features2d -lopencv_calib3d -lopencv_objdetect -lopencv_contrib -lopencv_legacy -lopencv_flann -lavformat
/usr/bin/ld: /home/idanhahn/ffmpeg/ffmpeg_build/lib/libavformat.a(http.o): undefined reference to symbol 'inflateInit2_'
/usr/lib/gcc/i686-linux-gnu/4.8/../../../i386-linux-gnu/libz.so: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
내가 연결 한 avformat (및 기타는 FFmpeg 관련 libs와).
- 링크 libz :
나는 다음과 같은 시도했습니다.
- 여기에서 사용 지침을 다시 컴파일 시도 : http://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu
어떤 문제가 될 수 있을까? 링커가 i686을 가리킨 다음 i386으로 돌아간 이유는 무엇입니까?
-lz를 마지막 인수로 사용하십시오. – lonewasp
감사합니다. ''/ usr/bin/ld : /home/idanhahn/ffmpeg/ffmpeg_build/lib/libavcodec.a(tiff.o) :에 대한 정의되지 않은 참조. 기호 'lzma_code @@ XZ_5.0' //lib/i386-linux-gnu/liblzma.so.5 : 기호 추가 오류 : 명령 줄에서 DSO가 누락되었습니다. ' – Hahn