Windowsメモ / UniMRCP / インストール方法


Last update: 2010-08-06 (金) 14:29:39

Windowsメモ/UniMRCP/インストール方法
Tag: Windows UniMRCP

緑文字が入力コマンド。
桃文字が今回の変更箇所。


UniMRCPインストール方法

下記のURLからunimrcp-?.?.?.tar.gzをダウンロードする。
例ではunimrcp-0.6.0.tar.gzを入手したものとする。

http://code.google.com/p/unimrcp/downloads/list

下記のURLからapr-?.?.zipsofia-sip-?.?.?.zipをダウンロードする。
例ではapr-1.3.zipsofia-sip-1.12.10.zipを入手したものとする。

http://www.unimrcp.org/dependencies/

展開&準備

作業フォルダにダウンロードしたファイル(例ではunimrcp-0.6.0.tar.gz)を格納して適当な解凍ツールで解凍する。
作業フォルダは書き込み権限があればどこでもいい。

作業フォルダはc:\user\kanaeとした場合、c:\user\kanae\unimrcp-0.6.0に解凍される。

同様にapr-1.3.zipsofia-sip-1.12.10.zipも解凍する。

Sofia-SIP

sofia-sip-1.12.10.zipc:\user\kanae\sofia-sip-1.12.10に解凍される。
c:\user\kanae\sofia-sip-1.12.10sofia-sipに名前を変えて、c:\user\kanae\unimrcp-0.6.0\libsにコピーする。
c:\user\kanae\unimrcp-0.6.0\libs\sofia-sipが出来る。

APRの準備

apr-1.3.zipc:\user\kanae\apr-1.3に解凍される。
c:\user\kanae\apr-1.3の下のaprapr-iconvapr-utilc:\user\kanae\unimrcp-0.6.0\libsにコピーする。
c:\user\kanae\unimrcp-0.6.0\libs\aprc:\user\kanae\unimrcp-0.6.0\libs\apr-iconvc:\user\kanae\unimrcp-0.6.0\libs\apr-utilが出来る。

構築


Sofia-SIP

c:\user\kanae\unimrcp-0.6.0\libs\sofia-sip\win32\SofiaSIP.slnをVisual C++ (2005)で開いてビルドする。

その際、以下のようなwarningが発生するので、該当の文字をスペース等に置き換える。

2>c:\user\kanae\unimrcp-0.6.0\libs\sofia-sip\libsofia-sip-ua\url\url.c : warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。

このwarningが発生すると思われるファイルは以下の通り。

  • libs\sofia-sip\libsofia-sip-ua\msg\msg_mime.c
  • libs\sofia-sip\libsofia-sip-ua\msg\msg_parser.c
  • libs\sofia-sip\libsofia-sip-ua\nea\nea_server.c
  • libs\sofia-sip\libsofia-sip-ua\nta\sl_utils_log.c
  • libs\sofia-sip\libsofia-sip-ua\nta\sl_utils_print.c
  • libs\sofia-sip\libsofia-sip-ua\nth\http-client.c
  • libs\sofia-sip\libsofia-sip-ua\nua\nua.c
  • libs\sofia-sip\libsofia-sip-ua\sip\sip_basic.c
  • libs\sofia-sip\libsofia-sip-ua\su\memccpy.c
  • libs\sofia-sip\libsofia-sip-ua\su\memcspn.c
  • libs\sofia-sip\libsofia-sip-ua\url\url.c

APR

  1. Visual C++に含まれるwinldap.hwinber.hc:\user\kanae\unimrcp-0.6.0\libs\apr-util\includeにコピーしておく。
  2. c:\user\kanae\unimrcp-0.6.0\libs\apr-util\ldap\apr_ldap.vcprojのライブラリパスを追加する。

c:\user\kanae\unimrcp-0.6.0\libs\apr-util\ldap\apr_ldap.vcprojの例

<?xml version="1.0" encoding="windows-1251"?>
<VisualStudioProject
	ProjectType="Visual C++"
	Version="8,00"
	Name="apr_ldap"
	ProjectGUID="{9417A861-6447-4F7E-B0C1-E5A01E068018}"
	>
	<Platforms>
		<Platform
			Name="Win32"
		/>
	</Platforms>
	<ToolFiles>
	</ToolFiles>
	<Configurations>
		<Configuration
			Name="Debug|Win32"
			OutputDirectory=".\Debug"
			IntermediateDirectory=".\Debug"
			ConfigurationType="2"
			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
			UseOfMFC="0"
			ATLMinimizesCRunTimeLibraryUsage="false"
			>
			<Tool
				Name="VCPreBuildEventTool"
			/>
			<Tool
				Name="VCCustomBuildTool"
			/>
			<Tool
				Name="VCXMLDataGeneratorTool"
			/>
			<Tool
				Name="VCWebServiceProxyGeneratorTool"
			/>
			<Tool
				Name="VCMIDLTool"
				PreprocessorDefinitions="_DEBUG"
				MkTypLibCompatible="true"
				SuppressStartupBanner="true"
				TargetEnvironment="1"
				TypeLibraryName=".\Debug/apr_ldap.tlb"
				HeaderFileName=""
			/>
			<Tool
				Name="VCCLCompilerTool"
				AdditionalOptions="/EHsc "
				Optimization="0"
				AdditionalIncludeDirectories="../include,../../apr/include,../include/private"
				PreprocessorDefinitions="_DEBUG;WIN32;_WINDOWS"
				RuntimeLibrary="3"
				PrecompiledHeaderFile=".\Debug/apr_ldap.pch"
				AssemblerListingLocation=".\Debug/"
				ObjectFile="$(INTDIR)\"
				ProgramDataBaseFileName="$(INTDIR)\apr_ldap_src"
				WarningLevel="3"
				SuppressStartupBanner="true"
				DebugInformationFormat="3"
			/>
			<Tool
				Name="VCManagedResourceCompilerTool"
			/>
			<Tool
				Name="VCResourceCompilerTool"
				PreprocessorDefinitions="DLL_NAME=&quot;apr_ldap&quot;,_DEBUG,APU_VERSION_ONLY"
				Culture="1033"
				AdditionalIncludeDirectories="../include;../../apr/include"
				ResourceOutputFileName="Debug/apr_ldap-1.res"
			/>
			<Tool
				Name="VCPreLinkEventTool"
			/>
			<Tool
				Name="VCLinkerTool"
				AdditionalOptions="/MACHINE:X86"
				AdditionalDependencies="ws2_32.lib mswsock.lib wldap32.lib"
				OutputFile="Debug\apr_ldap-1.dll"
				LinkIncremental="1"
				SuppressStartupBanner="true"

以下の1行を追加

				AdditionalLibraryDirectories="$(VCInstallDir)PlatformSDK\Lib\AMD64"
				GenerateDebugInformation="true"
				ProgramDatabaseFile="Debug\apr_ldap-1.pdb"
				SubSystem="2"
				BaseAddress="0x6EEB0000"
				ImportLibrary="Debug\apr_ldap-1.lib"
			/>
			<Tool
				Name="VCALinkTool"
			/>
			<Tool
				Name="VCManifestTool"
			/>
			<Tool
				Name="VCXDCMakeTool"
			/>
			<Tool
				Name="VCBscMakeTool"
				SuppressStartupBanner="true"
				OutputFile=".\Debug/apr_ldap.bsc"
			/>
			<Tool
				Name="VCFxCopTool"
			/>
			<Tool
				Name="VCAppVerifierTool"
			/>
			<Tool
				Name="VCWebDeploymentTool"
			/>
			<Tool
				Name="VCPostBuildEventTool"
				Description="Embed .manifest"
				CommandLine="if exist $(TargetPath).manifest mt.exe -manifest $(TargetPath).manifest -outputresource:$(TargetPath);2"
			/>
		</Configuration>
		<Configuration
			Name="Release|Win32"
			OutputDirectory=".\Release"
			IntermediateDirectory=".\Release"
			ConfigurationType="2"
			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
			UseOfMFC="0"
			ATLMinimizesCRunTimeLibraryUsage="false"
			>
			<Tool
				Name="VCPreBuildEventTool"
			/>
			<Tool
				Name="VCCustomBuildTool"
			/>
			<Tool
				Name="VCXMLDataGeneratorTool"
			/>
			<Tool
				Name="VCWebServiceProxyGeneratorTool"
			/>
			<Tool
				Name="VCMIDLTool"
				PreprocessorDefinitions="NDEBUG"
				MkTypLibCompatible="true"
				SuppressStartupBanner="true"
				TargetEnvironment="1"
				TypeLibraryName=".\Release/apr_ldap.tlb"
				HeaderFileName=""
			/>
			<Tool
				Name="VCCLCompilerTool"
				Optimization="2"
				InlineFunctionExpansion="1"
				AdditionalIncludeDirectories="../include,../../apr/include,../include/private"
				PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS"
				StringPooling="true"
				RuntimeLibrary="2"
				EnableFunctionLevelLinking="true"
				PrecompiledHeaderFile=".\Release/apr_ldap.pch"
				AssemblerListingLocation=".\Release/"
				ObjectFile="$(INTDIR)\"
				ProgramDataBaseFileName="$(INTDIR)\apr_ldap_src"
				WarningLevel="3"
				SuppressStartupBanner="true"
				DebugInformationFormat="3"
			/>
			<Tool
				Name="VCManagedResourceCompilerTool"
			/>
			<Tool
				Name="VCResourceCompilerTool"
				PreprocessorDefinitions="DLL_NAME=&quot;apr_ldap&quot;,NDEBUG,APU_VERSION_ONLY"
				Culture="1033"
				AdditionalIncludeDirectories="../include;../../apr/include"
				ResourceOutputFileName="Release/apr_ldap-1.res"
			/>
			<Tool
				Name="VCPreLinkEventTool"
			/>
			<Tool
				Name="VCLinkerTool"
				AdditionalOptions="/MACHINE:X86"
				AdditionalDependencies="ws2_32.lib mswsock.lib wldap32.lib"
				OutputFile="Release\apr_ldap-1.dll"
				LinkIncremental="1"
				SuppressStartupBanner="true"
				GenerateDebugInformation="true"
				ProgramDatabaseFile="Release\apr_ldap-1.pdb"
				SubSystem="2"
				OptimizeReferences="2"
				BaseAddress="0x6EEB0000"
				ImportLibrary="Release\apr_ldap-1.lib"
			/>
			<Tool
				Name="VCALinkTool"
			/>
			<Tool
				Name="VCManifestTool"
			/>
			<Tool
				Name="VCXDCMakeTool"
			/>
			<Tool
				Name="VCBscMakeTool"
				SuppressStartupBanner="true"
				OutputFile=".\Release/apr_ldap.bsc"
			/>
			<Tool
				Name="VCFxCopTool"
			/>
			<Tool
				Name="VCAppVerifierTool"
			/>
			<Tool
				Name="VCWebDeploymentTool"
			/>
			<Tool
				Name="VCPostBuildEventTool"
				Description="Embed .manifest"
				CommandLine="if exist $(TargetPath).manifest mt.exe -manifest $(TargetPath).manifest -outputresource:$(TargetPath);2"
			/>
		</Configuration>
	</Configurations>
	<References>
	</References>
	<Files>
		<Filter
			Name="Source Files"
			>
			<File
				RelativePath="apr_ldap_init.c"
				>
				<FileConfiguration
					Name="Debug|Win32"
					>
					<Tool
						Name="VCCLCompilerTool"
						AdditionalIncludeDirectories=""
						PreprocessorDefinitions=""
					/>
				</FileConfiguration>
				<FileConfiguration
					Name="Release|Win32"
					>
					<Tool
						Name="VCCLCompilerTool"
						AdditionalIncludeDirectories=""
						PreprocessorDefinitions=""
					/>
				</FileConfiguration>
			</File>
			<File
				RelativePath="apr_ldap_option.c"
				>
				<FileConfiguration
					Name="Debug|Win32"
					>
					<Tool
						Name="VCCLCompilerTool"
						AdditionalIncludeDirectories=""
						PreprocessorDefinitions=""
					/>
				</FileConfiguration>
				<FileConfiguration
					Name="Release|Win32"
					>
					<Tool
						Name="VCCLCompilerTool"
						AdditionalIncludeDirectories=""
						PreprocessorDefinitions=""
					/>
				</FileConfiguration>
			</File>
			<File
				RelativePath="apr_ldap_rebind.c"
				>
				<FileConfiguration
					Name="Debug|Win32"
					>
					<Tool
						Name="VCCLCompilerTool"
						AdditionalIncludeDirectories=""
						PreprocessorDefinitions=""
					/>
				</FileConfiguration>
				<FileConfiguration
					Name="Release|Win32"
					>
					<Tool
						Name="VCCLCompilerTool"
						AdditionalIncludeDirectories=""
						PreprocessorDefinitions=""
					/>
				</FileConfiguration>
			</File>
		</Filter>
		<Filter
			Name="Public Header Files"
			>
			<File
				RelativePath="..\include\apr_ldap.h"
				>
			</File>
			<File
				RelativePath="..\include\apr_ldap_init.h"
				>
			</File>
			<File
				RelativePath="..\include\apr_ldap_option.h"
				>
			</File>
			<File
				RelativePath="..\include\apr_ldap_rebind.h"
				>
			</File>
			<File
				RelativePath="..\include\apr_ldap_url.h"
				>
			</File>
		</Filter>
		<Filter
			Name="Internal Header Files"
			>
			<File
				RelativePath="..\include\private\apu_config.h"
				>
			</File>
			<File
				RelativePath="..\include\private\apu_internal.h"
				>
			</File>
		</Filter>
		<File
			RelativePath="..\libaprutil.rc"
			>
			<FileConfiguration
				Name="Debug|Win32"
				>
				<Tool
					Name="VCResourceCompilerTool"
					PreprocessorDefinitions=""
					AdditionalIncludeDirectories="\Projects\opensource\unipack\apr-1.3\apr-util"
				/>
			</FileConfiguration>
			<FileConfiguration
				Name="Release|Win32"
				>
				<Tool
					Name="VCResourceCompilerTool"
					PreprocessorDefinitions=""
					AdditionalIncludeDirectories="\Projects\opensource\unipack\apr-1.3\apr-util"
				/>
			</FileConfiguration>
		</File>
	</Files>
	<Globals>
	</Globals>
</VisualStudioProject>

c:\user\kanae\unimrcp-0.6.0\libs\apr-util\aprutil.slnをVisual C++ (2005)で開いてビルドする。

その際、以下のようなエラーが発生するが無視しても問題ない(と思われる)。

12>   ライブラリ Debug\apr_ldap-1.lib とオブジェクト Debug\apr_ldap-1.exp を作成中
12>apr_ldap_init.obj : error LNK2019: 未解決の外部シンボル __imp__ldap_err2stringA が関数 _apr__ldap_ssl_init で参照されました。
12>apr_ldap_option.obj : error LNK2001: 外部シンボル "__imp__ldap_err2stringA" は未解決です。
12>apr_ldap_init.obj : error LNK2019: 未解決の外部シンボル __imp__ldap_sslinitA が関数 _apr__ldap_init で参照されました。
12>apr_ldap_option.obj : error LNK2019: 未解決の外部シンボル __imp__ldap_get_optionA が関数 _apr__ldap_get_option で参照されました。
12>apr_ldap_option.obj : error LNK2019: 未解決の外部シンボル __imp__ldap_set_optionA が関数 _apr__ldap_set_option で参照されました。
12>MSVCRTD.lib(crtdll.obj) : error LNK2019: 未解決の外部シンボル __imp__InterlockedExchange@8 が関数 __CRT_INIT@12 で参照されました。
12>MSVCRTD.lib(crtdll.obj) : error LNK2019: 未解決の外部シンボル __imp__Sleep@4 が関数 __CRT_INIT@12 で参照されました。
12>MSVCRTD.lib(crtdll.obj) : error LNK2019: 未解決の外部シンボル __imp__InterlockedCompareExchange@12 が関数 __CRT_INIT@12 で参照されました。
12>MSVCRTD.lib(gs_support.obj) : error LNK2019: 未解決の外部シンボル __imp__QueryPerformanceCounter@4 が関数 ___security_init_cookie で参照されました。
12>MSVCRTD.lib(gs_support.obj) : error LNK2019: 未解決の外部シンボル __imp__GetTickCount@0 が関数 ___security_init_cookie で参照されました。
12>MSVCRTD.lib(gs_support.obj) : error LNK2019: 未解決の外部シンボル __imp__GetCurrentThreadId@0 が関数 ___security_init_cookie で参照されました。
12>MSVCRTD.lib(gs_support.obj) : error LNK2019: 未解決の外部シンボル __imp__GetCurrentProcessId@0 が関数 ___security_init_cookie で参照されました。
12>MSVCRTD.lib(gs_support.obj) : error LNK2019: 未解決の外部シンボル __imp__GetSystemTimeAsFileTime@4 が関数 ___security_init_cookie で参照されました。
12>MSVCRTD.lib(dllmain.obj) : error LNK2019: 未解決の外部シンボル __imp__DisableThreadLibraryCalls@4 が関数 _DllMain@12 で参照されました。
12>MSVCRTD.lib(gs_report.obj) : error LNK2019: 未解決の外部シンボル __imp__TerminateProcess@8 が関数 ___report_gsfailure で参照されました。
12>MSVCRTD.lib(gs_report.obj) : error LNK2019: 未解決の外部シンボル __imp__GetCurrentProcess@0 が関数 ___report_gsfailure で参照されました。
12>MSVCRTD.lib(gs_report.obj) : error LNK2019: 未解決の外部シンボル __imp__UnhandledExceptionFilter@4 が関数 ___report_gsfailure で参照されました。
12>MSVCRTD.lib(gs_report.obj) : error LNK2019: 未解決の外部シンボル __imp__SetUnhandledExceptionFilter@4 が関数 ___report_gsfailure で参照されました。
12>MSVCRTD.lib(gs_report.obj) : error LNK2019: 未解決の外部シンボル __imp__IsDebuggerPresent@0 が関数 ___report_gsfailure で参照されました。
12>Debug\apr_ldap-1.dll : fatal error LNK1120: 外部参照 18 が未解決です。
12>ビルドログは "file://c:\user\kanae\unimrcp-0.6.0\libs\apr-util\ldap\Debug\BuildLog.htm" に保存されました。
12>apr_ldap - エラー 20、警告 0
========== ビルド: 11 正常終了、1 失敗、0 更新、0 スキップ ==========

UniMRCPの構築

c:\user\kanae\unimrcp-0.6.0\unimrcp.slnをVisual C++ (2005)で開いてビルドする。 c:\user\kanae\unimrcp-0.6.0\debug\bin内にunimrcpclient.exe、unimrcpserver.exeが作成されれば完了。

実行

Linux版?を参照のこと。


コメント

コメントはありません。 コメント/Windowsメモ/UniMRCP/インストール方法?