Hi On 2012.02.16 07:01, Benny Prijono wrote: > This is great. I'll make sure to refer to this whenever someone ask > for VS 2010 support. Thanks! No problems at al. Thank You guys. Right now I'm drilling through xcompling for android from Visual Studio with vs-android see: http://code.google.com/p/vs-android/ There are some issues, but I hope I'll be there soon... Benny let me know please, if there is something more to do (scripts, docs/howtos, etc), before I switch to something else... thanks and regards mel > > Best regards, > Benny > > > On Sat, Feb 11, 2012 at 12:21 AM, Miljenko Cvjetko > <mcvjetko at holisticware.net <mailto:mcvjetko at holisticware.net>> wrote: > > Howdy > > OK. I guess this is solved: > > > Visual Studio 2010 VC++ Solution Conversion HowTo > > > Perequisites - Tools > > * XSLT Trafo utility (msxsl.exe) > For changing/replacing/deleting nodes in XML config files of > Visual Studio > TODO: saxon? > * SED (MSDOS port) > for replacements in files > > > Steps old - manual what was done! > > 1. Download sources or grab our zip with everything in it. > 2. Unzip sources with 01-unzip-sources.bat > 3. Backup C/C++ project files with 02-backup-vcproj-files.bat > > foreach (File f = *.vcrpoj in folders) > { > copy(f,f.mc <http://f.mc>++.vcproj); > } > > > 4. Visual Studio 2010 does not support Mobile platforms (Windows > Mobile 5,6, Pocket PC and Smartphone) so remove those from > with the help of XSLT transformation > > remove-mobile-dependencies.xslt > requirements: c:\bin\msxsl.exe > > > 5. Prepare PJSIP for conversion and compilation > * Conversion: > * Compilation: > > copies > config-site-sample.h > to > config-site.h > > > > Conversion > > 1. pjproject-vs8-common-defaults.vsprops - does not contain: > > <UserMacro > Name="TargetCPU" > Value="i386" > /> > > > like > pjproject-vs8-win32-common-defaults.vsprops > Causes Wranings: > > MSB4211: > .\PJSIP\pjproject-1.12\build\vs\pjproject-vs8-win32-common-defaults.props; > The property "TargetCPU" is being set to a value for the first time, but it was already consumed at > ".\PJSIP\pjproject-1.12\build\vs\pjproject-vs8-common-defaults.props". > > > 2. Well known conversion issue and Warning MSB8012 has turned out > as non-problematic! > http://blogs.msdn.com/b/vcblog/archive/2010/03/02/visual-studio-2010-c-project-upgrade-guide.aspx > <http://blogs.msdn.com/b/vcblog/archive/2010/03/02/visual-studio-2010-c-project-upgrade-guide.aspx> > > > MSB8012: > $(TargetPath) ('.\PJSIP\pjproject-1.12\third_party\build\gsm\.\output\libgsmcodec--Win32-vc8-Debug\libgsmcodec.lib') > does not match the Librarian's OutputFile property value '..\..\lib\libgsmcodec-i386-Win32-vc8-Debug.lib' > ('.\SIP\lib\libgsmcodec-i386-Win32-vc8-Debug.lib') in project configuration 'Debug|Win32'. > This may cause your project to build incorrectly. > To correct this, please make sure that $(TargetPath) property value matches the value specified in %(Lib.OutputFile). > > > > Compilation and Linking > > 1. DirectX SDK libray path: > 1. PJSIP 1.12 > Problem - Linker Error: > > Error 78 error LNK1181: cannot open input file > 'dxguid.lib' > D:\SRC\HolisticWare\HolisticWare_VoIP\PJSIP\pjproject-1.12\pjsip-apps\ > build\LINK sample_debug > Error 79 error MSB6006: "link.exe" exited with code 1181. C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Platforms\Win32\Microsoft.Cpp.Win32.Targets 275 6 sample_debug > > > Solution/Workaround: > change > * Property Pages/Linker/General/Additional Library > Directories: > from: > to: "C:\Program Files\Microsoft DirectX SDK (March > 2009)\Lib\x86" > For projects: > o pjmedia_test > o pjsua > o pjsip_test > * Property Pages/Configuration Properties/VC++ > Directories/Library Directories: > from: $(LibraryPath) > to: $(LibraryPath);"C:\Program Files\Microsoft DirectX > SDK (March 2009)\Lib\x86" > For projects: > o samples > o sample_debug > o pjsystest > * PJSIP 2.0 Beta > Problem - Linker Error: > > Error 80 error LNK1104: cannot open file 'dxguid.lib' > D:\SRC\HolisticWare\HolisticWare_VoIP\PJSIP\pjproject-2.0-beta\pjsip-apps\ > build\LINK samples > Error 82 error MSB3073: The command "nmake /NOLOGO /S /f Samples-vc.mak BUILD_MODE=debug VC_VER=8 /a" exited with code 2. C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Microsoft.MakeFile.Targets 43 6 samples > Error 81 error U1077: '"c:\Program Files\Microsoft Visual Studio 10.0\VC\bin\cl.EXE"' : return code '0x2' D:\SRC\HolisticWare\HolisticWare_VoIP\PJSIP\pjproject-2.0-beta\pjsip-apps\build\NMAKE samples > > > Solution/Workaround: > change > o Property Pages/Linker/General/Additional Library > Directories: > from: > to: "C:\Program Files\Microsoft DirectX SDK (March > 2009)\Lib\x86" > For projects: > + sample_debug > o Property Pages/Configuration Properties/VC++ > Directories/Library Directories: > from: $(LibraryPath) > to: $(LibraryPath);"C:\Program Files\Microsoft > DirectX SDK (March 2009)\Lib\x86" > For projects: > + samples > + pjsua > + pjsip_test > + pjsua > + pjmedia_test > + pjsystest > > > Steps - automagic explained > > File list and steps to convert (just start batch files in this order): > > 1. 01-unzip-sources.bat > Hard to say what it does > > echo off > > set ZIP=c:\bin\7za.exe x > > %ZIP% pjproject-1.12.zip > %ZIP% pjproject-2.0-beta.zip > > pause > > > 2. 02-backup-vcproj-files.bat > Backing up *.vcproj files before import/conversion > > @echo off > > setlocal EnableDelayedExpansion > > set SED=c:\bin\sed.exe > > FOR /F "tokens=*" %%s IN ('dir /s /b *.vcproj') DO ( > echo ======================================================================= > set FILENAME_PATH_VCPROJ=%%s > set FILENAME=%%~ns > set FILENAME_W_EXT=%%~nxs > set PATH=%%~ps > > echo FILENAME_PATH_VCPROJ=%%s > echo FILENAME=%%~ns > echo FILENAME_W_EXT=%%~nxs > echo PATH=%%~ps > echo ------------------------------------------------- > set BACKUP=!FILENAME_PATH_VCPROJ:.vcproj=.vcproj.mc <http://vcproj.mc>++.bckp! > > echo BACKUP=!BACKUP! > > echo !FILENAME_PATH_VCPROJ! > echo !BACKUP! > > del !BACKUP! > type !FILENAME_PATH_VCPROJ!> !BACKUP! > > ) > > dir /s /b *.vcproj > > dir /s /b *.bckp > > pause > > > 3. 03-remove-mobile-platforms-from-vcproj-files.bat > Batch script that collects .vcproj files and applies XSLT > trafo on them using msxsl.exe > > @echo off > > setlocal EnableDelayedExpansion > > ::TODO: saxon > set XSLT_TRAFO_UTIL=c:\bin\msxsl.exe > set XSLT_TRAFO=.\03-remove-mobile-platforms-from-vcproj-files.xslt > > > FOR /F "tokens=*" %%s IN ('dir /s /b *.vcproj') DO ( > echo ======================================================================= > set FILENAME_PATH_VCPROJ=%%s > set FILENAME=%%~ns > set FILENAME_W_EXT=%%~nxs > set PATH=%%~ps > > echo FILENAME_PATH_VCPROJ=%%s > echo FILENAME=%%~ns > echo FILENAME_W_EXT=%%~nxs > echo PATH=%%~ps > echo ------------------------------------------------- > > echo !FILENAME_PATH_VCPROJ! > !XSLT_TRAFO_UTIL! ^ > !FILENAME_PATH_VCPROJ! ^ > !XSLT_TRAFO! ^ > -o !FILENAME_PATH_VCPROJ! > > > ) > > pause > > > 4. 03-remove-mobile-platforms-from-vcproj-files.xslt > Actual XSLT > > <?xml version="1.0" encoding="utf-8"?> > <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" <http://www.w3.org/1999/XSL/Transform> > xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl" > > > <!--<xsl:output method="xml" indent="yes"/>--> > > <!-- > --> > <xsl:template match="@* | node()"> > <xsl:copy> > <xsl:apply-templates select="@* | node()"/> > </xsl:copy> > </xsl:template> > > <!--<xsl:template match="AA"> > <xsl:copy> > <xsl:apply-templates select="*[. = 'bar']"/> > </xsl:copy> > </xsl:template>--> > > > <!-- > Empty templates - swallowing nodes > --> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Debug|Windows Mobile 6 Standard SDK (ARMV4I)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Debug|Windows Mobile 6 Professional SDK (ARMV4I)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Debug|Pocket PC 2003 (ARMV4)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Debug|Smartphone 2003 (ARMV4)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Debug|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)']" <mailto:/VisualStudioProject/Configurations/Configuration%5B at Name=%27Debug%7CWindowsMobile5.0PocketPCSDK%28ARMV4I%29%27%5D>/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Debug|Windows Mobile 5.0 Smartphone SDK (ARMV4I)']" <mailto:/VisualStudioProject/Configurations/Configuration%5B at Name=%27Debug%7CWindowsMobile5.0SmartphoneSDK%28ARMV4I%29%27%5D>/> > > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Release|Windows Mobile 6 Standard SDK (ARMV4I)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Release|Windows Mobile 6 Professional SDK (ARMV4I)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Release|Pocket PC 2003 (ARMV4)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Release|Smartphone 2003 (ARMV4)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Release|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)']" <mailto:/VisualStudioProject/Configurations/Configuration%5B at Name=%27Release%7CWindowsMobile5.0PocketPCSDK%28ARMV4I%29%27%5D>/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Release|Windows Mobile 5.0 Smartphone SDK (ARMV4I)']" <mailto:/VisualStudioProject/Configurations/Configuration%5B at Name=%27Release%7CWindowsMobile5.0SmartphoneSDK%28ARMV4I%29%27%5D>/> > > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Debug-Static|Windows Mobile 6 Standard SDK (ARMV4I)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Debug-Static|Windows Mobile 6 Professional SDK (ARMV4I)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Debug-Static|Pocket PC 2003 (ARMV4)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Debug-Static|Smartphone 2003 (ARMV4)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Debug-Static|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)']" <mailto:/VisualStudioProject/Configurations/Configuration%5B at Name=%27Debug-Static%7CWindowsMobile5.0PocketPCSDK%28ARMV4I%29%27%5D>/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Debug-Static|Windows Mobile 5.0 Smartphone SDK (ARMV4I)']" <mailto:/VisualStudioProject/Configurations/Configuration%5B at Name=%27Debug-Static%7CWindowsMobile5.0SmartphoneSDK%28ARMV4I%29%27%5D>/> > > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Debug-Dynamic|Windows Mobile 6 Standard SDK (ARMV4I)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Debug-Dynamic|Windows Mobile 6 Professional SDK (ARMV4I)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Debug-Dynamic|Pocket PC 2003 (ARMV4)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Debug-Dynamic|Smartphone 2003 (ARMV4)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Debug-Dynamic|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)']" <mailto:/VisualStudioProject/Configurations/Configuration%5B at Name=%27Debug-Dynamic%7CWindowsMobile5.0PocketPCSDK%28ARMV4I%29%27%5D>/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Debug-Dynamic|Windows Mobile 5.0 Smartphone SDK (ARMV4I)']" <mailto:/VisualStudioProject/Configurations/Configuration%5B at Name=%27Debug-Dynamic%7CWindowsMobile5.0SmartphoneSDK%28ARMV4I%29%27%5D>/> > > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Release-Dynamic|Windows Mobile 6 Standard SDK (ARMV4I)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Release-Dynamic|Windows Mobile 6 Professional SDK (ARMV4I)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Release-Dynamic|Pocket PC 2003 (ARMV4)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Release-Dynamic|Smartphone 2003 (ARMV4)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Release-Dynamic|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)']" <mailto:/VisualStudioProject/Configurations/Configuration%5B at Name=%27Release-Dynamic%7CWindowsMobile5.0PocketPCSDK%28ARMV4I%29%27%5D>/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Release-Dynamic|Windows Mobile 5.0 Smartphone SDK (ARMV4I)']" <mailto:/VisualStudioProject/Configurations/Configuration%5B at Name=%27Release-Dynamic%7CWindowsMobile5.0SmartphoneSDK%28ARMV4I%29%27%5D>/> > > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Release-Static|Windows Mobile 6 Standard SDK (ARMV4I)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Release-Static|Windows Mobile 6 Professional SDK (ARMV4I)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Release-Static|Pocket PC 2003 (ARMV4)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Release-Static|Smartphone 2003 (ARMV4)']"/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Release-Static|Windows Mobile 5.0 Pocket PC SDK (ARMV4I)']" <mailto:/VisualStudioProject/Configurations/Configuration%5B at Name=%27Release-Static%7CWindowsMobile5.0PocketPCSDK%28ARMV4I%29%27%5D>/> > <xsl:template match="/VisualStudioProject/Configurations/Configuration[@Name='Release-Static|Windows Mobile 5.0 Smartphone SDK (ARMV4I)']" <mailto:/VisualStudioProject/Configurations/Configuration%5B at Name=%27Release-Static%7CWindowsMobile5.0SmartphoneSDK%28ARMV4I%29%27%5D>/> > </xsl:stylesheet> > > > 5. 04-pjsip-prepare.bat > Modifying (sedding with SED) .vsprops files (inserting xml > needed to silence some warnings) > Creating new Solutions that will be modified > Preparing for test compilation config_site.h > > @echo off > > > set SED=c:\bin\sed.exe > > echo============================================================================ > echo sed - inserting into pjproject-vs8-common-defaults.vsprops > echo to silence VS conversion warning MSB4211 > :: -i.bak backup extension for inline replacement > %SED% -f 04-pjsip-prepare-pjproject-vs8-common-defaults.vsprops.sed ^ > .\pjproject-1.12\build\vs\pjproject-vs8-common-defaults.vsprops ^ > >.\pjproject-1.12\build\vs\pjproject-vs8-common-defaults.vsprops.new > > %SED% -f 04-pjsip-prepare-pjproject-vs8-common-defaults.vsprops.sed ^ > .\pjproject-2.0-beta\build\vs\pjproject-vs8-common-defaults.vsprops ^ > >.\pjproject-2.0-beta\build\vs\pjproject-vs8-common-defaults.vsprops.new > > > echo copying backups etc... > type ^ > .\pjproject-1.12\build\vs\pjproject-vs8-common-defaults.vsprops ^ > >.\pjproject-1.12\build\vs\pjproject-vs8-common-defaults.vsprops.bak > > type ^ > .\pjproject-2.0-beta\build\vs\pjproject-vs8-common-defaults.vsprops ^ > >.\pjproject-2.0-beta\build\vs\pjproject-vs8-common-defaults.vsprops.bak > > type ^ > .\pjproject-1.12\build\vs\pjproject-vs8-common-defaults.vsprops.new ^ > >.\pjproject-1.12\build\vs\pjproject-vs8-common-defaults.vsprops > > type ^ > .\pjproject-2.0-beta\build\vs\pjproject-vs8-common-defaults.vsprops.new ^ > >.\pjproject-2.0-beta\build\vs\pjproject-vs8-common-defaults.vsprops > > echo============================================================================ > type ^ > .\pjproject-1.12\build\vs\pjproject-vs8-common-defaults.vsprops > > echo============================================================================ > echo Creating new Soultions > type ^ > pjproject-1.12\pjproject-vs8.sln ^ > >>pjproject-1.12\pjproject-vs10.sln > > type ^ > pjproject-2.0-beta\pjproject-vs8.sln ^ > >>pjproject-2.0-beta\pjproject-vs10.sln > > echo============================================================================ > echo Preparing files for Compilation (config_site.h) > type ^ > pjproject-2.0-beta\pjlib\include\pj\config_site_sample.h ^ > >>pjproject-2.0-beta\pjlib\include\pj\config_site.h > > type ^ > pjproject-1.12\pjlib\include\pj\config_site_sample.h ^ > >>pjproject-1.12\pjlib\include\pj\config_site.h > > echo============================================================================ > > set DEVENV="C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe" > ::%DEVENV% pjproject-1.12\pjproject-vs10.sln > ::%DEVENV% pjproject-2.0-beta\pjproject-vs10.sln > > pause > > > 6. 04-pjsip-prepare-pjproject-vs8-common-defaults.vsprops.sed > > > Screenshots and zipped code: > http://www.holisticware.net/HolisticWare/Know-How/development/visual-studio/visual-studio-2010-vcpp-solution-conversion-howto.aspx > > let me know if something is unclear or wrong.... > > regards > > mel > > > On 2012.02.07 06 <tel:2012.02.07%2006>:19, J?rg Schwarzenberg wrote: >> Hi! >> >>> How far is support for Visual Studio 2010? >> >> On Sat, 22 Oct 2011 ruiyun.wen at gmail.com >> <mailto:ruiyun.wen at gmail.com> posted his vs2010 project files for >> 1.10 in this mailing list. >> >> He said: "No completed test, but build fine." >> >> For the 2.x branch nothing has been posted yet. >> >> >> Best Regards >> J?rg >> >> >> _______________________________________________ >> Visit our blog:http://blog.pjsip.org >> >> pjsip mailing list >> pjsip at lists.pjsip.org <mailto:pjsip at lists.pjsip.org> >> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > > > -- > Miljenko Cvjetko dipl.ing. ET > Direktor/CEO > Projektant rje?enja/Solution Architect > Razvojni programer/Senior developer > Voditelj projekta/Project Manager > > IX ju?na obala 13 > Kajzerica Zagreb > T: 385 1 7775555 > M: 385 91 557 447 3 > F: 385 1 7779556 > e:mcvjetko at holisticware.net <mailto:mcvjetko at holisticware.net> > w:http://www.holisticware.net > > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip at lists.pjsip.org <mailto:pjsip at lists.pjsip.org> > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > > -- Miljenko Cvjetko dipl.ing. ET Direktor/CEO Projektant rjes(enja/Solution Architect Razvojni programer/Senior developer Voditelj projekta/Project Manager IX juz(na obala 13 Kajzerica Zagreb T: 385 1 7775555 M: 385 91 557 447 3 F: 385 1 7779556 e: mcvjetko at holisticware.net w: http://www.holisticware.net -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20120216/fb8a3363/attachment-0001.html>