How to build pjsip in VS2010

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

I have been working with pjsip the last weeks and it was necessary for us to build the pjsip library in VS2010, at the end I have found this solution. I hope this was useful for someone else.


How to build PjSip in Visual Studio 2010. (PJSIP Versi?n 2.3)

1st-> Download the version from Pjsip.org
2nd-> open the solution from visual studio 2012 or 2013. This is because the migration in Visual Studio 2010 does not work fine.
3rd-> Copy the solution to the computer where you have Visual Studio 2010. If you have installed vs2010 and vs2012 in the same computer after the conversion to vs2012,
      vs2010 will tell to you cannot open the solution owing the solution belong to a newer VS version.
4th-> Open the Solution in the computer where you have VS2010. Remember, you have to create config_site.h file in ...\include\pj.
5th-> At this point, if you Build the solution you are going to have the next error in Iphlpapi.h (windows sdk 7.0A header):
      "Error before );"
      If you click over the error, iphlpapi.h file is going to appear in this point
                #if (NTDDI_VERSION >= NTDDI_XP)
                ULONG
                WINAPI
                GetIpStatisticsEx(
                    __out PMIB_IPSTATS Statistics,
                    __in  ULONG Family
                    );
                The error is because NTDDI_XP does not exit. The right define is NTDDI_WINXP, so you must change NTDDI_XP for NTDDI_WINXP. Only in #if (NTDDI_VERSION >= NTDDI_WINXP)
6th->After all of this, the lib is going to be building without problem, but the sample project can have problem with nmake to be built. You can try to solve this problem,
     but for me, it was easier to create a new Win32 c++ project and paste in the .cpp file the code of the sample that you want.

Note: If you want to use the pjsip library within in a C++ managed project you have to write the next lines where  you reference to #include <pjsua-lib/pjsua.h>:

.h file
#pragma once

#include "Stdafx.h"

#ifdef __cplusplus
extern "C"
 {
#endif
#include <pjsua-lib/pjsua.h>

#ifdef __cplusplus
}
#endif
 //TODO: write here your includes
#include "Logs.h"
#include "ImMessage.h"



//TODO: write here your using
using namespace System;
using namespace Runtime::InteropServices;

 #pragma comment (lib, "Ws2_32.lib")

Regards.

 [cid:image001.jpg at 01D04CEB.7E5C2D20]

Antonio Sedano Maestre

NEAT Group - Software Department
Calle del Espino, 14 - Urb. Monteprincipe - 28668 Boadilla del Monte - Madrid
Tlf. 902 365 748    Fax 91 535 08 89
asedano at gruponeat.com<mailto:asedano at gruponeat.com>    www.gruponeat.com<http://www.gruponeat.com/>



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20150220/30c57aa8/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.jpg
Type: image/jpeg
Size: 2033 bytes
Desc: image001.jpg
URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20150220/30c57aa8/attachment.jpg>


[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux