青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

牽著老婆滿街逛

嚴以律己,寬以待人. 三思而后行.
GMail/GTalk: yanglinbo#google.com;
MSN/Email: tx7do#yahoo.com.cn;
QQ: 3 0 3 3 9 6 9 2 0 .

在Windows下編譯最新版本的Libjingle

轉載自:http://mysuperbaby.iteye.com/blog/908866 


Libjingle版本: 0.5.2

操作系統: Windows XP 
編譯器: Microsoft Visual C++ 2008 Express 

具體可以參考README: 
http://code.google.com/p/libjingle/source/browse/trunk/README 

這里將根據我自己的環境以及遇到的問題進行總結. 

1. 安裝Python 2.4或者之后的版本. 因為swtoolkit只能工作在Python 2.x版本, 所以不能安裝Python 3.x版本. 
下載位置: http://www.python.org/ 

2. 安裝scons-local 2.0.0或者之后的版本. 設置環境變量SCONS_DIR指向包含scons-local的目錄, 如/src/libjingle/scons-local/scons-local-2.0.0.final.0/ 
注意SCONS_DIR指向的目錄不是你下載的scons-local包直接解壓縮后的目錄 (這個目錄包括scons.py, scons-README等文件), 而是里面包含的名為scons-local-x.x.x的子目錄 
下載位置: http://www.scons.org/download.php 

3. 安裝swtoolkit 
下載位置: http://code.google.com/p/swtoolkit/ 

4. 下載expat包, 解壓縮到talk/third_party/expat-2.0.1/ 
注意不要下載Win32安裝包, 而應該是源代碼包 
下載位置: http://sourceforge.net/projects/expat/ 

5. 下載最新的srtp包, 解壓縮到talk/third_party/srtp 
注意不要使用srtp-1.4.4, 因為這個版本遺漏了Libjingle所使用的一些extensions 
下載位置: http://sourceforge.net/projects/srtp/develop 
為了省去你使用CVS下載最新srtp代碼的麻煩, Libjingle已經上傳了最新的srtp包, 下載位置:http://libjingle.googlecode.com/files/srtp-cvs.zip 

如果你的expat和srtp包在其他位置或者名稱不一樣, 需要對應地修改talk/libjingle.scons 

6. 進入到talk目錄, 運行$path_to_swtoolkit/hammer.bat 
將會進行編譯, 最終將在talk/build/dbg/lib目錄下生成: 
expat.lib  
libjingle.lib  
libsrtp.lib  
libxmpphelp.lib 
在talk/build/dbg/staging目錄下生成: 
call.exe 
login.exe 
relayserver.exe 
stunserver.exe 

下面是可能遇到的編譯問題以及對應的解決方法. 
1. 
編譯錯誤talk\session\phone\devicemanager.cc(31) : fatal error C1083: Cannot open include file: 'atlbase.h': No such file or directory 
解決方法: 
1) 安裝Platform SDK 
下載位置: http://www.microsoft.com/downloads/en/details.aspx?FamilyID=a55b6b43-e24f-4ea3-a93e-40c0ec4f68e5 
2) 添加c:\Program Files\Microsoft Platform SDK\Include\atl到INCLUDE環境變量中, 在編譯Libjingle的同一DOS窗口中執行set INCLUDE=c:\Program Files\Microsoft Platform SDK\Include\atl;%INCLUDE% 

Refer to: 
http://code.google.com/p/libjingle/issues/detail?id=89 

2. 
編譯錯誤 
c:\program files\microsoft sdks\windows\v6.0a\include\ws2def.h(91) : error C2220: warning treated as error - no 'object' file generated 
c:\program files\microsoft sdks\windows\v6.0a\include\ws2def.h(206) : error C2011: 'sockaddr' : 'struct' type redefinition 
c:\program files\microsoft sdks\windows\v6.0a\include\ws2def.h(437) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int 
c:\program files\microsoft sdks\windows\v6.0a\include\winsock2.h(132) : error C2011: 'fd_set' : 'struct' type redefinition 
  c:\program files\microsoft sdks\windows\v6.0a\include\winsock.h(68) : see declaration of 'fd_set' 
c:\program files\microsoft sdks\windows\v6.0a\include\winsock2.h(176) : error C2011: 'timeval' : 'struct' type redefinition 
  c:\program files\microsoft sdks\windows\v6.0a\include\winsock.h(111) : see declaration of 'timeval' 
...... 
解決辦法: 
在devicemanager.cc中#if WIN32宏開始的地方加入 
#ifndef WIN32_LEAN_AND_MEAN 
#define WIN32_LEAN_AND_MEAN 
#endif 
在在devicemanager.cc中#if WIN32宏結束之前的地方加入 
#include <mmsystem.h> 
最后應該如下: 
#if WIN32
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
#include 
<atlbase.h>
#include 
<dbt.h>
#include 
<strmif.h>  // must come before ks.h
#include <ks.h>
#include 
<ksmedia.h>
#define INITGUID  // For PKEY_AudioEndpoint_GUID
#include 
<mmdeviceapi.h>
#include 
<functiondiscoverykeys_devpkey.h>
#include 
<uuids.h>
#include 
"talk/base/win32.h"  // ToUtf8
#include "talk/base/win32window.h"
#include 
<mmsystem.h>
#elif OSX

Refer to: 
http://code.google.com/p/libjingle/issues/detail?id=89 
12. Added #include <mmsystem.h> to line 42 of talk\session\phone\devicemanager.cc (Just above the end of the windows tag)

http://social.msdn.microsoft.com/Forums/en/vclanguage/thread/671124df-c42b-48b8-a4ac-3413230bc43b
For historical reasons, the Windows.h header defaults to including the Winsock.h header file for Windows Sockets 1.1. The declarations in the Winsock.h header file will conflict with the declarations in the Winsock2.h header file required by Windows Sockets 2.0. The WIN32_LEAN_AND_MEAN macro prevents the Winsock.h from being included by the Windows.h header. 

So, please add: 
#ifndef WIN32_LEAN_AND_MEAN 
#define WIN32_LEAN_AND_MEAN 
#endif 

Before 
"#include <windows.h>". This will tell the compiler to ignore all Winsock 1.1 definitions within windows.h.

3. 
Link錯誤 
________Linking build\dbg\obj\call.exe 
LINK : fatal error LNK1104: cannot open file 'atlthunk.lib' 
解決辦法: 
找到atlbase.h, 注釋掉#pragma comment(lib, "atlthunk.lib") 

Refer to: 
http://code.google.com/p/libjingle/issues/detail?id=89 
13. Found out which version of atlbase.h the compiler was utilizing (In my case, because of the PATH that I set, the version I used was at c:\Program Files\Microsoft Platform SDK\Include\atl.  Edit that file and comment out the line #pragma comment(lib, "atlthunk.lib") which was on or around line 293.

posted on 2012-07-18 17:02 楊粼波 閱讀(2582) 評論(0)  編輯 收藏 引用 所屬分類: 網絡編程C++ 、Windows

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲一区二区欧美日韩| 夜夜狂射影院欧美极品| 久久久久久色| 欧美电影在线观看| 一本色道久久| 国产精品三区www17con| 欧美一站二站| 亚洲国产精品小视频| 一区二区三区国产| 国产日韩亚洲| 欧美国产第一页| 亚洲在线不卡| 欧美国产乱视频| 在线中文字幕日韩| 黄色成人av网站| 欧美精品电影| 欧美在线一二三四区| 91久久久久久久久| 久久国产福利| 99国内精品久久久久久久软件| 国产精品青草久久| 久久综合激情| 亚洲男女自偷自拍| 亚洲国产片色| 久久视频在线视频| 一区二区三区欧美| 狠狠入ady亚洲精品| 欧美视频一区二区在线观看| 久久激情婷婷| 亚洲视频综合| 亚洲国产精品ⅴa在线观看 | 亚洲欧美制服中文字幕| 欧美国产日韩在线| 欧美一区二区三区婷婷月色 | 国产精品国产a级| 麻豆久久久9性大片| 亚洲制服丝袜在线| 亚洲精品字幕| 欧美搞黄网站| 久久一区二区三区四区五区| 亚洲婷婷免费| 亚洲美女在线国产| 狠狠色噜噜狠狠狠狠色吗综合| 欧美日韩综合精品| 欧美高清在线视频| 久久久蜜桃精品 | 欧美中文字幕第一页| 亚洲精品免费一区二区三区| 美女精品网站| 久久久久久久久综合| 午夜精品久久久99热福利| 亚洲精品日韩激情在线电影| 在线欧美小视频| 激情亚洲成人| 国模私拍视频一区| 国产欧美精品va在线观看| 国产精品欧美激情| 欧美视频在线观看一区| 欧美精品在线视频观看| 欧美成人一区二区在线| 久久久久久欧美| 久久久天天操| 久久永久免费| 欧美77777| 欧美激情久久久久久| 欧美成人一区二区三区在线观看| 米奇777超碰欧美日韩亚洲| 久久先锋资源| 欧美 日韩 国产一区二区在线视频| 久久久之久亚州精品露出| 久久精品国产99国产精品| 久久久久久穴| 蜜臀av在线播放一区二区三区| 久久视频在线视频| 美女免费视频一区| 欧美成人四级电影| 欧美精品在线免费播放| 欧美日韩在线精品| 国产精品人人爽人人做我的可爱| 国产精品乱子久久久久| 国产女同一区二区| 黄色一区二区在线观看| 亚洲高清免费在线| 夜夜夜久久久| 亚洲欧美高清| 可以看av的网站久久看| 欧美高清视频免费观看| 亚洲欧洲日夜超级视频| 一区二区日韩欧美| 欧美一区二区三区免费看| 久久久99国产精品免费| 欧美大片18| 国产精品久久91| 韩国三级电影一区二区| 亚洲日本欧美日韩高观看| 亚洲少妇中出一区| 久久久www成人免费毛片麻豆| 免费亚洲一区二区| 亚洲美女在线视频| 欧美一区在线看| 暖暖成人免费视频| 国产精品伦一区| 在线精品国精品国产尤物884a| 亚洲人人精品| 午夜日韩视频| 欧美激情视频一区二区三区在线播放 | 9色精品在线| 久久成人18免费观看| 欧美激情一区二区三区高清视频| 国产精品户外野外| 亚洲黄网站在线观看| 亚洲影院色在线观看免费| 久久嫩草精品久久久久| 亚洲精品之草原avav久久| 亚洲欧美国产视频| 欧美久久综合| 伊人成人在线| 午夜在线观看免费一区| 亚洲国产欧洲综合997久久| 欧美一级在线播放| 欧美伦理91i| 136国产福利精品导航网址应用| 亚洲一区bb| 亚洲国产精品视频| 久久精品成人欧美大片古装| 欧美视频免费看| 91久久精品国产91久久性色tv| 欧美亚洲综合在线| 亚洲美女精品一区| 老色批av在线精品| 国内精品久久久久影院优| 亚洲一区区二区| 亚洲欧洲精品一区二区三区不卡 | 欧美一激情一区二区三区| 亚洲风情亚aⅴ在线发布| 午夜视频精品| 国产精品美女主播| 一区二区三区偷拍| 亚洲国产mv| 另类欧美日韩国产在线| 国产在线精品一区二区夜色| 亚洲欧美日韩国产一区二区三区 | 老司机免费视频一区二区| 国产亚洲免费的视频看| 午夜电影亚洲| 在线一区二区三区四区五区| 欧美高清视频一区二区| 亚洲高清在线精品| 毛片一区二区| 久久久免费精品| 红桃视频亚洲| 另类欧美日韩国产在线| 欧美在线观看www| 国产婷婷色一区二区三区在线| 亚洲欧美日韩国产一区二区| 一级成人国产| 欧美三级资源在线| 亚洲一区二区三区久久| 夜夜精品视频| 国产精品精品视频| 羞羞色国产精品| 亚洲欧美日韩在线播放| 国产免费一区二区三区香蕉精| 先锋影院在线亚洲| 午夜视频一区| 国模一区二区三区| 乱人伦精品视频在线观看| 久久婷婷蜜乳一本欲蜜臀| 亚洲国产精品成人| 亚洲国产精品成人综合| 欧美激情一区二区三区成人| 夜夜嗨av一区二区三区| 99视频一区| 国产精品亚洲不卡a| 久久xxxx| 久久亚洲精品一区二区| 亚洲精品在线观| 一本综合精品| 国产偷国产偷精品高清尤物| 另类欧美日韩国产在线| 欧美电影免费观看大全| 这里是久久伊人| 亚洲曰本av电影| 精品成人一区二区| 亚洲黄色精品| 国产精品日韩在线播放| 久久久久一区二区三区| 免费观看成人| 亚洲欧美激情视频| 久久久久久亚洲精品杨幂换脸| 亚洲黄色小视频| 一本久久综合| 狠狠干狠狠久久| 亚洲破处大片| 国产欧美一区二区三区在线老狼 | 香蕉久久夜色精品国产| 亚洲国产日韩一区二区| 中国日韩欧美久久久久久久久| 国产在线不卡精品| 亚洲精品欧美激情|