在嵌入式平台編譯Qt的Phonon支持麻煩的很, 曾經試好幾多次均未能成功, 首先要安裝Gstreamer之類的一大堆東西,之后才能編譯過, 布置到板子后,也不一定有聲音.
其它還有另外一種選擇的,就是Phonon+mplayer, 可以參考這里: http://blog.csdn.net/wwwcrazy/article/details/6454884
以下是原文:
1.Qmake配置
$gedit /etc/profile
添加
export QTDIR=/opt/qtsdk-2010.05/qt (QT安裝路徑)
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$QTDIR/lib
export PTH=$PATH:$QTDIR/bin
2.安裝git
下載地址http://kernel.org/pub/software/scm/git/
或者通過 yum install git
3.下載phonon_mplayer
https://projects.kde.org/projects/kdesupport/phonon/phonon-mplayer/repository
4.下載cmake
www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz
5.編譯安裝phonon
進入Phonon-mplayer目錄,執行cmake ./;cmake會生成MakeFile,然后執行make;make install;
將生成的phonon_mplayer.so文件拷貝到$QTDIR/plugins/phonon_backend/目錄下。
用xx/qt/src/phonon/phonon.pro工程,編輯phonon.pro
PHONON_DIR=XXX/qt/src/3rdparty/phonon/phonon //XXX是指你對應的QT主目錄
qmake 再make一下就會在xxx/qt/lib下生成libphonon.la、libphonon.so、libphonon.so.4、libphonon.so.4.3 、 libphonon.so.4.3.1
進入/phonon-mplayer/mplayer執行
make distclean;
qmake
make;
將在phonon-backend生成libpnonon_mplayer.so,將其拷貝到$QTDIR/plugins/phonon_backend/目錄下。
這編文章其實已經說得很清楚了, 但是還要搞清楚一點順序問題
1. 首先,要編譯沒有phonon的Qt, 即在Qt的configure里加上-no-phonon, 編譯完成后install先,
2. export QTDIR,為后面編譯做准備:
3. 進入phonon-mplayer,使用如下命令生成適合於ARM的Makefile:
4. 將得到phonon_mplayer.so文件,放到Qt安裝路徑的/plugins/phonon_backend/目錄下
5. 再使用Qt(剛剛編譯安裝沒有phonon的版本)編譯Qt源文件下的phonon模塊,這時會自動根據phonon_mplayer.so編譯適合mplayer插件的phonon
6. 將編譯好的libphonon.la、libphonon.so、libphonon.so.4、libphonon.so.4.3 、 libphonon.so.4.3.1模塊復制到Qt安裝路徑的lib目錄下
7. 這里再編譯生成libpnonon_mplayer.so