yate编译之一

来源:互联网 发布:itudou官方下载mac 编辑:程序博客网 时间:2024/06/05 22:33

  操作系统win7 64 vs2008

1、首先下载yate

      最新源代码 地址 http://docs.yate.ro/wiki/Download

     这里我选择windows版本可以使用svn下载 svn checkout http://voip.null.ro/svn/yate/trunk

     web版本的svn地址 WebSVN  http://yate.null.ro/websvn/listing.php?repname=yate

     其他系统可以自行选择下载

2、下载之后解压文件,看安装文档 地址http://docs.yate.ro/wiki/Compiling_and_Installing_Yate_on_Windows 

      如下我从官网截取的一部分说明

------------------------------------------------------------------------------------------------------------------------------------------------

 Requirements

  • TortoiseSVN
  • at least Visual Studio 2005

Compiling Yate on Windows

To compile please build the "YATE" project - it will build the library and all modules without external dependencies. After taking Yate from SVN ( the URL to use is:http://voip.null.ro/svn/yate/trunk), go to windows\ folder from your "Yate" project where you will find YATE.sln that you have to build in your Visual Studio environment. Select the build type as "Release" or "Debug" in the Build toolbar and build Yate.

The "Extra" project holds modules that have external dependencies. You will not be able to build them without installing extra headers and libraries in your Visual Studio environment:

  • h323chan needs PWLib and OpenH323, you can find more about it in page Installing OpenH323 under Windows;
  • gsmcodec needs a GSM 06.10 static library;
  • Qt4Client needs Qt® and its tools (MOC);
  • mysqldb needs MySQL client headers and libraries;
  • pgsqldb needs PostgreSQL client headers and libraries.

Problems

If you build Yate from sources and Visual Studio crashes or hangs beyond cancellation please clean the build and repeat from scratch. Already compiled object files may be good or may be damaged - just stay on the safe side.

NOTE: Compilation may fail because of WinDNS.h included fromengine/Resolver.cpp - in this case you have two options:

  • Install a newer WinDNS.h - for example one from Platform SDK 2008 - NAPTR records will be resolved on any Windows version that provideswindns.dll
  • Remove the define HAVE_DNS_NAPTR_DATA from the Libyate project - in this case NAPTR can be resolved only onolder versions of Windows and only if they providewindns.dll

Please see the notes at the top of engine/Resolver.cpp for more details.

------------------------------------------------------------------------------------------------------------------------------------------------

3、安装依赖库

    1)安装h323chan 这个需要 PWLib 和 OpenH323 安装说明地址 http://docs.yate.ro/wiki/Installing_OpenH323_under_Windows

       摘录一段说明

-------------------------------------------------------------------------------------------------------------------------------------------------

Prerequisites

The following are needed in order to build Pwlib successfully:

- MSVC 6 or at least VS.net 2003
- The source code for PWLib, which can be downloaded from http://sourceforge.net/project/showfiles.php?group_id=80674 or from CVS
- An archive extractor. Note that it needs to handle end of line characters properly. A proper suggestion might be WinZip

After downloading and unzipping to a directory (let’s call it "\Pwlib\"), there is a little more work to do, by installing GNU Bison and checking Visual C++ header files.

  • Installing GNU Bison
The GNU Bison tool is required for compiling Pwlib. GNU flex is not a necessary requirement, but, if you want to recompile the "asnparser" utility for making changes in the ASN files that come with OpenH323, you will need to install it too.
If you are using MSVC 6, navigate to Tools-Options-Directories and add "C:\Tools" to the executable directory path.
If you use VS.Net, go to Tools-Options-VC++ Directories and add "C:\Tools" to the executable directory path.
  • Check Visual C++ header files
(This section is only for MSVC 6 users. If you are using VS.Net 2003, skip this step.)
When the STL library for MSVC was introduced, some mistakes were made, sufficiently big enough to make Pwlib not to work correctly. These were eventually corrected in the newer, bug-free versions.
These files are included in the Pwlib source directory. Navigate to “\Pwlib\” and run MSVC_UPGRADE.BAT. This is a batch file that searches for the good files and replaces the old ones in the right places.

Configure paths for compilation

The next step is to go to Tools-Options and add the following paths required for compilation:

- pathto\PWLIB\INCLUDE to the Include directory list
- pathto\PWLIB\LIB to the Executable directory list
- pathto\PWLIB\LIB to the Library directory list

Projects that can be built

There are three different projects that can be built as Debug or Release versions, for both MSVC 6 and VS.Net:

  • Console : the basic PWLib library as a static library;
Debug: ptlibsd.lib Release: ptlibs.lib
  • Console Components : contains the basic PWLib library;
Debug: ptclibd.lib Release: ptclib.lib
  • PTLib : contains the basic PWLib library
Debug: ptlibd.lib and ptlibd.dll Release: ptlib.lib and ptlib.dll

--------------------------------------------------------------------------------------------------------------------------------------------------

    2)安装PWLib又需要库GNU Bison 和 flex

             就不要单独去下载了,这里我采用的是合成版本win_flex_bison, 下载地址https://sourceforge.net/projects/winflexbison/

             下载后解决全部放入C:\BuildTools\ 这个目录下,然后在vs2008的bin目录增加这个进去

     3)编译pwlib之前还要做一件事 否则编译不过去,以前是修改winver版本号 最后修改为xp之后501 ,其他编译错误自己应该都可以解决掉

     4)还要准备一个工具就是openssh 这里一定要下载1.0.2之前的版本,否则头文件不匹配,这个可以直接下载Win32OpenSSL-1_0_2c.exe 或者下载源码直接编译

     5)注意pwlib有两个工程一个是vc6.0 一个vs.net工程 可以支持vs2005以后的版本,这里选择vs2005 因为vs2008可以直接进行转换,转换后就可以编译出pwliblib和dll了

继续中,请等待

            

       



0 0