Browse Source

harmonize windows build information between README and README.dev

Samuel Thibault 14 years ago
parent
commit
3e72ea4fa3
2 changed files with 34 additions and 44 deletions
  1. 5 41
      README
  2. 29 3
      README.dev

+ 5 - 41
README

@@ -97,48 +97,12 @@ we provide MinGW-built binaries.  The build process produces libstarpu.dll,
 libstarpu.def, and libstarpu.lib, which should be enough to use it from e.g.
 libstarpu.def, and libstarpu.lib, which should be enough to use it from e.g.
 Microsoft Visual Studio.
 Microsoft Visual Studio.
 
 
-A few details need to be fixed when building StarPU on windows:
+Update the video drivers to the latest stable release available for your
+hardware. Old ATI drivers (< 2.3) contain bugs that cause OpenCL support in
+StarPU to hang or exhibit incorrect behaviour.
 
 
-- To get a .def file built, make sure that MSVC's lib.exe tool is in PATH.
-
-- Update the video drivers to the latest stable release available for your
-  hardware. Older ATI drivers (< 2.3) contain bugs that cause OpenCL support in
-  StarPU to hang or exhibit incorrect behaviour.
-
-- c:\cuda\include\host_defines.h has a bogus CUDARTAPI definition which makes
-  linking fail completely. Replace the first occurence of
-
-    #define CUDARTAPI
-    
-  with
-    
-    #ifdef _WIN32
-    #define CUDARTAPI __stdcall
-    #else
-    #define CUDARTAPI
-    #endif
-
-  While at it, you can also comment the __cdecl definition to avoid spurious
-  warnings.
-
-- If you have a non-english version of windows, use
-
-    export LANG=C
-
-  else libtool has troubles parsing the translated output of the toolchain.
-
-- libtool is not able to find the libraries automatically, you need to make some
-  copies:
-
-    copy c:\cuda\lib\cuda.lib c:\cuda\lib\libcuda.lib
-    copy c:\cuda\lib\cudart.lib c:\cuda\lib\libcudart.lib
-    copy c:\cuda\lib\cublas.lib c:\cuda\lib\libcublas.lib
-    copy c:\cuda\lib\cufft.lib c:\cuda\lib\libcufft.lib
-    copy c:\cuda\lib\OpenCL.lib c:\cuda\lib\libOpenCL.lib
-
-(and if the version of your CUDA driver is >= 3.2)
-
-    copy c:\cuda\lib\curand.lib c:\cuda\lib\libcurand.lib
+For details on the Windows build process, see the README.dev file in the
+subversion tree.
 
 
 ++===========++
 ++===========++
 || V. Trying ||
 || V. Trying ||

+ 29 - 3
README.dev

@@ -32,7 +32,8 @@ http://www.open-mpi.org/projects/hwloc
    export PATH=/cygdrive/c/Program Files/Microsoft Visual Studio 9.0/Common7/IDE:$PATH
    export PATH=/cygdrive/c/Program Files/Microsoft Visual Studio 9.0/Common7/IDE:$PATH
    export PATH=/cygdrive/c/Program Files/Microsoft Visual Studio 9.0/VC/bin:$PATH
    export PATH=/cygdrive/c/Program Files/Microsoft Visual Studio 9.0/VC/bin:$PATH
    
    
-   Try to call <lib.exe> and <link.exe>
+   Try to call <lib.exe> and <link.exe> from MinGW, else no .def or .lib file
+   will be produced.
 
 
 5. Install GPU Drivers (not mandatory)
 5. Install GPU Drivers (not mandatory)
 
 
@@ -91,7 +92,13 @@ http://www.open-mpi.org/projects/hwloc
 
 
    /cygdrive/c/MinGW/msys/1.0/bin/sh.exe --login -i
    /cygdrive/c/MinGW/msys/1.0/bin/sh.exe --login -i
 
 
-8. Configure, make, install
+8. Configure, make, install from MinGW
+
+   If you have a non-english version of windows, use
+
+     export LANG=C
+
+   else libtool has troubles parsing the translated output of the toolchain.
 
 
    cd starpu-trunk
    cd starpu-trunk
    mkdir build
    mkdir build
@@ -123,5 +130,24 @@ http://www.open-mpi.org/projects/hwloc
    export PATH=<StarPU installation directory>/bin:$PATH
    export PATH=<StarPU installation directory>/bin:$PATH
 
 
 
 
+Gcc-compiled CUDA
+-----------------
 
 
-   
+If you tell nvcc to build CUDA code with gcc instead of Visual studio, a fix is
+needed: c:\cuda\include\host_defines.h has a bogus CUDARTAPI definition which
+makes
+
+  linking fail completely. Replace the first occurence of
+
+    #define CUDARTAPI
+    
+  with
+    
+    #ifdef _WIN32
+    #define CUDARTAPI __stdcall
+    #else
+    #define CUDARTAPI
+    #endif
+
+  While at it, you can also comment the __cdecl definition to avoid spurious
+  warnings.