在獲取makefile以查找.c程序的正確庫和頭文件時出現問題我正在嘗試編譯。我試圖爲Apple的HTTP Live Streaming編譯一個開源的分段器,它需要libavformat和其他FFMpeg庫進行編譯。我使用Mac Ports來安裝FFMpeg,當我在命令行運行「which ffmpeg」時,它顯示的目錄是opt/local/bin/ffmpeg,但是在四處搜索之後,這似乎不是該庫的目錄。位於Snow Leopard上的FFMpeg的libavformat在哪裏?
看來,庫位於opt/local/include,因爲那是我看到頭文件的地方。這是我的makefile與疑似目錄:
所有: 的gcc -Wall -g live_segmenter.c -o live_segmenter -I /選擇/本地/包括-I /選擇/ local/bin目錄-I /選擇/ local/include/libavutil -L/opt/local/include/libavformat -libavformat -L/opt/local/include -libavcodec -L/opt/local/include -libavutil -L/opt/local/include -libavcore -lbz2 - LM -lz -lfaac -lmp3lame -lx264 -lfaad -lpthread
clean:
rm -f live_segmenter
這裏是輸出試圖編譯後:
gcc -Wall -g live_segmenter.c -o live_segmenter -I/opt/local/include -I/opt/local/bin - I/opt/local/include/libavutil -L/opt/local/include/libavformat -libavformat -L/opt/local/include -libavcodec -L/opt/local/include -libavutil -L/opt/local/include -libavcore -lbz2 -lm -lz -lfaac -lmp3lame -lx264 -lfaad -lpthread
ld: library not found for -libavformat
collect2: ld returned 1 exit status
make: *** [all] Error 1
我也試圖運行「的ffmpeg -version」,看看ffmpeg的正確建立,它似乎是這樣我已經用完了就做什麼的想法。任何幫助或指向正確的方向都會很棒。謝謝!
哇以後7個月潛在的回答我的問題!太興奮了。我獨自離開了這個問題,並在其他事情上工作,但我一定會盡快嘗試這個問題,並讓你知道它是否工作!謝謝您的幫助。 – winnicki 2011-09-29 23:36:01
ld:庫找不到-lavcore collect2:ld返回1退出狀態 make:*** [all]錯誤1 – winnicki 2011-10-18 03:57:37
我認爲你的回答是對的這只是我似乎缺少/ opt/local中的avcore/lib出於某種原因,所以我認爲我需要用avcore配置FFMpeg。 *嘆息* – winnicki 2011-10-18 04:22:52