나중에 자세히 정리하기 전에 여기 우선 대충적어둠


https://msdn.microsoft.com/en-us/library/bb524831(v=vs.85).aspx

이거 를 쓰고싶은데 그냥 단순히 using mpi만 하니까 에러가 떠서 삽질하다 찾음


bootstrap 하고나서 생긴 project-config.jam 파일 까서 맨 밑에

1
using mpi ;
cs

를 추가


%bootstrap%\tools\build\src\tools 의 mpi.jam 파일 까서 쭈욱 내리다가 다음과 같은 부분 찾아서 수정

Microsoft-mpi 쓰는데 얘들은 아직도 Microsoft Compute Cluster Pack 라고 붙여놔서 아무생각 없이 빌드하면 에러뿜은듯


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
  if ! $(mpicxx) && [ os.on-windows ]
  {  
    # Try to auto-configure to the Microsoft Compute Cluster Pack
    local cluster_pack_path_native = "C:\\Program Files (x86)\\Microsoft SDKs\\MPI" ;
    local cluster_pack_path = [ path.make $(cluster_pack_path_native) ] ;
    if [ GLOB $(cluster_pack_path_native)\\Include : mpi.h ]
    {
      if $(.debug-configuration)
      {
        ECHO "Found Microsoft Compute Cluster Pack: $(cluster_pack_path_native)" ;
      }
      
      # Pick up either the 32-bit or 64-bit library, depending on which address
      # model the user has selected. Default to 32-bit.
      options = <include>$(cluster_pack_path)/Include 
                <address-model>64:<library-path>$(cluster_pack_path)/Lib/x64
                <library-path>$(cluster_pack_path)/Lib/x86
                <find-static-library>msmpi
                <toolset>msvc:<define>_SECURE_SCL=0
              ;
              
      # Setup the "mpirun" equivalent (mpiexec)
      .mpirun = "\"C:\\Program Files\\Microsoft MPI\\Bin\\mpiexec.exe"\" ;
      .mpirun_flags = -n ;
    }
    else if $(.debug-configuration)
    {
      ECHO "Did not find Microsoft Compute Cluster Pack in $(cluster_pack_path_native)." ;
    }
  } 
cs


개박친다...