<html>
<head>
    <base href="https://wiki.asterisk.org/wiki">
            <link rel="stylesheet" href="/wiki/s/2029/1/7/_/styles/combined.css?spaceKey=TOP&amp;forWysiwyg=true" type="text/css">
    </head>
<body style="background: white;" bgcolor="white" class="email-body">
<div id="pageContent">
<div id="notificationFormat">
<div class="wiki-content">
<div class="email">
    <h2><a href="https://wiki.asterisk.org/wiki/display/TOP/Building+-+Windows">Building - Windows</a></h2>
    <h4>Page <b>edited</b> by             <a href="https://wiki.asterisk.org/wiki/display/~khunt">Ken Hunt</a>
    </h4>
        <br/>
                         <h4>Changes (2)</h4>
                                 
    
<div id="page-diffs">
                    <table class="diff" cellpadding="0" cellspacing="0">
    
            <tr><td class="diff-unchanged" >h2.Preface <br> <br></td></tr>
            <tr><td class="diff-changed-lines" >These instructions explain how to build Asterisk SCF on a clean, basic Windows installation. <span class="diff-added-words"style="background-color: #dfd;">This process is for building native (unmanaged) C++ components.</span> <br></td></tr>
            <tr><td class="diff-unchanged" > <br></td></tr>
            <tr><td class="diff-added-lines" style="background-color: #dfd;">{info} <br>All Asterisk SCF core components are currently implemented in C++. For developers who wish to build components in .Net languages, read [Building .Net Components for Asterisk SCF].  <br>{info} <br></td></tr>
            <tr><td class="diff-unchanged" > <br> <br></td></tr>
            <tr><td class="diff-snipped" >...<br></td></tr>
    
            </table>
    </div>                            <h4>Full Content</h4>
                    <div class="notificationGreySide">
        <h2><a name="Building-Windows-Preface"></a>Preface</h2>

<p>These instructions explain how to build Asterisk SCF on a clean, basic Windows installation. This process is for building native (unmanaged) C++ components. </p>

<div class='panelMacro'><table class='infoMacro'><colgroup><col width='24'><col></colgroup><tr><td valign='top'><img src="/wiki/images/icons/emoticons/information.gif" width="16" height="16" align="absmiddle" alt="" border="0"></td><td>All Asterisk SCF core components are currently implemented in C++. For developers who wish to build components in .Net languages, read <a href="/wiki/pages/createpage.action?spaceKey=TOP&amp;title=Building+.Net+Components+for+Asterisk+SCF&amp;linkCreation=true&amp;fromPageId=6586426" class="createlink">Building .Net Components for Asterisk SCF</a>.</td></tr></table></div>


<h2><a name="Building-Windows-SoftwareRequirements"></a>Software Requirements</h2>

<ul>
        <li>msysgit (Git for Windows) - <a href="http://code.google.com/p/msysgit/" class="external-link" rel="nofollow">http://code.google.com/p/msysgit/</a></li>
        <li>CMake - <a href="http://www.cmake.org/cmake/resources/software.html" class="external-link" rel="nofollow">http://www.cmake.org/cmake/resources/software.html</a></li>
        <li>DirectX SDK - <a href="http://msdn.microsoft.com/en-us/directx/aa937788.aspx" class="external-link" rel="nofollow">http://msdn.microsoft.com/en-us/directx/aa937788.aspx</a></li>
        <li>BoostPro Libraries - <a href="http://www.boostpro.com/download/" class="external-link" rel="nofollow">http://www.boostpro.com/download/</a></li>
        <li>Ice Third Party Libraries - <a href="http://www.zeroc.com/download.html" class="external-link" rel="nofollow">http://www.zeroc.com/download.html</a></li>
        <li>pjsip - <a href="http://www.pjsip.org/download.htm" class="external-link" rel="nofollow">http://www.pjsip.org/download.htm</a></li>
        <li>Visual Studio 2008 (or greater) <a href="http://www.microsoft.com/visualstudio/en-us/" class="external-link" rel="nofollow">http://www.microsoft.com/visualstudio/en-us/</a></li>
</ul>


<h2><a name="Building-Windows-InstallationNotes"></a>Installation Notes</h2>

<ul>
        <li><h6><a name="Building-Windows-msysgit"></a>msysgit</h6></li>
        <li><h6><a name="Building-Windows-CMake"></a>CMake</h6></li>
        <li><h6><a name="Building-Windows-DirectXSDK"></a>DirectX SDK</h6></li>
        <li><h6><a name="Building-Windows-BoostProLibraries"></a>BoostPro Libraries</h6></li>
        <li><h6><a name="Building-Windows-IceThirdPartyLibraries"></a>Ice Third Party Libraries</h6></li>
        <li><h6><a name="Building-Windows-Digium%27sIceDistribution"></a>Digium's Ice Distribution</h6>
<p>(Using the git bash shell)</p>
<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent panelContent">
<pre>cd /C/Users/USERNAME
git clone git://git.asterisk.org/asterisk-scf/release/ice
</pre>
</div></div>
<p>(Using the Visual Studio Command Prompt)</p>
<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent panelContent">
<pre>cd \Users\USERNAME
nmake -f Makefile.mak all
nmake -f Makefile.mak install
cd ../py
nmake -f Makefile.mak all
nmake -f Makefile.mak install
</pre>
</div></div></li>
        <li><h6><a name="Building-Windows-AsteriskSCFSource"></a>Asterisk SCF Source</h6>
<p>(Using the git bash shell)</p>
<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent panelContent">
<pre>cd /C/Users/USERNAME
git clone git://git.asterisk.org/asterisk-scf/integration/gitall
cd gitall
./gitall-asterisk-scf.sh
</pre>
</div></div></li>
        <li><h6><a name="Building-Windows-PJSipSource"></a>PJSip Source</h6>
<p>(Using the git bash shell)</p>
<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent panelContent">
<pre>cd /C/Users/USERNAME/gitall
curl -O http://www.pjsip.org/release/1.8/pjproject-1.8.tar.bz2
tar -xvf pjproject-1.8.tar.bz2
mv pjproject-1.8 pjproject
touch pjproject/pjlib/include/pj/config_site.h
</pre>
</div></div>
<p>(Using Windows Explorer)</p>
<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent panelContent">
<pre>In "C:\Users\USERNAME\gitall\pjproject", depending on what version of Visual Studio you're using, open the corresponding pjproject file.

Goto 'Tools' in the menubar and select 'Options'.

Expand 'Projects and Solutions' and select 'VC++ Directories'.

Select 'Include Files' with drop down, make a new entry, and browse the DirectX SDK 'Include' path.

Select 'Library Files' with drop down, make a new entry, and browse the DirectX SDK 'Lib/(arch)' path.

Click 'Ok' and build 'pjsua' under 'Solution Explorer'.
</pre>
</div></div></li>
        <li><h6><a name="Building-Windows-AsteriskSCF"></a>Asterisk SCF</h6>
<p>(Using the git bash shell)</p>
<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent panelContent">
<pre>cd ~
cd gitall
./cmake/init-cmake.sh
</pre>
</div></div>
<p>(Using Windows Explorer)</p>
<div class="preformatted panel" style="border-width: 1px;"><div class="preformattedContent panelContent">
<pre>In "C:\Users\USERNAME\gitall\build", open the 'Asterisk SCF' project file.

Right click on 'ALL_BUILD' under 'Solutions Explorer' and select 'Build'.
</pre>
</div></div></li>
</ul>

    </div>
        <div id="commentsSection" class="wiki-content pageSection">
        <div style="float: right;">
            <a href="https://wiki.asterisk.org/wiki/users/viewnotifications.action" class="grey">Change Notification Preferences</a>
        </div>
        <a href="https://wiki.asterisk.org/wiki/display/TOP/Building+-+Windows">View Online</a>
        |
        <a href="https://wiki.asterisk.org/wiki/pages/diffpagesbyversion.action?pageId=6586426&revisedVersion=15&originalVersion=14">View Changes</a>
                |
        <a href="https://wiki.asterisk.org/wiki/display/TOP/Building+-+Windows?showComments=true&amp;showCommentArea=true#addcomment">Add Comment</a>
            </div>
</div>
</div>
</div>
</div>
</body>
</html>