最近編譯webrtc for android遇到好多問題,記下來之後備用。html
depot_tools 這個須要另外下載,有一點要注意的是裏面的python文件都是python2的,也就是說若是你裝了python3,那麼默認python命令會用python3來執行,這個時候最開始我手打了命令(把gclient 變成 python2 /path/to/depot_tools/gclient.py),固然這樣是很費力的。而且後來發現一些inner command仍是會用到python2,因此這種方法就不可行了。
解決方法:最後是在/usr/bin裏面把python這個soft link指向python2就能夠了。java
jdk webrtc for android 須要oracle的jdk來編譯,openjdk的話在設置環境的時候會報錯(source ./build/envsetup.sh的時候)。若是你是使用的openjdk的話,其實也好辦,只要下一個oraclejdk而後設置一個JAVA_HOME而且把bin加到path裏面就能夠了。python
export JAVA_HOME=/path/to/oraclejdk export PATH=$JAVA_HOME/bin:$PATH 另外特別要注意的看下面那條:-)linux
jdk版本 若是你使用了jdk1.7,那麼恭喜你中獎了。若是你再運行app的時候遇到classdefnotfound這種錯誤,那麼說明你還真的中獎了。。
解決方法是:換用jdk1.6來編譯webrtc,這樣才能在android跑起來(至少如今要用1.6才行)android
什麼?java VM出錯了? 若是你是剛剛下的jdk1.6,而且下的是bin的那個而後解壓縮的。。頗有可能遇到web
Error occurred during initialization of VM java/lang/NoClassDefFoundError: java/lang/Objectoracle
解決方法見:http://www.cnblogs.com/chenguangyu/archive/2009/11/06/1597706.html 爲了防止鏈接失效,那麼也能夠看下面:app
linux安裝jdk出現java/lang/NoClassDefFoundError: java/lang/Object錯誤的解決方案 近日在redhat上安裝jdk出現了一個莫名的錯誤 Error occurred during initialization of VM java/lang/NoClassDefFoundError: java/lang/Object 辛苦google了一個小時,終於找到了解決方案 首先要確認的是環境變量的設置是否正確 相信你們都是很細心的,這方面若是有錯誤也會很容易發現 然而還有一個隱蔽的地方也會產生上述的錯誤 就是lib和jre/lib文件夾中的rt和tools是不是打包後的形式 若是發現rt.pack 和 tools.pack 那麼多半問題就出在這裏 解決方法也很簡單,只要將相應文件解壓成rt.jar 和 tools.jar 可使用bin裏面的unpack200工具 如:unpack200 rt.pack rt.jar 解壓後java -version應該就沒有問題了~~工具
在這裏再次感謝做者!ui
FATAL EXCEPTION: GLThread 8 java.lang.IllegalArgumentException: No config chosen at >android.opengl.GLSurfaceView$BaseConfigChooser.chooseConfig(GLSurfaceView.java:771) at android.opengl.GLSurfaceView$EglHelper.start(GLSurfaceView.java:916) at >android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1246) at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1116)
<strike>這就要改源代碼了。在源代碼裏面搜索一下view,而後找到感受像是GLSurfaceView的以後,在其new以後加入xxxView.setEGLConfigChooser(8, 8, 8, 8, 16, 0);</strike>
目前就遇到這麼多問題,之後繼續添加。