
ã¯ããã«
VirtualBoxã®WindowsããŒãžã§ã³ïŒä»¥éVBãšåŒã³ãVisual Basicãšæ··åããªãïŒã®ã»ãšãã©ã®ãŠãŒã¶ãŒãèªèããŠããããã«ããªãªãŒã¹4.3.14ã§ãã®ããã°ã©ã ã®éçºè ã¯ãhardeningãïŒãhardeningããšç¿»èš³ã§ããïŒãšåŒã°ããè¿œå ã®ä¿è·ã¡ã«ããºã ãè¿œå ããŸãããä»®æ³ãã·ã³ãåã«èµ·åãæåŠããçµæãšããŠããŠã€ã«ã¹å¯ŸçãœãããŠã§ã¢ãæå·åã¢ãžã¥ãŒã«ã®ãã©ã€ããŒãããã«ã¯Windowsèªäœã®åã ã®æŽæ°ããã°ã©ã ãšã®VBäºææ§ã«é¢ããå€ãã®åé¡ã æè¯ã®å ŽåããŠãŒã¶ãŒã¯ãéçºè ã«éç¥ããåé¡ã®ããããã°ã©ã ãVBã®æ¬¡ã®ãªãªãŒã¹ã§èæ ®ããããŸã§ãçŽ1ãæåŸ ã€å¿ èŠããããŸãã ææªã®å Žåã競åããããã°ã©ã ïŒãŸãã¯ã·ã¹ãã æŽæ°ïŒãåé€ããããVBãããŒãžã§ã³4.3.12ïŒãã®ä¿è·ããªãã£ãæåŸã®ããŒãžã§ã³ïŒã«ããŒã«ããã¯ããå¿ èŠããããŸãã éçºè ãã«ã¹ã¿ã é€å€ãªã¹ããŸãã¯ä¿è·å šäœãç¡å¹ã«ãããªãã·ã§ã³ãè¿œå ããããã®å€æ°ã®ææ¡ã¯ç¡èŠãããŸãã 圌ããç解ã§ããå¯äžã®çãã¯ããä¿è·ãå¿ èŠãªãå Žåã¯ããœãŒã¹ããèªåã§ã³ã³ãã€ã«ãããã§ãã ãŸãããããããªããã°ãªããŸããã
ã¢ã»ã³ããªã®æé ã¯å ¬åŒwikiã«èšèŒãããŠãããšããäºå®ã«ãããããããäžå®å šã§ããæ代é ãã§ãããã¢ã»ã³ããªèªäœã¯å¥åŠãªãšã©ãŒãçæããããšããŠããŸãã ãããã£ãŠãããã§ããã®æé ã®æåŸãŸã§é²ãã ãšãããã®èª¬æã¯å¥ã®èšäºã«ãµãããããšå€æããŸããã ããã¥ã¢ã«ã¯éææŽæ°ãããçŸåšVBããŒãžã§ã³6.0.4ã«é©åããŠããŸããã誰ãã以åã®ããŒãžã§ã³ã®VBãŸãã¯ã©ã€ãã©ãªã®ã¢ã»ã³ãã«ã«èå³ãããå Žåãç·šéã®å±¥æŽããæ å ±ãã¹ã¯ã©ããããããšãã§ããŸãã
å
容
» åé¡ã®å£°æ
» ããã€ãã®èŠå
» 調çç°å¢
» ããã°ã©ã ã®ã€ã³ã¹ããŒã«ã®æ©èœ
» æåŸã®ä»äžã
» VirtualBoxã®ãã«ã
» ããšãã
» ã¢ããªã³
åé¡ã®å£°æ
æåã¯ãå ¬åŒã®é åžããããã€ã³ã¹ããŒã«ãããã®äžã®ãã€ããªãã¡ã€ã«ãåçŽã«çœ®ãæããããã«ãã¿ã¹ã¯ãç°¡çŽ åããæå°éã®åæ§ç¯ã§æžãŸããããšãèšç»ããŠããŸããã ãã ãããã©ã€ããŒãšCOMã³ã³ããŒãã³ããã€ã³ã¹ããŒã«ããã³ç»é²ããããã®ã·ã¹ãã ã¡ã«ããºã ã®äœ¿çšãèæ ®ããŠããªãããããã®ã¢ãããŒãã¯æ©èœããªãããšãå€æããŸããã 詳现ãææ¡ããŠèªååãããã¹ã¯ãªãããäœæããããšãã§ããŸãããç§ã¯ãã倧ããªã²ãŒã ã«èº«ãæããããšã«æ±ºããŸããïŒå ¬åŒã®ãããã«ã§ããã ãè¿ãã匷åã®æ¬ åŠã«ãã£ãŠã®ã¿ç°ãªãæ¬æ Œçãªé åžããããæ§ç¯ããŸãã
åé¡ã100ïŒ è§£æ±ºããããšã¯äžå¯èœã ã£ããšããã«èšããªããã°ãªããŸããã è匱ãªãªã³ã¯ã¯ã²ã¹ãã¢ããªã³ã§ãå ¬åŒããã±ãŒãžã§ã¯WindowsïŒ32ãããããã³64ãããïŒãOS / 2ãLinuxãããã³ãã®ä»ã®* NIXã·ã¹ãã çšã«ã¢ã»ã³ãã«ãããŠããŸãã 察å¿ããMakefileã®ã³ã¡ã³ãã¯ãã¢ã»ã³ããªãå¥ã®ãã·ã³ã§ãªã¢ãŒãã§å®è¡ãããããšã瀺ããŠããããã®ãããªä»®æ³ãã·ã³ã®ã»ãããã»ããã¢ããããããšã«ã¯åŸ®ç¬ãã§ããŸããã§ããã ãã®çµæãè¿œå ãé€ããœãŒã¹ã³ãŒããããã¹ãŠãåéããããšã«ããŸãããè¿œå ã®ISOã€ã¡ãŒãžã¯ãOracleãµãŒããŒããåçŽã«ããŠã³ããŒãããŸãã ã¢ããªã³ã®åŒ·åã®åé¡ã«ã€ããŠã¯ãŸã 調æ»ããŠããŸããããããšãããããã£ããšããŠããããã«ãã£ãŠåŒãèµ·ããããåé¡ã«ã€ããŠã®ã¡ãã»ãŒãžã«åºãããããšã¯ãããŸããã
ããã€ãã®èŠå
â¢ã»ãã¥ãªãã£ã®åé¡
匷åã«ã€ããŠã¯ããã®ããã«è¿œå ããã ãã§ãªããç¹å®ã®VBã®è匱æ§ãéããããšãããã£ãŠããŸãã ãªã©ã¯ã«ã¯ãäœå¹Žãåã«å ¬åŒãã£ã¹ããªãã¥ãŒã·ã§ã³ã§åé¡ãä¿®æ£ããããšããäºå®ã«ãããããããè匱æ§ã®æ§è³ªã詳现ã«èª¬æããããšãæåºãšããŠæåŠããŠããŸãã äžè¬çã«èšãã°ãVBã®å Žåã«ä»ã®äººã®ããã»ã¹ã«ã©ã€ãã©ãªãå°å ¥ããã·ã¹ãã ã¡ã«ããºã ã¯ããã¹ããã·ã³ã§ã®æš©éã®ææ Œã«ã€ãªããå¯èœæ§ããããå®éã«ãã®è匱æ§VBã®ãšã¯ã¹ããã€ãããããšããäºå®ã«ã€ããŠè©±ããŠããã ããã§ãã³ããªãå Žåã¯ãèªã¿ç¶ããããšãã§ããŸãããèŠåããŸããã
â¢ãã©ã€ããŒãžã®çœ²å
ãåãã®ããã«ãVistaããå§ãŸãéåžžã¢ãŒãã®64ãããWindowsã§ã¯ãMicrosoftã«ãŒã蚌ææžã«ã€ãªããä¿¡é Œãã§ãŒã³ãæã€èšŒææžã§çœ²åãããŠããªããã©ã€ããŒã®ããŠã³ããŒããçŠæ¢ãããŠããŸãïŒWindows 10ã§ã¯ãã»ãã¥ã¢ããŒããæå¹ã«ããŠããŒãããå Žåããã©ã€ããŒã¯Microsoftèªèº«ã«ãã£ãŠçŽæ¥çœ²åãããå¿ èŠããããŸãïŒ ãããã£ãŠãå人䜿çšã®ããã«VBãã³ã³ãã€ã«ããåã«ããã®åé¡ã®è§£æ±ºçãæ€èšããå¿ èŠããããŸãïŒèšŒææžãè³Œå ¥ãããããªãŒãã³ãœãŒã¹éçºè åãã®ãã©ã€ããŒçœ²åãµãŒãã¹ã䜿çšãããïŒãã¡ãããæå³çã«è匱ãªãã©ã€ããŒã«çœ²åããããšã«åæããå ŽåïŒããŸãã¯Windowsããã¹ãã¢ãŒãã«ããèªå·±çœ²åãã¹ã蚌ææžã䜿çšããŸãã
次ã«ããã®æåŸã®ãªãã·ã§ã³ã«çŠç¹ãåœãŠãŸãããé©åãªå Žæã§ã¯ãå®å šãªèšŒææžãããå Žåã®æé ã®å€æŽæ¹æ³ã瀺ããŸãã
調çç°å¢
å ¬åŒã«ã¯ããã«ãã·ã¹ãã ã¯WindowsããŒãžã§ã³7ã10ãæšå¥šãããŸããWindows7 SP1 x64ã§è²»ããããã¹ãŠã®äœæ¥ã¯ãä»ã®ããŒãžã§ã³ã®åé¡ã§ã¯çºçããªãã¯ãã§ãã ã¢ã»ã³ããªçšã«å¥ã®ãã·ã³ïŒå®éãŸãã¯ä»®æ³ïŒãéžæããå Žåã¯ãã€ã³ã¿ãŒãããã¢ã¯ã»ã¹ãå¿ èŠãªããšã«æ³šæããŠãã ããã
ã¢ã»ã³ããªç°å¢ãäœæããã«ã¯ãããªã倧ããªããã°ã©ã ã®ã»ãããå¿ èŠã§ãã ããã°ã©ã ã®ç§»æ€å¯èœãªããŒãžã§ã³ãããå Žåã¯ãã€ã³ã¹ããŒã©ãŒã§ã¯ãªãããã䜿çšããŸãã
次ã®äžé£ã®ããã°ã©ã ã¯ãã€ã³ã¹ããŒã©ãŒã®åœ¢åŒã§ã®ã¿æäŸãããŸãïŒå°ãªããšãå ¬åŒã«ã¯ïŒã Visual Studioããã³SDK / WDKã®å Žåã以äžã«èª¬æããã€ã³ã¹ããŒã«æé ã«åŸãããšãéèŠã§ãã ã€ã³ã¹ããŒã«åŸããã¹ãŠã®Microsoft補åã®ãµããŒããªãã·ã§ã³ãæå¹ã«ããŠãWindows UpdateããæŽæ°ããã°ã©ã ãã€ã³ã¹ããŒã«ããããšã匷ããå§ãããŸãã
- Visual Studio 2010 Professional
å®å šãªã¢ã»ã³ããªãå®çŸããã«ã¯ãProfessional以äžã§ãªã2010幎ãå¿ èŠã§ãã 2010 Expressã§ã¯ãããã³ããšã³ããæ©èœããCOM APIãæ§ç¯ããããã«å¿ èŠãªATLã©ã€ãã©ãªã¯ãããŸããã ææã©ã€ã»ã³ã¹ïŒçŸåšã¯è³Œå ¥ããã®ãéåžžã«é£ããïŒã®å¿ èŠæ§ããªããããã«ããããžã§ã¯ããVS 2013ãŸãã¯2015 Community Editionã«ç§»è¡ããããšäœåºŠãè©Šã¿ãŸããããæ®å¿µãªãã圹ã«ç«ã¡ãŸããã§ããã - Windows SDK v7.1
- Visual Studio 2010 SP1
- SDK 7.1çšã®Visual C ++ 2010 SP1ã³ã³ãã€ã©ã¢ããããŒã
- Windowsãã©ã€ããŒéçºãããïŒWDKïŒv7.1
- Windows SDK v8.1
- Activeperl
- ActivePython 2.7
- ã·ã°ãŠã£ã³
ä»ã®ããã°ã©ã ã¯ãã¢ãŒã«ã€ããŸãã¯ãœãŒã¹ã³ãŒãã®åœ¢åŒã§ããŠã³ããŒããããŸãã
- Qt 5.6.3 ïŒãœãŒã¹ïŒ
- MinGW-w64 4.5.4 ïŒ
- SDL v1.2.x ïŒVisual C ++ã®éçºããã±ãŒãžïŒ
- cURL ïŒãœãŒã¹ïŒ
- OpenSSL 1.1.1 ïŒãœãŒã¹ïŒ
- gSOAP 2.8.x ïŒæšå¥š2.8.41以éïŒ
- libvpx 1.7.0 ïŒãœãŒã¹;æ°ããããŒãžã§ã³ã¯VS 2010ããµããŒãããŠããŸããïŒ
- libopus 1.3 ïŒãœãŒã¹ïŒ
- MiKTeXããŒã¿ãã«
- NASM
64ãããã®ããŒã¿ãã«ããŒãžã§ã³ããå§ãããŸãã - WiX
ããŒã¿ãã«ã»ããïŒwix311-binaries.zip
ãšããååã®ã¢ãŒã«ã€ãïŒããå§ãããŸãã
次ã®2ã€ã®ã¢ãŒã«ã€ããå¿ èŠã§ãã
ãªããã¹ãŠã§ããïŒ
ç§ãšåãããã±ãŒãžããã«ãããäºå®ããªãå Žåããããã®ããŒã«ã®äžéšã¯å¿
èŠãªããããããŸããã ããã§ã圌ããæãã圹å²ãç°¡åã«ãªã¹ãããŸãã
- SDK 8.1
SDKããŒãžã§ã³7.1ã¯ã¢ã»ã³ããªã«äœ¿çšãããããŒãžã§ã³8.1ã¯SignToolãŠãŒãã£ãªãã£ã«ã®ã¿å¿ èŠã§ãã7.1ã¯SHA-1 / SHA-256ã®äºé眲åããµããŒãããŠããŸããã SDKããŒãžã§ã³8.1以éãã€ã³ã¹ããŒã«ãããã³ã³ãã¥ãŒã¿ãŒãããå Žåã¯ãããããsigntool.exe
ãŠãŒãã£ãªãã£ãïŒãã¹ãŠã®äŸåé¢ä¿ãšãšãã«ïŒã³ããŒããLocalConfig.kmk
ãã¡ã€ã«ã§å¯Ÿå¿ãããã¹ãæå®ã§ããŸãïŒ ä»¥äžãåç § ïŒã - WiX
ããã¯ãMSIã€ã³ã¹ããŒã©ãŒãäœæããããã®ããŒã«ã§ãã ã€ã³ã¹ããŒã©ãŒã®æçµããŒãžã§ã³ã¯EXEãã¡ã€ã«ã§ãããå éšã«ã¯2ã€ã®MSIãå«ãŸããŠãããããããã§ã¯WiXãå¿ èŠã§ãã ãã€ããªã®åçŽãªã³ã³ãã€ã«ãå¿ èŠãªå Žåããã®ããã±ãŒãžã¯å¿ èŠãããŸããã - Sdl
ãã®ã©ã€ãã©ãªã¯ãæšæºã®VirtualBox.exe
ã·ã§ã«ã®æå°éã®ä»£æ¿ç©ã§ããVBoxSDL.exe
ããã³ããšã³ãã«åºã¥ããŠããŸãã VBoxSDLãå¿ èŠãªãå Žåã¯ãSDLã©ã€ãã©ãªããªããŠãããŸããŸãããããã§ãã¯ããŸããã§ããã - gSOAP
ãã®ã³ã³ããŒãã³ãã¯ãVBãªã¢ãŒãã³ã³ãããŒã«ãµãŒãã¹VBoxWebSrv.exe
ãæ§ç¯ããããã«å¿ èŠã§ãã gSOAPãååšããªãããšã¯é倧ãªãšã©ãŒã§ã¯ãªããVBã¯ãã®ãµãŒãã¹ãªãã§æ£åžžã«ãã«ããããŸãã - libvpx ã libopus
ä»®æ³ãã·ã³ç»é¢ãããããªãèšé²ããããã«äœ¿çšããããããªããã³ãªãŒãã£ãªã³ãŒããã¯ã ããããååšããªãå ŽåãVirtualBoxã¯çµã¿ç«ãŠãããŠæ£ããåäœããèšé²æ©èœã¯åã«ç¡èŠãããŸãïŒãã ããèšé²ãé²è¡äžã§ãããã®ããã«ã¢ãã¡ãŒã·ã§ã³ã衚瀺ããŸãïŒã - ã·ã°ãŠã£ã³
libvpxããã«ãããããã«å¿ èŠã§ãã - MiKTeX
MiKTeXã䜿çšãããšãããã¥ã¢ã«ãPDF圢åŒïŒdoc\UserManual.pdf
ïŒã§ã³ã³ãã€ã«ãããŸãã MiKTeXãååšããªãããšã¯é倧ãªãšã©ãŒã§ã¯ãªããVBã¯PDFããã¥ã¡ã³ããªãã§æ£åžžã«ãã«ããããŸãã - NASM
ãã®ã¢ã»ã³ãã©ã¯ãOpenSSLãæ§ç¯ããããã«äœ¿çšãããŸãã ã¢ã»ã³ããªã¯å€éšã¢ã»ã³ãã©ãªãã§ããµããŒããããŸãããããæé©ãªã³ãŒããäœæãããŸãã
ãã«ãã®åé¡ã®æœåšçãªåå ã远跡ããããããããã«ãäœæããç°å¢ã§ã®ããŒãžã§ã³ãšã€ã³ã¹ããŒã«ãã¹ãå«ããã¹ãŠã®ããŒã«ã®æŠèŠè¡šã以äžã«ç€ºããŸãã ã
{x32|x64}
ããšããæå®ã¯ãããã±ãŒãžã32ãããããŒãžã§ã³ãš64ãããããŒãžã§ã³ã®2ã€ã®ç°ãªããã£ã¬ã¯ããªã«ã€ã³ã¹ããŒã«ãããŠããããšã瀺ããŸãã
ããã°ã©ã | ããŒãžã§ã³ | ã€ã³ã¹ããŒã«ãã¹ |
---|---|---|
ããžã¥ã¢ã«ã¹ã¿ãžãª | 2010ãããã§ãã·ã§ãã« | C:\Program Files (x86)\Microsoft Visual Studio 10.0\
|
SDK | 7.1 | C:\Program Files\Microsoft SDKs\Windows\v7.1\
|
SDK | 8.1 | C:\Programs\DevKits\8.1\
|
Wdk | 7.1.0 | C:\WinDDK\7600.16385.1\
|
Activeperl | 5.26.1ãã«ã2601 x64 | C:\Programs\Perl\
|
ActivePython | 2.7.14.2717 x64 | C:\Programs\Python\
|
WiX | 3.11.1.2318 | C:\Programs\WiX\
|
Qt | 5.6.3 | C:\Programs\Qt\5.6.3-{x32|x64}\
|
MinGW-32 | 4.5.4 | C:\Programs\mingw32\
|
MinGW-64 | 4.5.4 | C:\Programs\mingw64\
|
ã·ã°ãŠã£ã³ | - | C:\Programs\cygwin64\
|
Sdl | 1.2.15 | C:\Programs\SDL\{x32|x64}\
|
cURL | 7.64.1 | C:\Programs\curl\{x32|x64}\
|
Openssl | 1.1.1b | C:\Programs\OpenSSL\{x32|x64}\
|
gSOAP | 2.8.82 | C:\Programs\gSOAP\
|
libvpx | 1.7.0 | C:\Programs\libvpx\
|
ãªããã¹ | 1.3 | C:\Programs\libopus\
|
MiKTeXããŒã¿ãã« | 2.9.6942 | C:\Programs\MiKTeX\
|
NASM | 2.14.02 x64 | C:\Programs\nasm\
|
DocBook XML DTD | 4.5 | C:\Programs\DocBook\xml\
|
DocBook XSLã¹ã¿ã€ã«ã·ãŒã | 1.69.1 | C:\Programs\DocBook\xsl\
|
ããã°ã©ã ã®ã€ã³ã¹ããŒã«ã®æ©èœ
ãã®ã»ã¯ã·ã§ã³ã§ã¯ãæé ãæããã§ãªãå Žåãè¿œå ã®æé ãå¿ èŠãªå Žåã«ãåã ã®ããã±ãŒãžã®ã¬ã€ãã³ã¹ãŸãã¯æ瀺ãæäŸããŸãã
â¢Windows SDK v7.1
ã€ã³ã¹ããŒã«äžã«ãã³ã³ãã€ã©ãšã©ã³ã¿ã€ã ã®å€ãããŒãžã§ã³ãåå ã§åé¡ãçºçããå¯èœæ§ããããŸããVS2010以éã«ã€ã³ã¹ããŒã«ãããæ°ããããŒãžã§ã³ã®äžã«ã€ã³ã¹ããŒã«ããããšã¯ã§ãããã€ã³ã¹ããŒã©ã¯ãããé倧ãªãšã©ãŒãšèŠãªããŸãã 察å¿ãããã§ãã¯ããŒã¯ãç¡å¹ã«ããããæåã«ãMicrosoft Visual C ++ 2010 <arch> Redistributableã ã ãMicrosoft Visual C ++ 2010 <arch> Runtimeã ã ãMicrosoft Visual C ++ Compilers ...ããªã©ã®ååã®ããã±ãŒãžãã·ã¹ãã ããåé€ããå¿ èŠããããŸãïŒSDKã¯å€ãããŒãžã§ã³ã®ããã±ãŒãžãã€ã³ã¹ããŒã«ããŸãããããŠWindows Updateã¯ããããçŸåšã®ãã®ã«æŽæ°ããŸãïŒããŸããMSIããã±ãŒãžã®æçµã¢ã»ã³ããªã«ã¯ããµã³ãã«ããã°ã©ã ïŒWindowsãã€ãã£ãã³ãŒãéçº->ãµã³ãã«ïŒãã€ã³ã¹ããŒã«ããå¿ èŠãããããšã«æ³šæããŠãã ããããããã«ã¯ãã¢ã»ã³ããªã«ãŒã«ã§äœ¿çšãããã¹ã¯ãªãããå«ãŸããŠããŸãã
â¢Windows SDK v8.1
éçºããŒã«ïŒWindows Software Development KitïŒã®ã¿ãã€ã³ã¹ããŒã«ããã ãã§ååã§ããâ¢WDK v7.1
ã¢ã»ã³ããªç°å¢ïŒãã«ãç°å¢ïŒã®ã¿ãã€ã³ã¹ããŒã«ããã ãã§ååã§ããâ¢Qt 5.6.3
Qt 5.7.0以éã2012ããåã®MSVCããŒãžã§ã³ã§ã®ãã«ããµããŒãã¯å»æ¢ãããããã5.6.xã䜿çšããŸããVisual Studio 2010ã®å ¬åŒãã«ãã¯ãªããããæåã«ãœãŒã¹ã³ãŒãããã©ã€ãã©ãªããã«ãããå¿ èŠããããŸãã
- QtãœãŒã¹ã³ãŒããå«ãã¢ãŒã«ã€ãã
C:\Programs\Qt\
ãã£ã¬ã¯ããªã«è§£åããçµæã®qt-everywhere-opensource-src-5.6.3
ãµããã£ã¬ã¯ããªã®ååã5.6.3-src
ãŸãã - 次ã«ãã¢ã»ã³ããªãå®è¡ããã
build-x32
ãã£ã¬ã¯ããªãäœæããŸãã - ã³ã³ãœãŒã«ãéãã次ã®ã³ãã³ããå®è¡ããŠç°å¢ãæºåããŸãã
cd /d C:\Programs\Qt\build-x32 SET QTVER=5.6.3 "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.Cmd" /Release /x86 /win7 COLOR 07 SET QTDIR=C:\Programs\Qt\%QTVER%-x32 SET PATH=%QTDIR%\bin;%PATH% SET QMAKESPEC=win32-msvc2010
color
ã³ãã³ãã¯ãSetEnv.Cmd
ã¹ã¯ãªããã«ãã£ãŠèšå®ããããã©ã³ãã®ç·è²ãç¡å¹ã«ããŸãã -
5.6.3-src
ãã£ã¬ã¯ããªããconfigure.bat
ãå®è¡ãconfigure.bat
ã Qtã®ã»ãšãã©ã¯VBã§ã¯äœ¿çšãããªããããäžèŠãªã³ã³ããŒãã³ããç¡å¹ã«ããããšã§ã¢ã»ã³ããªãå€§å¹ ã«é«éåã§ããŸãããVBã®ãªãã·ã§ã³ã®äžéšã¯éåžžã«ç¶¿å¯ã§ããããšã«æ³šæããŠãã ããã ç¹ã«ãç§ã¯ä»¥äžã«åºããããŸããïŒ- OpenGL ES 2ã¯ãµããŒããããŠããŸããïŒVBã³ã³ãã€ã«ã§ã¯äžéšã®ããããŒãã¡ã€ã«ã衚瀺ã§ããŸããïŒã
- FreeTypeãµããŒããæå¹ã«ããå¿
èŠããããŸãïŒããããªããšãVBã§äœ¿çšããã
qoffscreen
ãã©ã°ã€ã³ããã«ãã§ããŸããïŒã
..\5.6.3-src\configure.bat -prefix c:\Programs\Qt\5.6.3-x32 -mp -opensource -confirm-license -nomake tests -nomake examples -no-compile-examples -release -shared -pch -no-ltcg -accessibility -no-sql-sqlite -opengl desktop -no-openvg -no-nis -no-iconv -no-evdev -no-mtdev -no-inotify -no-eventfd -largefile -no-system-proxies -qt-zlib -qt-pcre -no-icu -qt-libpng -qt-libjpeg -qt-freetype -no-fontconfig -qt-harfbuzz -no-angle -incredibuild-xge -no-plugin-manifests -qmake -qreal double -rtti -strip -no-ssl -no-openssl -no-libproxy -no-dbus -no-audio-backend -no-wmf-backend -no-qml-debug -no-direct2d -directwrite -no-style-fusion -native-gestures -skip qt3d -skip qtactiveqt -skip qtandroidextras -skip qtcanvas3d -skip qtconnectivity -skip qtdeclarative -skip qtdoc -skip qtenginio -skip qtgraphicaleffects -skip qtlocation -skip qtmacextras -skip qtmultimedia -skip qtquickcontrols -skip qtquickcontrols2 -skip qtscript -skip qtsensors -skip qtserialbus -skip qtserialport -skip qtwayland -skip qtwebchannel -skip qtwebengine -skip qtwebsockets -skip qtwebview -skip qtx11extras -skip qtxmlpatterns
- æå®ãããã€ã³ã¹ããŒã«ãã£ã¬ã¯ããªïŒãªãã·ã§ã³
-prefix
ïŒQtã¯ãæ§ææã«çæãããäžéãœãŒã¹ã³ãŒããã¡ã€ã«å ã«æžã蟌ããããã³ã³ãã€ã«ãããã©ã€ãã©ãªã¯ãã®ãã¹ãèšæ¶ããŸãã ããã¯ãèµ·åæã«Qtã¢ããªã±ãŒã·ã§ã³ãããã©ã«ãã§ãã®ãã¹ã«æ²¿ã£ãŠãã©ã°ã€ã³ãæ€çŽ¢ããäœãèŠã€ãããªãå Žåã«ã®ã¿ç¬èªã®ãã£ã¬ã¯ããªã«ç§»åãããšããäºå®ã«ã€ãªãããŸãã ã»ãšãã©ã®å Žåãããã¯æ£åžžã«æ©èœããŸãããã¿ãŒã²ãããã·ã³ã®ãã£ã¬ã¯ããªc:\Programs\Qt\5.6.3-x32
çªç¶c:\Programs\Qt\5.6.3-x32
ã®å¥ã®ã¢ã»ã³ããªïŒä»ã®ãã©ã°ãå«ãïŒã衚瀺ãããå ŽåãVBã¯èµ·åæã«å€±æããŸãã
ãããåé¿ããã«ã¯ã2ã€ã®æ¹æ³ããããŸããã³ã³ãã³ããqt.conf
ãã¡ã€ã«ãVBãã£ã¬ã¯ããªã«è¿œå ããŸãã[Paths] Plugins=.
C:\Programs\Qt\build-x32\qtbase\src\corelib\global\qconfig.cpp
ãããã¯C:\Programs\Qt\build-x32\qtbase\src\corelib\global\qconfig.cpp
ã«ãã£ãŠäœæããã次ã®ãããªè¡ãèŠã€ããŸããstatic const char qt_configure_prefix_path_str [512 + 12] = "qt_prfxpath=c:/Programs/Qt/5.6.3-x32";
static const char qt_configure_prefix_path_str [512 + 12] = "qt_prfxpath=.";
- 次ã«ã
nmake
ã³ãã³ãã§ã¢ã»ã³ããªãå®è¡ããŸã -
nmake install
ã³ãã³ãã§ã³ã³ãã€ã«æžã¿ã©ã€ãã©ãªãã€ã³ã¹ããŒã«ããŸã
次ã«ãæ°ããã³ã³ãœãŒã«ãéããåãæ¹æ³ã§64ãããããŒãžã§ã³ãã³ã³ãã€ã«ããŠã€ã³ã¹ããŒã«ããŸãããx32ãããx64ãã«çœ®ãæããå¿ èŠããããã£ã¬ã¯ããªåã®ã¿ã§ãç°å¢äœæã³ãã³ãã¯æ¬¡ã®ããã«ãªããŸãã
md C:\Programs\Qt\build-x64 cd /d C:\Programs\Qt\build-x64 SET QTVER=5.6.3 "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.Cmd" /Release /x64 /win7 COLOR 07 SET QTDIR=C:\Programs\Qt\%QTVER%-x64 SET PATH=%QTDIR%\bin;%PATH% SET QMAKESPEC=win32-msvc2010
ã€ã³ã¹ããŒã«ãå®äºãããã
build-x32
ã
build-x64
ããã³
5.6.3-src
ãã£ã¬ã¯ããªãåé€ã§ããŸãã
â¢MinGW
32ãããããã³64ãããããŒãžã§ã³ã®ã¢ãŒã«ã€ãã¯ãããããç¬èªã®ãã£ã¬ã¯ããªã«è§£åãããŸããâ¢Cygwin
ã€ã³ã¹ããŒã«äžã«ãmake
ããã³
yasm
ããã±ãŒãžã«æ³šæããå¿ èŠããããŸãã
â¢SDL
-
C:\Programs\SDL\x32\
ããã³C:\Programs\SDL\x64\
2ã€ã®ãã£ã¬ã¯ããªã«SDLã2å解åãC:\Programs\SDL\x64\
ã -
C:\Programs\SDL\x64\lib\x64\
å å®¹å šäœãäžäœã¬ãã«ã«ç§»åãïŒC:\Programs\SDL\x64\lib\
ïŒããã£ã¬ã¯ããªC:\Programs\SDL\x64\lib\x86
ããã³x64
ããã³x64
ãåé€ãC:\Programs\SDL\x64\lib\x86
ã - åæ§ã«ã32ãããããŒãžã§ã³ã®å ŽåïŒ
C:\Programs\SDL\x32\lib\x86\
1ã¬ãã«äžã«ç§»åãããã£ã¬ã¯ããªC:\Programs\SDL\x32\lib\x86
ããã³x64
åé€ãC:\Programs\SDL\x32\lib\x86
ã
â¢NASM
nasm-2.14.02-win64.zip
ã¢ãŒã«ã€ãã
C:\Programs\
ã«
nasm-2.14.02
ãçµæã®
nasm-2.14.02
ååã
nasm
ãŸãã
â¢OpenSSL
- OpenSSLã¢ãŒã«ã€ãã
C:\Programs\OpenSSL\
ãã£ã¬ã¯ããªã«2å解åããçµæã®ãµããã£ã¬ã¯ããªã®ååãããããopenssl-1.1.1b-x32
ããopenssl-1.1.1b-x32
ããã³openssl-1.1.1b-x64
ãŸãã - ã³ã³ãœãŒã«ãéãã32ãããããŒãžã§ã³ãã¢ã»ã³ãã«ããŠã€ã³ã¹ããŒã«ããŸãã
"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.Cmd" /Release /x86 /win7 COLOR 07 set PATH=%PATH%;C:\Programs\nasm cd /d C:\Programs\OpenSSL\openssl-1.1.1b-x32\ perl Configure VC-WIN32 no-shared --prefix=C:\Programs\OpenSSL\x32 --openssldir=C:\Programs\OpenSSL\x32\ssl nmake nmake test nmake install
NASMã䜿çšããããªãå Žåã¯ãããããPATH
å€æ°ãé€å€ããConfigure
åŒã³åºãã«no-asm
ãã©ã¡ãŒã¿ãŒãè¿œå ããŸãã - æ°ããã³ã³ãœãŒã«ãéãã64ãããããŒãžã§ã³ãã¢ã»ã³ãã«ããŠã€ã³ã¹ããŒã«ããŸãã
"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.Cmd" /Release /x64 /win7 COLOR 07 set PATH=%PATH%;C:\Programs\nasm cd /d C:\Programs\OpenSSL\openssl-1.1.1b-x64\ perl Configure VC-WIN64A no-shared --prefix=C:\Programs\OpenSSL\x64 --openssldir=C:\Programs\OpenSSL\x64\ssl nmake nmake test nmake install
- ãã£ã¬ã¯ããª
C:\Programs\OpenSSL\openssl-1.1.1b-x32
ããã³openssl-1.1.1b-x64
ã¯åé€ã§ããŸãã
â¢cURL
- cURLã¢ãŒã«ã€ãã
C:\Programs\curl\
ãã£ã¬ã¯ããªã«curl-7.64.1
ããçµæã®ãµããã£ã¬ã¯ããªã®ååãcurl-7.64.1
ããcurl-7.64.1-x32
ãŸãã - ãšãã£ã¿ãŒã§ãã¡ã€ã«
C:\Programs\curl\curl-7.64.1-x32\winbuild\MakefileBuild.vc
ãC:\Programs\curl\curl-7.64.1-x32\winbuild\MakefileBuild.vc
ã®é åã«ãã©ãŒã ã®æ¡ä»¶ãããã¯ãèŠã€ããŸãã!IF "$(VC)"=="6" CC_NODEBUG = $(CC) /O2 /DNDEBUG CC_DEBUG = $(CC) /Od /Gm /Zi /D_DEBUG /GZ CFLAGS = /I. /I../lib /I../include /nologo /W4 /wd4127 /GX /DWIN32 /YX /FD /c /DBUILDING_LIBCURL !ELSE CC_NODEBUG = $(CC) /O2 /DNDEBUG CC_DEBUG = $(CC) /Od /D_DEBUG /RTC1 /Z7 /LDd CFLAGS = /I. /I ../lib /I../include /nologo /W4 /wd4127 /EHsc /DWIN32 /FD /c /DBUILDING_LIBCURL !ENDIF
CFLAGS = $(CFLAGS) /DCURL_DISABLE_LDAP
- ãã¡ã€ã«
C:\Programs\curl\curl-7.64.1-x32\winbuild\gen_resp_file.bat
ããã®æåã®è¡ïŒ@echo OFF
ïŒã®åŸã«ãã³ãã³ããæ¿å ¥ããŸãïŒcd .
ERRORLEVEL
ã³ãŒãããªã»ããããããšã§ãã ããããªããšããããã³ãŒããèµ·åãããåã§ããã®ã³ãŒãããŒã以å€ã§ããããšãå€æããããããã¡ã€ã«èªäœããªã¿ãŒã³ã³ãŒããå€æŽããã³ãã³ããå®è¡ããªãå ŽåããããŸãã ãã®çµæãnmake
ã¯ããããã¡ã€ã«ããšã©ãŒãè¿ããã¢ã»ã³ããªãäžæ¢ãããšä¿¡ããŠããŸãã -
curl-7.64.1-x32
ãšããååã§curl-7.64.1-x64
curl-7.64.1-x32
ãã£ã¬ã¯ããªã®ã³ããŒãäœæããŸãã - ã³ã³ãœãŒã«ãéãã32ãããããŒãžã§ã³ãåéããå¿
èŠãªãã¡ã€ã«ãã¿ãŒã²ãããã£ã¬ã¯ããªã«ã³ããŒããŸãã
"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.Cmd" /Release /x86 /win7 COLOR 07 cd /d C:\Programs\curl\curl-7.64.1-x32\winbuild md C:\Programs\curl\x32 nmake /f Makefile.vc mode=static WITH_SSL=static DEBUG=no MACHINE=x86 SSL_PATH=C:\Programs\OpenSSL\x32 ENABLE_SSPI=no ENABLE_WINSSL=no ENABLE_IDN=no copy ..\builds\libcurl-vc-x86-release-static-ssl-static-ipv6\lib\libcurl_a.lib ..\..\x32\libcurl.lib xcopy /E ..\builds\libcurl-vc-x86-release-static-ssl-static-ipv6\include\curl ..\..\x32\include\curl\
- æ°ããã³ã³ãœãŒã«ãéããã³ãã³ããå®è¡ããŠã64ãããããŒãžã§ã³ãã¢ã»ã³ãã«ããŸãã
"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.Cmd" /Release /x64 /win7 COLOR 07 cd /d C:\Programs\curl\curl-7.64.1-x64\winbuild md C:\Programs\curl\x64 nmake /f Makefile.vc mode=static WITH_SSL=static DEBUG=no MACHINE=x64 SSL_PATH=C:\Programs\OpenSSL\x64 ENABLE_SSPI=no ENABLE_WINSSL=no ENABLE_IDN=no copy ..\builds\libcurl-vc-x64-release-static-ssl-static-ipv6\lib\libcurl_a.lib ..\..\x64\libcurl.lib xcopy /E ..\builds\libcurl-vc-x64-release-static-ssl-static-ipv6\include\curl ..\..\x64\include\curl\ copy ..\builds\libcurl-vc-x64-release-static-ssl-static-ipv6\bin\curl.exe ..\..\x64\curl.exe
curl.exe
ãã³ããŒããããšã«æ³šæããŠãã ãããã²ã¹ãã¢ããªã³ã®ã€ã¡ãŒãžãããŠã³ããŒãããããã«åŸã§å¿ èŠã«ãªããŸãã - ãã£ã¬ã¯ããª
C:\Programs\curl\curl-7.64.1-x32
ããã³curl-7.64.1-x64
ã¯åé€ã§ããŸãã
â¢libvpx
- libvpxã¢ãŒã«ã€ãã
C:\Programs\libvpx-build\
ãã£ã¬ã¯ããªã«C:\Programs\libvpx-build\
ã - Cygwinãèµ·åããŸããCygwinã§ã¯ãã©ã€ãã©ãªã®æ§æãã¢ã»ã³ããªãããã³ã€ã³ã¹ããŒã«ãå®è¡ããŸãã Visual Studio 2010ãã¿ãŒã²ãããã©ãããã©ãŒã ãšããŠæå®ãããŸããã®å Žåãã¢ã»ã³ããªã·ã¹ãã ã¯ã¢ã»ã³ããªãèªåçã«éå§ããããšã
msbuild.exe
ãmsbuild.exe
ã䜿çšããŠãããè¡ãmsbuild.exe
ããæ¢åã®ç°å¢ã§ã¯æ£ããåäœããŸããã§ããã 代ããã«ãã³ãã³ãã©ã€ã³ããäœæ¥ã§ããã®ã§ãå¥ã®æé ã§Studioã«ããã¢ã»ã³ããªãéå§ããæ¹ãç°¡åã§ããããšãå€æããŸããã ãã ããã°ã©ãã£ã«ã«ç°å¢ã䜿çšããŠãã®æé ãå®è¡ã§ããŸããã誰ããããã«æ £ããŠããå Žåã¯ããã®å Žåããã¹C:\Programs\cygwin64\bin
ãPATH
å€æ°ã«è¿œå ããå¿ èŠããããŸãïŒãŸãã¯äœããã®æ¹æ³ã§ãããžã§ã¯ãã«èšå®ããŸãïŒããã¯ãã¢ã»ã³ããªã«å¿ èŠãªã¢ã»ã³ãã©ãŒyasm.exe
ãããã«ããããã§ãã ãã®ãããCygwinã¿ãŒããã«ã§ã¯ã次ã®ã³ãã³ããå®è¡ããŸããmkdir -p /cygdrive/c/Programs/libvpx-build/build32 cd /cygdrive/c/Programs/libvpx-build/build32 ../libvpx-1.7.0/configure --target=x86-win32-vs10 --disable-install-bins --disable-examples --disable-tools --disable-docs --prefix=../../libvpx make "/cygdrive/c/Program Files (x86)/Microsoft Visual Studio 10.0/Common7/IDE/devenv.com" vpx.sln /Project vpx.vcxproj /Rebuild "Release|Win32" make install mkdir -p /cygdrive/c/Programs/libvpx-build/build64 cd /cygdrive/c/Programs/libvpx-build/build64 ../libvpx-1.7.0/configure --target=x86_64-win64-vs10 --disable-install-bins --disable-examples --disable-tools --disable-docs --prefix=../../libvpx make "/cygdrive/c/Program Files (x86)/Microsoft Visual Studio 10.0/Common7/IDE/devenv.com" vpx.sln /Project vpx.vcxproj /Rebuild "Release|x64" make install
- Cygwinã¿ãŒããã«ãéããŸããããå¿
èŠãããŸããã ãã£ã¬ã¯ããª
C:\Programs\libvpx-build
ã¯åé€ã§ããŸãã
â¢libopus
- opusã¢ãŒã«ã€ãã
C:\Programs\libopus-build\
ãã£ã¬ã¯ããªã«opus-1.3\win32\VS2015
ããopus-1.3\win32\VS2015
ãŸãã - ãã®ãããžã§ã¯ãã¯Visual Studioã®æ°ããããŒãžã§ã³çšã«èšèšãããŠããã2010幎ã«ã¯çµ±åãããªããããããã€ãã®å€æŽãå ããå¿
èŠããããŸãã ããã¯ãIDEãŸãã¯éåžžã®ããã¹ããšãã£ã¿ãŒã®äž¡æ¹ã§å®è¡ã§ããŸãã ç§ã¯2çªç®ã®æ¹æ³ã奜ã¿ãŸããã ãã®ããã
opus.vcxproj
ãã¡ã€ã«ãéãïŒä»ã®ãããžã§ã¯ãã¯å¿ èŠãããŸããïŒã次ã®æäœãå®è¡ããŸãã- ããã¹ããå«ããã¹ãŠã®è¡ãæ€çŽ¢
<PlatformToolset>v140</PlatformToolset>
v140
ããv100
å€æŽããŸãã IDEã§äœæ¥ããŠããå Žåããããžã§ã¯ãèšå®ã®ãã®ãªãã·ã§ã³ã¯[æ§æããããã£]-> [å šè¬]ããŒãžã«ããããPlatrofm ToolsetããšåŒã°ããŸãã ãã€ã¢ãã°ã®äžéšã«ããããããããŠã³ãªã¹ãããæ§æãšã¢ãŒããã¯ãã£ãéžæããããšãå¿ããªãã§ãã ããã - 次ã«ããããã¯ãèŠã€ããŸãã
<ItemDefinitionGroup> <ClCompile>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- ããã¹ããå«ããã¹ãŠã®è¡ãæ€çŽ¢
- ïŒVSã·ã§ã«ãŸãã¯ã³ãã³ãã©ã€ã³ããïŒäž¡æ¹ã®ã¢ãŒããã¯ãã£ã®ãªãªãŒã¹æ§æãã¢ã»ã³ãã«ããã¢ã»ã³ãã«ããã
opus.lib
ã©ã€ãã©ãªãšinclude\
ãµããã£ã¬ã¯ããªãã¿ãŒã²ããã€ã³ã¹ããŒã«ãã£ã¬ã¯ããªã«ã³ããŒããŸããcd /d C:\Programs\libopus-build\opus-1.3\win32\VS2015 md C:\Programs\libopus\lib\x64 md C:\Programs\libopus\lib\Win32 xcopy /EC:\Programs\libopus-build\opus-1.3\include C:\Programs\libopus\include\ "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.com" opus.sln /Project opus.vcxproj /Rebuild "Release|x64" copy x64\Release\opus.lib C:\Programs\libopus\lib\x64\ "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.com" opus.sln /Project opus.vcxproj /Rebuild "Release|Win32" copy Win32\Release\opus.lib C:\Programs\libopus\lib\Win32\
- ãã£ã¬ã¯ããª
C:\Programs\libopus-build
ã¯åé€ã§ããŸãã
â¢gSOAP
ã¢ãŒã«ã€ããéããgsoap-2.8\gsoap
ã«ç§»åããŠããã®ãµããã£ã¬ã¯ããªã®å 容ã
C:\Programs\gSOAP\
ãŸãã OpenSSL 1.1.xã䜿çšããæ£ãããã«ãã«ã¯ãããŒãžã§ã³2.8.41以éãå¿ èŠã§ãã 以åã®ããŒãžã§ã³ã§ã¯ãç¹å¥ãªããããé©çšããå¿ èŠããããŸãïŒèè ïŒ Mattias Ellert ïŒã ããã¯æåã§è¡ãããšãã§ããŸãïŒåœ¢åŒã¯æããã§ãïŒæå®ããããã¡ã€ã«ã1ã€ãã€éãããã€ãã¹èšå·ãä»ããè¡ãåé€ãããã©ã¹èšå·ãä»ããè¡ãè¿œå ããŸããæ®ãã®è¡ã¯ã³ã³ããã¹ãã®æ±ºå®ã«åœ¹ç«ã¡ãŸãïŒããŸãã¯Windowsçšã«ç§»æ€ãããæšæºã®
patch
ãŠãŒãã£ãªãã£ã䜿çšããŠèšå®ã§ããŸã
â¢MiKTeX
-
C:\Programs\MiKTeX\
ã¢ãŒã«ã€ãã解åããŸãã - ã³ã³ãœãŒã«ãéããè¿œå ã¢ãžã¥ãŒã«ã®ã€ã³ã¹ããŒã«ãéå§ããŸãã
"C:\Programs\MiKTeX\texmfs\install\miktex\bin\mpm.exe" --verbose --install=koma-script --install=ucs --install=tabulary --install=url --install=fancybox --install=fancyvrb --install=bera --install=charter --install=mptopdf
â¢DocBook
XML DTDã¢ãŒã«ã€ãã解åããã«ã¯ãåå¥ã®ãã£ã¬ã¯ããªãäœæãããã¹ãŠã®ãã¡ã€ã«ãããã«é 眮ããå¿ èŠããããŸãã XSL Stylesheetsã®ã¢ãŒã«ã€ãã«ã¯æ¢ã«å¿ èŠãªãµããã£ã¬ã¯ããªãå«ãŸããŠãããããããã解åããŠãçµæã®ãµããã£ã¬ã¯ããªã®ååãå€æŽããŸãã
æåŸã®ä»äžã
ã¢ã»ã³ããªã®æºåã¯ã»ãŒå®äºããããã€ãã®æé ãæ®ã£ãŠããŸãã ãŸã è¡ã£ãŠããªãå Žåã¯ãç®çã®ããŒãžã§ã³ã®VirtualBoxã®ãœãŒã¹ã³ãŒããå«ãã¢ãŒã«ã€ããããŠã³ããŒããã䟿å©ãªå Žæã«è§£åããå¿ èŠããããŸãã äœæ¥ãã£ã¬ã¯ããªãšããŠã
C:\Devel\
ãéžæããŸããã ãœãŒã¹ã³ãŒãã¢ãŒã«ã€ãã解åããçµæã®ãã£ã¬ã¯ããªã®ååã
VirtualBox-src
ã
â¢èšŒææžã®è¿œå
å®å šãªèšŒææžããªãå Žåã¯ãå°ãªããšãå人çšã®èšŒææžãäœæããããšããå§ãããŸãïŒçœ²åããªãå Žåããããããã䜿çšããŠãã©ã€ããŒãããŠã³ããŒãããæ¹ãç°¡åã§ãïŒã ãããè¡ãã«ã¯ãææ Œããç¹æš©ã§ã³ã³ãœãŒã«ãéãã次ã®ã³ãã³ããå®è¡ããŠã2ã€ã®èšŒææžãäœæããŠå人ã¹ãã¢ïŒSHA-1ããã³SHA-256ïŒã«è¿œå ããŸãã
"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.Cmd" /Release /x64 /win7 COLOR 07 makecert.exe -a sha1 -r -pe -ss my -n "CN=Roga and Kopyta Ltd" C:\Devel\testcert_1.cer makecert.exe -a sha256 -r -pe -ss my -n "CN=Roga and Kopyta Ltd" C:\Devel\testcert_256.cer certmgr.exe -add C:\Devel\testcert_1.cer -s -r localMachine root certmgr.exe -add C:\Devel\testcert_256.cer -s -r localMachine root
蚌ææžã®ååïŒãRoga and Kopyta LtdãïŒãšãã¡ã€ã«ãžã®ãã¹ã¯ãããªãã®è£éã§éžæã§ããŸãã çæããã蚌ææžã®ããžã¿ã«æçŽãå¿
èŠã§ãã 蚌ææžç®¡çã³ã³ãœãŒã«ãéãïŒ certmgr.msc
å®è¡ïŒãããã§å人蚌ææžã®ãªã¹ããéããŸãã æåã®èšŒææžãRoga and Kopyta Ltdããããã«ã¯ãªãã¯ããéãããã€ã¢ãã°ã§ãæ§æãã¿ãã«ç§»åããŸãã [眲åã¢ã«ãŽãªãºã ]ãã£ãŒã«ãã¯ãsha256RSAãŸãã¯sha1RSAã瀺ããŸãã 次ã«ããªã¹ãã®æåŸã«16é²æ°ã®ã·ãŒã±ã³ã¹ã®åœ¢åŒã®å€ãæã€ãæçŽããã£ãŒã«ãããããŸãã ãã®å€ãã©ããã«ã³ããŒããŸãã 2çªç®ã®èšŒææžã«ã€ããŠãåãæé ãç¹°ãè¿ããŸãã ã©ã¡ããSHA-256ã§ãã©ããSHA-1ã§ãã£ããã«æ³šæããŠãã ããã
â¢xmllintã®ãã«ã
ãã段éã§ã¯ã
xmllint
ã
xmllint
ã å¿ èŠãªãœãŒã¹ããã§ã«VBã¢ãŒã«ã€ãã«ååšãããããèŠä»¶ã®ãªã¹ãã«ããã瀺ããŸããã§ããã ã¢ã»ã³ããªèŠåã¯ããã®ãŠãŒãã£ãªãã£ãèªåçã«æ§ç¯ããããã«èšèšãããŠããªããããèªåã§äœæããå¿ èŠããããŸãã å®å ãã£ã¬ã¯ããªãšããŠ
C:\Programs\xmllint
ãéžæããŸããã
- ãã£ã¬ã¯ããª
C:\Devel\VirtualBox-src\src\libs\libxml2-2.9.4
ãC:\Programs\
C:\Devel\VirtualBox-src\src\libs\libxml2-2.9.4
ãC:\Programs\
ïŒããã¯ãäžéãªããžã§ã¯ããã¡ã€ã«ãVBèªäœã®ã¢ã»ã³ããªã«å¹²æžããªãããã«ããããã«å¿ èŠã§ãïŒã - ã³ã³ãœãŒã«ãéããã³ãã³ããå®è¡ããŸãã
"C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.Cmd" /Release /x64 /win7 COLOR 07 cd /d C:\Programs\libxml2-2.9.4\win32 cscript.exe configure.js cruntime=/MT prefix=C:\Programs\xmllint iconv=no nmake /f Makefile.msvc nmake /f Makefile.msvc install
- ãã£ã¬ã¯ããª
C:\Programs\libxml2-2.9.4
ãŸãã
â¢VBã®ããŸããŸãªç·šé
ã¢ã»ã³ããªãç¶è¡ããåã«ãVirtualBoxèªäœã®ãœãŒã¹ã³ãŒããå€æŽããå¿ èŠããããŸãã ãã¹ãŠã®å€æŽã®å®å šãªã»ãããåå¥ã®ããããšããŠã¬ã€ã¢ãŠãããVBããªãŒã«å šäœãšããŠåçŽã«é©çšã§ããŸãïŒæåã§ããŸãã¯åå¥ã«ããŠã³ããŒãããå¿ èŠããã
patch
ãŠãŒãã£ãªãã£ã䜿çšããŠïŒã
» Vbox_build.patch
ãã¹ãŠãæ£ããåäœããå Žåã 次ã®ã¹ãããã«é²ãããšãã§ããŸãã äœããåãããç¹å®ã®å€æŽã«å¯ŸåŠããå¿ èŠãããå ŽåããŸãã¯è©³çŽ°ã ãã«èå³ãããå Žåãã©ã®å€æŽãè¡ããããããªãããèªãã§ãã ããã ããã§ã®èª¬æã¯ããããã®ããã«ééã£ãé åºã«ãªãå¯èœæ§ãããããšã«æ³šæããŠãã ããã ãã¡ã€ã«ãã¹ã¯ãVBãœãŒã¹ãã£ã¬ã¯ããª
C:\Devel\VirtualBox-src
çžå¯Ÿçã§ãã
-
configure.vbs
ãã¡ã€ã«ïŒ- ã³ãŒãã®è¡ïŒ
if Shell(DosSlashes(strPathVC & "/bin/cl.exe"), True) <> 0 then
if Shell(DosSlashes(strPathVC & "/bin/cl.exe") & " /?", True) <> 0 then
cl.exe
ãåŒã³åºããšãšã©ãŒïŒäžé©åãªã³ã³ãã€ã©ãšããŠè§£éãããïŒãè¿ãããããšãèæ ®ããŠããŸããã ã/?
è¿œå ãã ãå©ããæ±ããŠãã ããããããŠãæ»ãã³ãŒãã¯ãã¯ã誀ãã§ã¯ãããŸããã - 次ã«ã
CheckForMinGW32Sub
é¢æ°ã«ç§»åããŸãã ããã§ã¯ãããŒãžã§ã³3.3.3ã®èšç®ã«ãã32ãããMinGWã®æ£ç¢ºæ§ããã§ãã¯ãããŸãã ãã¡ã€ã«/ãã£ã¬ã¯ããªæ§é ããŸã£ããç°ãªãããŒãžã§ã³4.5.4ã䜿çšããŠãããããé¢æ°å šäœã次ã®ã³ãŒãã«çœ®ãæããããŠããŸãïŒCheckForMinGWw64Sub
ãã移åããŠãå°ãå€æŽããŸããïŒãfunction CheckForMinGW32Sub(strPathMingW32, strPathW32API) g_strSubOutput = "" if strPathW32API = "" then strPathW32API = strPathMingW32 LogPrint "trying: strPathMingW32=" &strPathMingW32 & " strPathW32API=" & strPathW32API if LogFileExists(strPathMingW32, "bin/gcc.exe") _ And LogFileExists(strPathMingW32, "bin/ld.exe") _ And LogFileExists(strPathMingW32, "bin/objdump.exe") _ And LogFileExists(strPathMingW32, "bin/dllwrap.exe") _ And LogFileExists(strPathMingW32, "bin/dlltool.exe") _ And LogFileExists(strPathMingW32, "bin/as.exe") _ And LogFileExists(strPathMingW32, "include/bfd.h") _ And LogFileExists(strPathMingW32, "lib32/libgcc_s.a") _ And LogFileExists(strPathMingW32, "i686-w64-mingw32/lib/dllcrt1.o") _ And LogFileExists(strPathMingW32, "i686-w64-mingw32/lib/dllcrt2.o") _ And LogFileExists(strPathMingW32, "i686-w64-mingw32/lib/libmsvcrt.a") _ And LogFileExists(strPathMingW32, "i686-w64-mingw32/lib/libmsvcr100.a") _ And LogFileExists(strPathMingW32, "i686-w64-mingw32/include/_mingw.h") _ And LogFileExists(strPathMingW32, "i686-w64-mingw32/include/stdint.h") _ And LogFileExists(strPathMingW32, "i686-w64-mingw32/include/windows.h") _ then if Shell(DosSlashes(strPathMingW32 & "/bin/gcc.exe") & " -dumpversion", True) = 0 then dim offVer, iMajor, iMinor, iPatch, strVer ' extract the version. strVer = Trim(Replace(Replace(g_strShellOutput, vbCr, ""), vbLf, "")) if (Mid(strVer, 2, 1) = ".") _ And (Mid(strVer, 4, 1) = ".") then iMajor = Int(Left(strVer, 1)) ' Is Int() the right thing here? I want atoi()!!! iMinor = Int(Mid(strVer, 3, 1)) iPatch = Int(Mid(strVer, 5)) else LogPrint "Malformed version: '" & strVer & "'" strVer = "" end if if strVer <> "" then if (iMajor = 4) And (iMinor >= 4) then CheckForMinGW32Sub = True g_strSubOutput = strVer else LogPrint "MinGW32 version '" & iMajor & "." & iMinor & "." & iPatch & "' is not supported (or configure.vbs failed to parse it correctly)." end if else LogPrint "Couldn't locate the GCC version in the output!" end if else LogPrint "Failed to run gcc.exe!" end if end if end function
- â
CheckForCurlSub
, â :if LogFileExists(strPathCurl, "include/curl/curl.h") _ And LogFindFile(strPathCurl, "libcurl.dll") <> "" _ And LogFindFile(strPathCurl, "libcurl.lib") <> "" _
libcurl.dll
, :if LogFileExists(strPathCurl, "include/curl/curl.h") _ And LogFindFile(strPathCurl, "libcurl.lib") <> "" _
-
CheckForPython
,VBOX_BLD_PYTHON
:CfgPrint "VBOX_BLD_PYTHON := " & strPathPython & "\python.exe"
python.exe
:"/python.exe"
( ; , , ). - Windows- libvpx libopus, . , , , , , . , :
'' ' Checks for libvpx sub CheckForVpx(strOptVpx) dim strPathVpx, str strVpx = "libvpx" PrintHdr strVpx if strOptVpx = "" then MsgError "Invalid path specified!" exit sub end if if g_strTargetArch = "amd64" then strVsBuildArch = "x64" else strVsBuildArch = "Win32" end if strLibPathVpx = "lib/" & strVsBuildArch & "/vpxmd.lib" strPathVpx = "" if LogFileExists(strOptVpx, "include/vpx/vpx_encoder.h") _ And LogFileExists(strOptVpx, strLibPathVpx) _ then strPathVpx = UnixSlashes(PathAbs(strOptVpx)) CfgPrint "SDK_VBOX_VPX_INCS := " & strPathVpx & "/include" CfgPrint "SDK_VBOX_VPX_LIBS := " & strPathVpx & "/" & strLibPathVpx else MsgError "Can't locate " & strVpx & ". " _ & "Please consult the configure.log and the build requirements." exit sub end if PrintResult strVpx, strPathVpx end sub '' ' Checks for libopus sub CheckForOpus(strOptOpus) dim strPathOpus, str strOpus = "libopus" PrintHdr strOpus if strOptOpus = "" then MsgError "Invalid path specified!" exit sub end if if g_strTargetArch = "amd64" then strVsBuildArch = "x64" else strVsBuildArch = "Win32" end if strLibPathOpus = "lib/" & strVsBuildArch & "/opus.lib" strPathOpus = "" if LogFileExists(strOptOpus, "include/opus.h") _ And LogFileExists(strOptOpus, strLibPathOpus) _ then strPathOpus = UnixSlashes(PathAbs(strOptOpus)) CfgPrint "SDK_VBOX_OPUS_INCS := " & strPathOpus & "/include" CfgPrint "SDK_VBOX_OPUS_LIBS := " & strPathOpus & "/" & strLibPathOpus else MsgError "Can't locate " & strOpus & ". " _ & "Please consult the configure.log and the build requirements." exit sub end if PrintResult strOpus, strPathOpus end sub
usage
, , :Print " --with-libvpx=PATH " Print " --with-libopus=PATH "
Main
, â :strOptVpx = "" strOptOpus = ""
select-case
, :case "--with-libvpx" strOptVpx = strPath case "--with-libopus" strOptOpus = strPath
CheckForVpx strOptVpx CheckForOpus strOptOpus
- ã³ãŒãã®è¡ïŒ
- â
src\VBox\Runtime\Makefile.kmk
.VBoxRT_LIBS.win
VBoxRT-x86_LIBS.win
crypt32.lib
bcrypt.lib
. , :VBoxRT_LIBS.win = \ $(PATH_SDK_$(VBOX_WINDDK)_LIB)/vccomsup.lib \ $(PATH_SDK_$(VBOX_WINDDK)_LIB)/wbemuuid.lib \ $(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/delayimp.lib
VBoxRT_LIBS.win = \ $(PATH_SDK_$(VBOX_WINDDK)_LIB)/vccomsup.lib \ $(PATH_SDK_$(VBOX_WINDDK)_LIB)/wbemuuid.lib \ $(PATH_TOOL_$(VBOX_VCC_TOOL)_LIB)/delayimp.lib \ $(PATH_SDK_$(VBOX_WINPSDK)_LIB)/crypt32.lib \ $(PATH_SDK_$(VBOX_WINPSDK)_LIB)/bcrypt.lib
delayimp.lib
!); :VBoxRT-x86_LIBS.win = \ $(PATH_SDK_$(VBOX_WINDDK)_LIB.x86)/vccomsup.lib \ $(PATH_SDK_$(VBOX_WINDDK)_LIB.x86)/wbemuuid.lib \ $(PATH_TOOL_$(VBOX_VCC_TOOL_STEM)X86_LIB)/delayimp.lib
VBoxRT-x86_LIBS.win = \ $(PATH_SDK_$(VBOX_WINDDK)_LIB.x86)/vccomsup.lib \ $(PATH_SDK_$(VBOX_WINDDK)_LIB.x86)/wbemuuid.lib \ $(PATH_TOOL_$(VBOX_VCC_TOOL_STEM)X86_LIB)/delayimp.lib \ $(PATH_SDK_$(VBOX_WINPSDK)_LIB.x86)/crypt32.lib \ $(PATH_SDK_$(VBOX_WINPSDK)_LIB.x86)/bcrypt.lib
VBoxRT.dll
. : Oraclecrypt32.dll
, , , , LIB- . , . , - OpenSSL, , .bcrypt.dll
OpenSSL 1.1.1. - gSOAP 2.8.79 ,
src\VBox\Runtime\r3\win\VBoxRT-openssl-1.1plus.def
, - :OpenSSL_version_num DH_generate_parameters_ex DH_new ASN1_STRING_get0_data
VBoxRT.dll
, OpenSSL.VBoxWebSrv.exe
, gSOAP, , OpenSSL - , OpenSSL ,VBoxRT
. . - , , ISO- . VB , , ISO- .
src\VBox\Makefile.kmk
. :ifdef VBOX_WITH_ADDITIONS include $(PATH_SUB_CURRENT)/Additions/Makefile.kmk endif
ifndef VBOX_WITHOUT_ADDITIONS_ISO $(VBOX_PATH_ADDITIONS_ISO)/VBoxGuestAdditions.iso: $(QUIET)$(MKDIR) -p $(@D) $(VBOX_RETRY) $(TOOL_CURL_FETCH) http://download.virtualbox.org/virtualbox/$(VBOX_VERSION_STRING_RAW)/VBoxGuestAdditions_$(VBOX_VERSION_STRING_RAW).iso -o $@ endif
- 6.0, - , . , Oracle (, *NIX- ), , , , - . , . , - .
doc\manual\Makefile.kmk
:define def_vbox_refentry_to_user_sect1 $$(VBOX_PATH_MANUAL_OUTBASE)/$(1)/user_$(2): $(3) \ $$(VBOX_PATH_MANUAL_SRC)/docbook-refentry-to-manual-sect1.xsl \ $$(VBOX_XML_CATALOG) $$(VBOX_XML_CATALOG_DOCBOOK) $$(VBOX_XML_CATALOG_MANUAL) \ $$(VBOX_VERSION_STAMP) | $$(dir $$@) $$(call MSG_TOOL,xsltproc $$(notdir $$(filter %.xsl,$$^)),,$$(filter %.xml,$$^),$$@) $$(QUIET)$$(RM) -f "$$@" $$(QUIET)$$(call VBOX_XSLTPROC_WITH_CAT) --output $$@ $$(VBOX_PATH_MANUAL_SRC)/docbook-refentry-to-manual-sect1.xsl $$< endef
$$(RM)
:$$(QUIET)$$(MKDIR) -p "$$(@D)"
doc\manual\Config.kmk
. , «» . :VBOX_FILE_URL_MAYBE_SLASH = $(if $(eq $(KBUILD_HOST),win),/,)
VBOX_PATH_MANUAL_SRC_SLASHED = $(subst :/,:///,$(VBOX_PATH_MANUAL_SRC)) VBOX_PATH_MANUAL_OUTBASE_SLASHED = $(subst :/,:///,$(VBOX_PATH_MANUAL_OUTBASE))
$(VBOX_XML_CATALOG): $(MAKEFILE_CURRENT) | $$(dir $$@) $(call MSG_L1,Creating catalog $@) $(QUIET)$(APPEND) -tn "$@" \ '<?xml version="1.0"?>' \ '<!DOCTYPE catalog PUBLIC "-//OASIS//DTD Entity Resolution XML Catalog V1.0//EN" "http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd">' \ '<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">' \ ' <delegatePublic publicIdStartString="-//OASIS/ENTITIES DocBook XML" catalog="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_XML_CATALOG_DOCBOOK)"/>' \ ' <delegatePublic publicIdStartString="-//OASIS/DTD DocBook XML" catalog="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_XML_CATALOG_DOCBOOK)"/>' \ ' <delegateSystem systemIdStartString="http://www.oasis-open.org/docbook/" catalog="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_XML_CATALOG_DOCBOOK)"/>' \ ' <delegateURI uriStartString="http://www.oasis-open.org/docbook/" catalog="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_XML_CATALOG_DOCBOOK)"/>' \ ' <delegateSystem systemIdStartString="$(VBOX_PATH_MANUAL_SRC)" catalog="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_XML_CATALOG_MANUAL)"/>' \ ' <delegateURI uriStartString="$(VBOX_PATH_MANUAL_SRC)" catalog="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_XML_CATALOG_MANUAL)"/>' \ ' <delegateURI uriStartString="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_PATH_MANUAL_SRC)" catalog="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_XML_CATALOG_MANUAL)"/>' \ ' <delegateURI uriStartString="$(VBOX_PATH_MANUAL_OUTBASE)" catalog="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_XML_CATALOG_MANUAL)"/>' \ '</catalog>'
VBOX_PATH_MANUAL_SRC
VBOX_PATH_MANUAL_OUTBASE
, , (file://
). :$(VBOX_XML_CATALOG): $(MAKEFILE_CURRENT) | $$(dir $$@) $(call MSG_L1,Creating catalog $@) $(QUIET)$(APPEND) -tn "$@" \ '<?xml version="1.0"?>' \ '<!DOCTYPE catalog PUBLIC "-//OASIS//DTD Entity Resolution XML Catalog V1.0//EN" "http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd">' \ '<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">' \ ' <delegatePublic publicIdStartString="-//OASIS/ENTITIES DocBook XML" catalog="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_XML_CATALOG_DOCBOOK)"/>' \ ' <delegatePublic publicIdStartString="-//OASIS/DTD DocBook XML" catalog="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_XML_CATALOG_DOCBOOK)"/>' \ ' <delegateSystem systemIdStartString="http://www.oasis-open.org/docbook/" catalog="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_XML_CATALOG_DOCBOOK)"/>' \ ' <delegateURI uriStartString="http://www.oasis-open.org/docbook/" catalog="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_XML_CATALOG_DOCBOOK)"/>' \ ' <delegateSystem systemIdStartString="$(VBOX_PATH_MANUAL_SRC)" catalog="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_XML_CATALOG_MANUAL)"/>' \ ' <delegateSystem systemIdStartString="$(VBOX_PATH_MANUAL_SRC_SLASHED)" catalog="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_XML_CATALOG_MANUAL)"/>' \ ' <delegateURI uriStartString="$(VBOX_PATH_MANUAL_SRC)" catalog="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_XML_CATALOG_MANUAL)"/>' \ ' <delegateURI uriStartString="$(VBOX_PATH_MANUAL_SRC_SLASHED)" catalog="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_XML_CATALOG_MANUAL)"/>' \ ' <delegateURI uriStartString="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_PATH_MANUAL_SRC)" catalog="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_XML_CATALOG_MANUAL)"/>' \ ' <delegateURI uriStartString="$(VBOX_PATH_MANUAL_OUTBASE)" catalog="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_XML_CATALOG_MANUAL)"/>' \ ' <delegateURI uriStartString="$(VBOX_PATH_MANUAL_OUTBASE_SLASHED)" catalog="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_XML_CATALOG_MANUAL)"/>' \ '</catalog>'
$(VBOX_XML_CATALOG_MANUAL): $(MAKEFILE_CURRENT) | $$(dir $$@)
common/
:' <system systemId="$(VBOX_PATH_MANUAL_SRC)/common/oracle-accessibility-en.xml" uri="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_PATH_MANUAL_SRC)/en_US/oracle-accessibility-en.xml"/>' \ ' <system systemId="$(VBOX_PATH_MANUAL_SRC)/common/oracle-support-en.xml" uri="file://$(VBOX_FILE_URL_MAYBE_SLASH)$(VBOX_PATH_MANUAL_SRC)/en_US/oracle-support-en.xml"/>' \
uri
) file-, , , :' <system systemId="$(VBOX_PATH_MANUAL_SRC)/common/oracle-accessibility-en.xml" uri="$(VBOX_PATH_MANUAL_SRC)/en_US/oracle-accessibility-en.xml"/>' \ ' <system systemId="$(VBOX_PATH_MANUAL_SRC_SLASHED)/common/oracle-accessibility-en.xml" uri="$(VBOX_PATH_MANUAL_SRC)/en_US/oracle-accessibility-en.xml"/>' \ ' <system systemId="$(VBOX_PATH_MANUAL_SRC)/common/oracle-support-en.xml" uri="$(VBOX_PATH_MANUAL_SRC)/en_US/oracle-support-en.xml"/>' \ ' <system systemId="$(VBOX_PATH_MANUAL_SRC_SLASHED)/common/oracle-support-en.xml" uri="$(VBOX_PATH_MANUAL_SRC)/en_US/oracle-support-en.xml"/>' \
- VB , (
/IntegrityCheck
). . , VB ( ).Config.kmk
, ( «» -LocalConfig.kmk
; . ). .-
VBOX_INTEGRITY_CHECK
, :if defined(VBOX_SIGNING_MODE) && defined(VBOX_CROSS_CERTIFICATE_FILE) VBOX_INTEGRITY_CHECK := /IntegrityCheck else VBOX_INTEGRITY_CHECK := /IntegrityCheck:NO endif
-
editbin
:$(VBOX_VCC_EDITBIN) /LargeAddressAware /DynamicBase /NxCompat /Release /IntegrityCheck \ /Version:$(VBOX_VERSION_MAJOR)0$(VBOX_VERSION_MINOR).$(VBOX_VERSION_BUILD) \ "$@"
/IntegrityCheck
$(VBOX_INTEGRITY_CHECK)
. - :
ifdef VBOX_SIGNING_MODE TEMPLATE_XXXXXX_LDFLAGS += -IntegrityCheck endif
if defined(VBOX_SIGNING_MODE) && defined(VBOX_WITH_HARDENING) TEMPLATE_XXXXXX_LDFLAGS += -IntegrityCheck endif
XXXXXX
» . â 6 , . , - . , , :if defined(VBOX_SIGNING_MODE) && defined(VBOX_CROSS_CERTIFICATE_FILE)
if defined(VBOX_SIGNING_MODE) && defined(VBOX_CROSS_CERTIFICATE_FILE) && defined(VBOX_WITH_HARDENING)
-
- , , VB.
src\VBox\Installer\win\Scripts\PackDriversForSubmission.cmd
UnpackBlessedDrivers.cmd
, Microsoft Windows 10. CAB- , â ZIP- .PackDriversForSubmission.cmd
;UnpackBlessedDrivers.cmd
signtool
,unzip.exe
, Perl-. . Microsoft, .
⢠VB
VBãœãŒã¹ãå«ããã£ã¬ã¯ããªã®ã«ãŒãã«ã
LocalConfig.kmk
ããŸããŸãªãã¹ãšã¢ã»ã³ããªãã©ã¡ãŒã¿ãæžã蟌ãŸããååã®ãã¡ã€ã«ãäœæããã ãã§ãã次ã®ã³ãŒãããã³ãã¬ãŒããšããŠäœ¿çšã§ããŸãã
ãã®ãã³ãã¬ãŒãã§ä¿®æ£ããããšãããã€ããããŸããVBOX_WITH_HARDENING := VBOX_PATH_WIX := C:\Programs\WiX VBOX_GSOAP_INSTALLED := 1 VBOX_PATH_GSOAP := C:\Programs\gSOAP VBOX_WITH_COMBINED_PACKAGE := 1 VBOX_WITH_QT_PAYLOAD := 1 VBOX_WITH_QTGUI_V5 := 1 VBOX_SIGNING_MODE := release VBOX_CERTIFICATE_SUBJECT_NAME := Roga and Kopyta Ltd VBOX_CERTIFICATE_FINGERPRINT := XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX VBOX_CERTIFICATE_SHA2_SUBJECT_NAME := Roga and Kopyta Ltd VBOX_CERTIFICATE_SHA2_FINGERPRINT := XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX VBOX_TSA_URL := http://timestamp.digicert.com VBOX_TSA_SHA2_URL := http://timestamp.digicert.com VBOX_TSA_URL_ARGS := /t "$(VBOX_TSA_URL)" VBOX_TSA_SHA2_URL_ARGS := /tr "$(VBOX_TSA_SHA2_URL)" /td sha256 VBOX_CROSS_CERTIFICATE_FILE := VBOX_CROSS_CERTIFICATE_FILE_ARGS := VBOX_CROSS_CERTIFICATE_SHA2_FILE := VBOX_CROSS_CERTIFICATE_SHA2_FILE_ARGS := VBOX_PATH_SIGN_TOOLS := C:\Programs\DevKits\8.1\bin\x64 VBOX_PATH_SELFSIGN := C:\WinDDK\7600.16385.1\bin\selfsign VBOX_PATH_WISUMINFO := "C:\Program Files\Microsoft SDKs\Windows\v7.1\Samples\sysmgmt\msi\scripts\WiSumInf.vbs" VBOX_PATH_WISUBSTG := "C:\Program Files\Microsoft SDKs\Windows\v7.1\Samples\sysmgmt\msi\scripts\WiSubStg.vbs" VBOX_WITH_DOCS := 1 VBOX_WITH_DOCS_CHM := 1 VBOX_WITH_DOCS_PACKING := 1 VBOX_WITH_ADDITIONS := VBOX_WITH_ADDITIONS_PACKING := 1 VBOX_HAVE_XMLLINT := 1 VBOX_XMLLINT := C:\Programs\xmllint\bin\xmllint.exe VBOX_PATH_DOCBOOK := C:/Programs/DocBook/xsl VBOX_PATH_DOCBOOK_DTD := C:/Programs/DocBook/xml VBOX_PATH_HTML_HELP_WORKSHOP := "C:\Program Files (x86)\HTML Help Workshop" VBOX_PDFLATEX := C:\Programs\MiKTeX\texmfs\install\miktex\bin\pdflatex.exe VBOX_PDFLATEX_CMD := $(VBOX_PDFLATEX) -halt-on-error -interaction batchmode TOOL_CURL_FETCH := C:\Programs\curl\x64\curl.exe PATH_TOOL_NASM := C:/Programs/nasm VBOX_INSTALLER_LANGUAGES := en_US VBOX_WITH_TESTCASES := VBOX_WITH_VALIDATIONKIT := VBOX_WITH_VBOX_IMG := 1 VBOX_WITH_RECORDING := 1 VBOX_WITH_AUDIO_RECORDING := 1 SDK_VBOX_VPX := 1 VBOX_WITH_LIBVPX := 1 SDK_VBOX_OPUS := 1 VBOX_WITH_LIBOPUS := 1 VBOX_BUILD_PUBLISHER := _OSE
- å€æ°
VBOX_CERTIFICATE_SUBJECT_NAME
ã§VBOX_CERTIFICATE_SHA2_SUBJECT_NAME
ã¯ãSHA-1ãšSHA-256ã«ãããã眲åããããã«äœ¿çšãã蚌ææžã®ååãæå®ããå¿ èŠããããŸãã - å€æ°ã«
VBOX_CERTIFICATE_FINGERPRINT
ãVBOX_CERTIFICATE_SHA2_FINGERPRINT
以åã«èšŒææžç®¡çã³ã³ãœãŒã«ããã³ããŒããããã£ã³ã¬ãŒããªã³ããæžãçããŸãã - , ,
VBOX_CROSS_CERTIFICATE_FILE_ARGS
VBOX_CROSS_CERTIFICATE_SHA2_FILE_ARGS
,VBOX_CROSS_CERTIFICATE_FILE
VBOX_CROSS_CERTIFICATE_SHA2_FILE
( «_ARGS
») - ( ). , , Microsoft . - , , Ì
signtool
.Config.kmk
«Code Signing» , . - - , , . (/), : .
- WiX . , ;
bin
. , , 8.3.dir /x
. , , . - ãã®å€æ°
VBOX_BUILD_PUBLISHER
ã¯ãããŒãžã§ã³çªå·ã«ãã©ã³ããµãã£ãã¯ã¹ãèšå®ããŸããããã©ã«ãã§ã¯ãããã¯ã_OSEãã§ãïŒã€ãŸãã補åã®ããŒãžã§ã³ã¯ã6.0.4_OSEãã§ãïŒãããã§ããµãã£ãã¯ã¹ãå®å šã«åé€ããããã«ãä»ã®äœããŸãã¯ç©ºã®è¡ã«å€æŽããããšãã§ããŸãïŒå€æ°ãååšããªãå Žåããµãã£ãã¯ã¹ã_OSEããé©çšãããŸãïŒã
VirtualBoxããŸãšãã
ããŠãæåŸã«ãVirtualBoxèªäœã®çµã¿ç«ãŠãéå§ã§ããŸããè€æ°ã®ã¢ãŒããã¯ãã£åãã«äžŠè¡ããŠãã«ãããå Žåããã®ç¿æ £ãäžæçã«æŸæ£ããå¿ èŠããããŸãïŒãŸãã¯ãœãŒã¹ããªãŒã®2ã€ã®ã³ããŒãåéããŸãïŒïŒããã§ã¯ããã«ããéå§ããåã«åçæããå¿ èŠãããå ±éã®æ§æãã¡ã€ã«ã䜿çšããŸãããŸãã64ãããã³ã³ãã€ã«äžã«çªç¶32ãããã©ã€ãã©ãªãžã®ãã¹ãå«ãŸããå Žåãã³ã³ãã€ã©ã¯ããŸãæ°ã«ããŸããã
Windows 10ã®ãã©ã€ããŒã«çœ²åããã«ã¯ãè¿œå ã®æé ãå®è¡ããå¿ èŠããããŸãããã®èª¬æã¯ãã¡ã€ã³ã®æé ã®åŸã«èšèŒãããŠããŸãã
- 64ãããããŒãžã§ã³ã®æ§ç¯ããå§ããŸããã³ã³ãœãŒã«ãéããã³ãã³ããå®è¡ããŸãã
cd /d C:\Devel\VirtualBox-src "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.Cmd" /Release /x64 /win7 COLOR 07 set BUILD_TARGET_ARCH=amd64 cscript configure.vbs --with-DDK=C:\WinDDK\7600.16385.1 --with-MinGW-w64=C:\Programs\mingw64 --with-MinGW32=C:\Programs\mingw32 --with-libSDL=C:\Programs\SDL\x64 --with-openssl=C:\Programs\OpenSSL\x64 --with-openssl32=C:\Programs\OpenSSL\x32 --with-libcurl=C:\Programs\curl\x64 --with-libcurl32=C:\Programs\curl\x32 --with-Qt5=C:\Programs\Qt\5.6.3-x64 --with-libvpx=C:\Programs\libvpx --with-libopus=C:\Programs\libopus --with-python=C:/Programs/Python env.bat kmk kmk C:/Devel/VirtualBox-src/out/win.x86/release/obj/Installer/VirtualBox-6.0.4_OSE-r128164-MultiArch_amd64.msi
configure.vbs
(AutoConfig.kmk
env.bat
).kmk
out\win.amd64\bin\
. MSI-. :- .
kmk
. - 64- ,
out\win.x86\âŠ
, 32- . - , «_OSE» MSI- ,
VBOX_BUILD_PUBLISHER
. - MSI- (128164)
Config.kmk
VBOX_SVN_REV_FALLBACK
. , (, 6.0.4 128413). , .
- .
- 32- . , :
cd /d C:\Devel\VirtualBox-src "C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\SetEnv.Cmd" /Release /x86 /win7 COLOR 07 set BUILD_TARGET_ARCH=x86 cscript configure.vbs --with-DDK=C:\WinDDK\7600.16385.1 --with-MinGW-w64=C:\Programs\mingw64 --with-MinGW32=C:\Programs\mingw32 --with-libSDL=C:\Programs\SDL\x32 --with-openssl=C:\Programs\OpenSSL\x32 --with-libcurl=C:\Programs\curl\x32 --with-Qt5=C:\Programs\Qt\5.6.3-x32 --with-libvpx=C:\Programs\libvpx --with-libopus=C:\Programs\libopus --with-python=C:/Programs/Python env.bat kmk kmk C:/Devel/VirtualBox-src/out/win.x86/release/bin/VirtualBox-6.0.4_OSE-r128164-MultiArch.exe
,EXE
,MSI
. , 32- MSI- , . - Windows 10, Secure Boot. Microsoft. , , VB.
- : EV (Extended Validation), . , Hardware Dev Center .
- 64- (
kmk
, ) CAB- . VB ,out\win.amd64\release\repack\
. :PackDriversForSubmission.cmd -x
VBoxDrivers-6.0.4r128164-amd64.cab
. - CAB- EV-. Microsoft Hardware Dev Center , , ( 64-), .
- ZIP-, Microsoft, CAT- . -, .
- . ,
out\win.amd64\release\bin\
, .out\win.amd64\release\repack\
, :set _MY_SIGNTOOL=C:\Programs\DevKits\8.1\bin\x64\signtool.exe UnpackBlessedDrivers.cmd -n -i path\to\signed.zip
signtool.exe
ZIP-, , . -
kmk
, MSI-. , , . - , , 32- :
kmk
out\win.x86\release\repack\
, CAB-, , Microsoft ( 32- ), , .
ç§ãããªããäœãæ··åããŠããªãå Žåãããããã¹ãŠã®ããããšå転ã®åŸã«ãVirtualBoxã€ã³ã¹ããŒã©ãŒãååŸããå¿ èŠããããŸããããã¯ãå®è¡å¯èœãã¡ã€ã«ã¢ã€ã³ã³ããããã°ã©ã ã«ã€ããŠããã€ã¢ãã°ã®ç»åããããŠãã¡ããç¡å¹åããã匷åã ããOracleããŒãžã§ã³ãšç°ãªããŸãå¿ èŠã«å¿ããŠãã¢ã€ã³ã³ãšç»åãå€æŽã§ããŸãããããã¯å¥ã®ãã£ã¹ã«ãã·ã§ã³ã®ãããã¯ã§ãã
䟿å®äžãããã2ã€ã®ã³ãã³ããã§ãŒã³ã®èµ·åã1ã€ã®ããããã¡ã€ã«ã«æžãããŸãããããã±ãŒãžãå®æçã«åæ§ç¯ããå¿ èŠãããå Žåã¯ã䜿çšããæ¹ã䟿å©ã§ãã
çµæã®ãã£ã¹ããªãã¥ãŒã·ã§ã³ãèªå·±çœ²å蚌ææžã§ã€ã³ã¹ããŒã«ããããšã«ã€ããŠãã»ãã®å°ãèšèãè¿œå ããŸããææ°ã®ã·ã¹ãã ïŒWindows 8/10ïŒã§ã¯ããã¹ãã¢ãŒããæå¹ã«ããã ãã§ã¯äžååã§ãããã€ã³ã¹ããŒã«äžã«ç¡å¹ãªçœ²åã«é¢ããã¡ãã»ãŒãžã衚瀺ãããŸãããã®åé¡ãåé¿ããã«ã¯ã䜿çšæžã¿ã®èšŒææžãã«ãŒãã¹ãã¢ã«è¿œå ããå¿ èŠããããŸãã
- ããŠã³ããŒãããé åžãã¡ã€ã«ã®ããããã£ãéããŸããå³ã¯ãªãã¯â[ ãããã㣠]ãã¯ãªãã¯ããŠã[ ããžã¿ã«çœ²å ]ã¿ãã«ç§»åããŸããRogaãšKopyta Ltdããã®2ã€ã®çœ²åïŒsha1ãšsha256ããããŸããæåãéžæããŠã詳现ãã¯ãªãã¯ããŸãã
- éãããã€ã¢ãã°ã§ã蚌ææžã®è¡šç€ºãã¿ã³ãã¯ãªãã¯ããŸãã
- æ°ãããã€ã¢ãã°ã§ã蚌ææžã®ã€ã³ã¹ããŒã«ãã¯ãªãã¯ããŸãã
- « », . UAC-. « », « ». , . .
- , , sha256, 2â4.
- , . .
ããšãã
èšäºã®ãµã€ãºã¯ç§ã«ãšã£ãŠé©ãã§ãããç§ããããæžãå§ãããšããç§ã¯å段éã§1ã€ãŸãã¯å¥ã®ãœãªã¥ãŒã·ã§ã³ãéžæãããçç±ã次ã®ãªããžã§ã³ãé©çšããªãå Žåã«ç¹å®ã®ãšã©ãŒããããã¢ããããçç±ãããã³ãããã®ãšã©ãŒã解決ããããã®ä»£æ¿ã¢ãããŒããã©ã®ããã§ãããã詳现ã«äŒããã€ããã§ããããããã次第ã«ãã®ãã¹ãŠã説æãããšãèšäºã¯å®å šã«èãé£ããã®ã«ãªãããšãããã£ãããããã£ãŠãç§ã¯ããã€ãã®å Žæã§ééããããã®æ¹æ³ã§ãããããŠãã ããããããŠããªããããç§ã¯èšããªããã¹ã¿ã€ã«ã«ã€ããŠè¬çœªããŸããç§èªèº«ã¯ãã®ãããªæ瀺ã¯å¥œãã§ã¯ãããŸããããä»ã®æ¹æ³ã¯èŠåœãããŸããã§ãããããããããã€ãã®å Žæã§ãç§ã¯ãŸã äœãèµ·ãã£ãŠãããã®æ¬è³ªãå°ãªããšãç°¡æœã«èª¬æããããšããŸããã
VBã¢ã»ã³ããªã·ã¹ãã ã®èšå€§ãªæ°ã®åŽé¢ãèå°è£ã«æ®ããŸããïŒããã¹ããèšããŸããã®ãå«ãã§ãããããšãä»ã®åé¡ã®åé¿çãèŠã€ãããšãã®æ ã®ãããç§ã¯ã¢ã»ã³ããªã·ã¹ãã ã®æ·±ãã«ã¯å ¥ããŸããã§ããããããã«æ¬¡ãžé²ã¿ãŸããã¹ããŒãžãæçµçã«ãç§ã®äž»ãªã¿ã¹ã¯ã¯æé©ãªãã¹ãèŠã€ããããšã§ã¯ãªããæçµçã«çŸåšã®VirtualBoxã®èªåã®ããŒãžã§ã³ãçµã¿ç«ãŠãããšã§ãã4.3.12ã«åº§ã£ãŠããã®ã¯ããããããããŸããããã¡ã€ã³ã®äœæ¥ããŒã«ã®ãããããããç¬éãç¡æéã«åãããšãåã«æåŠãããããããŸããã確ãã«ãæ°ããããŒãžã§ã³ãå©çšå¯èœã«ãªããšãã¢ã»ã³ããªã·ã¹ãã ã®ããã€ãã®æ°ããæ©èœãç¥ãããããããã¹ãããŠãé¢é£æ å ±ãèšäºã«è¿œå ããŸãã
ããã«ãããããããæ¬ ç¹ãããã«ããããããããã®èšäºã誰ãã«åœ¹ç«ã€ããšãé¡ã£ãŠããŸããäžèšã®ãã¹ãŠã®ããã°ã©ã ã®å±±ãäžããã®ãé¢åã§ãããçµæã®ãã£ã¹ããªãã¥ãŒã·ã§ã³ãéžæããã®ã¯é¢çœãã®ã§ãã€ã³ã¹ããŒã©ãŒãYandex-diskïŒ6.0.4ã«æçš¿ããŸããããããã®ãã¹ãŠã®ãã©ã€ããŒïŒããã³æ®ãã®ãã¡ã€ã«ïŒã¯ä¿¡é Œã§ããªã蚌ææžã§çœ²åãããŠããããã64ãããWindowsã§ã¯ãã®VBãªãã·ã§ã³ã¯ãã¹ãã¢ãŒãã§ã®ã¿æ©èœããŸãã質åãææ¡ãææ¡ãããå Žåã¯ãã³ã¡ã³ããŸãã¯PMã§ãŠã§ã«ã«ã ãžããããŠããªãŒãã³ãœãŒã¹ãããªããšå ±ã«ãããããããŸããïŒ
è¿œå
ã¢ãŒã«ã€ã
â¢èšäºã®å ¬éã2016幎1æ21æ¥
- VirtualBox 5.0.12ã
â¢2016幎5æ24æ¥ã«æŽæ°ãããèšäº
- VB 5.0.20ã®å€æŽãç¹ã«SHA-1 / SHA-256ã®äºé眲åãåæ ããããã«æ¹è¯ãå ããããŸããã
- , .
- .
- .
- .
- .
⢠29.07.2016
- VB 5.1.2, , Qt5. 5.0.x .
- .
- .
- .
⢠15.09.2016
- VB 5.1.6.
- .
- NASM OpenSSL.
- cURL OpenSSL, .
- , .
- .
⢠30.11.2016
- VB 5.1.10.
- , , OpenSSL 1.1.x.
- :
- Qt ;
- OpenSSL 32- 64- VB.
- . GitHub- , .
⢠2.12.2016
- OpenSSL.
⢠20.06.2017
- VB 5.1.22.
- cURL, OpenSSL, gSOAP; cURL, gSOAP VB.
⢠1.12.2017
- VB 5.2.2.
- MinGW-32 3.3.3 4.5.4.
- Qt, cURL, OpenSSL, gSOAP ; cURL, gSOAP VB.
- DocBook XML/XSL -.
- wget cURL .
- .
⢠4.12.2017
- libxml .
⢠4.09.2018
- VB 5.2.18.
- cURL, OpenSSL, gSOAP ; cURL.
⢠12.12.2018
- VB 5.2.22.
- , OSE-; libopus libvpx.
- cURL, OpenSSL, gSOAP.
- - VirtualBox.
â¢èšäºã01.25.2019ããæŽæ°
- VB 6.0.2ã§ã®å€æŽãèæ ®ããŠæ¹è¯ãè¡ãããŸããã
- ã²ã¹ãã¢ããªã³ã®ã¢ã»ã³ããªãç¡å¹ã«ããããã®æ¹åãããã¡ã«ããºã ã
- cURLãgSOAPã®æŽæ°ããŒãžã§ã³ãDocBook XSLã¹ã¿ã€ã«ã·ãŒãã®ããŒãžã§ã³1.69.1ãžã®ããŒã«ããã¯ïŒããæ£ç¢ºã«ã¯ã察å¿ããããã¥ã¡ã³ãæ§é ïŒã
- ã¢ã»ã³ããªçšã®ããããã¡ã€ã«ã¯ãããŠã³ããŒããã¡ã€ã«å ã®èšäºã®ããã¹ãããåé€ãããŸãã
â¢2019幎4æ8æ¥ã«èšäºãæŽæ°
- ãã®èšäºã¯è±èªã«ç¿»èš³ãããŠããŸãããã®éçšã§ããã·ã¢èªçã«ã¯ããŸããŸãªå€æŽãå€æ°è¡ãããŸããã
- Windows 10ã®ãã©ã€ããŒã®çœ²åã«é¢ããæ å ±ãè¿œå ããŸããã
- VB 6.0.4ã§ã®å€æŽãèæ ®ããŠæ¹è¯ãè¡ãããŸããã
- cURLãOpenSSLãgSOAPãããã³ããã€ãã®ãŠãŒãã£ãªãã£ã®æŽæ°ããŒãžã§ã³ã
- ã¢ã»ã³ããªçšã®ããããã¡ã€ã«ã¯ãç¹å®ã®ãããžã§ã¯ããã¹ã«é¢é£ä»ããããªããªããWin10眲åãèªååããããã®åºæ¬çãªãã³ãã¬ãŒããå«ãŸããŠããŸãã