1.下载alljoyn的源代码
git clone https://github.com/alljoyn/alljoyn_core.git
git clone https://github.com/alljoyn/common.git
git clone https://github.com/alljoyn/build_core.git
2.下载编译工具scons
http://www.scons.org/
3.下载uncrustify,并且放于PATH路径当中
http://sourceforge.net/projects/uncrustify
4.在alljoyn_core运行scons -h可以看到适应于该项目的选项,如下所示:
scons
: Reading SConscript files ...
BULLSEYE_BIN not specified
Using CNG crypto libraries
GTEST_DIR not specified skipping common unit test build
BULLSEYE_BIN not specified
GTEST_DIR not specified skipping alljoyn_core unit test build
scons : done reading SConscript files.
V : Build verbosity
default : 0
actual : 0
OS : Target OS (winxp |win7 |win8 |android )
default : win7
actual : win7
CPU : Target CPU (x86 |x86_64 |arm )
default : x86
actual : x86
VARIANT : Build variant (debug |release |Debug |Release )
default : debug
actual : debug
BD : Have bundled daemon built -in for C ++ test samples (on |off )
default : on
actual : on
DOCS : Output doc type. Setting the doc type to "dev" will produce HTML
output that includes all developer files not just the public API.
(none |pdf |html |dev |chm |sandcastle )
default : none
actual : none
WS : Whitespace Policy Checker (check |detail |fix |off )
default : check
actual : check
GTEST_DIR : The path to Google Test (gTest ) source code ( /path /to /GTEST_DIR )
default : None
actual : None
BULLSEYE_BIN : The path to Bullseye Code Coverage ( /path /to /BULLSEYE_BIN )
default : None
actual : None
MSVC_VERSION : MSVC compiler version - Windows ( 9.0 | 10.0 | 11.0 |11.0Exp )
default : 11.0
actual : 11.0
OBJDIR :
default : build /$ {OS } /$ {CPU } /$ {VARIANT } /obj
actual : build /win7 /x86 /debug /obj
DISTDIR :
default : #build/${OS}/${CPU}/${VARIANT}/dist
actual : #build/win7/x86/debug/dist
TESTDIR :
default : #build/${OS}/${CPU}/${VARIANT}/test
actual : #build/win7/x86/debug/test
WIN7_MSI : Build the . MSI installation package ( false | true )
default : false
actual : false
OPENSSL_BASE : Base OpenSSL directory (windows only ) ( /path /to /OPENSSL_BASE )
default : None
actual : None
ICE : Enable ICE Transport (on |off )
default : off
actual : off
Use scons -H for help about command -line options.
BULLSEYE_BIN not specified
Using CNG crypto libraries
GTEST_DIR not specified skipping common unit test build
BULLSEYE_BIN not specified
GTEST_DIR not specified skipping alljoyn_core unit test build
scons : done reading SConscript files.
V : Build verbosity
default : 0
actual : 0
OS : Target OS (winxp |win7 |win8 |android )
default : win7
actual : win7
CPU : Target CPU (x86 |x86_64 |arm )
default : x86
actual : x86
VARIANT : Build variant (debug |release |Debug |Release )
default : debug
actual : debug
BD : Have bundled daemon built -in for C ++ test samples (on |off )
default : on
actual : on
DOCS : Output doc type. Setting the doc type to "dev" will produce HTML
output that includes all developer files not just the public API.
(none |pdf |html |dev |chm |sandcastle )
default : none
actual : none
WS : Whitespace Policy Checker (check |detail |fix |off )
default : check
actual : check
GTEST_DIR : The path to Google Test (gTest ) source code ( /path /to /GTEST_DIR )
default : None
actual : None
BULLSEYE_BIN : The path to Bullseye Code Coverage ( /path /to /BULLSEYE_BIN )
default : None
actual : None
MSVC_VERSION : MSVC compiler version - Windows ( 9.0 | 10.0 | 11.0 |11.0Exp )
default : 11.0
actual : 11.0
OBJDIR :
default : build /$ {OS } /$ {CPU } /$ {VARIANT } /obj
actual : build /win7 /x86 /debug /obj
DISTDIR :
default : #build/${OS}/${CPU}/${VARIANT}/dist
actual : #build/win7/x86/debug/dist
TESTDIR :
default : #build/${OS}/${CPU}/${VARIANT}/test
actual : #build/win7/x86/debug/test
WIN7_MSI : Build the . MSI installation package ( false | true )
default : false
actual : false
OPENSSL_BASE : Base OpenSSL directory (windows only ) ( /path /to /OPENSSL_BASE )
default : None
actual : None
ICE : Enable ICE Transport (on |off )
default : off
actual : off
Use scons -H for help about command -line options.
可以修改build_core下边的sconscript来调整compiler的version.
5.遇到的错误
RegisterWaitSingleObject没有找到,定义_WIN32_WINNT>=0x0500即可。