annotate doc/README.Windows @ 553:a93bb23fca8c

win build fix
author Tassilo Philipp
date Mon, 20 Jun 2022 15:25:01 +0200
parents 451299d50c1a
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
1 Bulding DynCall on Windows
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
2 ==========================
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
3
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
4
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
5 Build using buildsys/nmake and MS Visual Studio Tools:
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
6 ------------------------------------------------------
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
7
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
8 32-bit:
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
9 vcvarsall.bat x86
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
10 .\configure.bat /target-x86
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
11 nmake /f Nmakefile
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
12
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
13 64-bit:
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
14 vcvarsall.bat amd64
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
15 .\configure.bat /target-x64
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
16 nmake /f Nmakefile
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
17
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
18 Build/run tests:
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
19 cd test
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
20 nmake /f Nmakefile
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
21
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
22 NOTE: if you encounter 'python'/'lua' not found messages (which is
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
23 executed mistakenly for re-generation of test C code)
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
24 timestamps are wrong; workaround: run "svn revert -R ." several times.
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
25
371
451299d50c1a - windows arm64 support (dyncall, dyncallback, cmake support for armasm64), thanks Bernhard Urban-Forster!
Tassilo Philipp
parents: 0
diff changeset
26
0
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
27 Build using buildsys/gmake and MinGW or Cygwin:
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
28 -----------------------------------------------
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
29
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
30 32-bit:
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
31 .\configure.bat /target-x86 /tool-gcc
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
32 make
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
33
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
34 64-bit:
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
35 .\configure.bat /target-x64 /tool-gcc
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
36 make
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
37
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
38
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
39 Build using Makefile.embedded and MinGW or Cygwin:
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
40 --------------------------------------------------
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
41
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
42 > mingw32-make -f Makefile.embedded
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
43 $ make -f Makefile.embedded CC=gcc
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
44
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
45
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
46 Build using CMake and Nmake:
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
47 ----------------------------
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
48
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
49 Put the appropriate tool-chain in path (32 or 64-bit version of MSVC), then:
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
50
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
51 cmake -G "NMake Makefiles" %DYNCALL_SOURCE_DIR%
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
52 nmake
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
53
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
54
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
55 Build using CMake and Visual Studio:
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
56 ------------------------------------
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
57
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
58 32-bit:
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
59 cmake .
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
60 open DynCall.sln
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
61
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
62 BROKEN: SAFE EH.
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
63
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
64 BROKEN: Rules to assemble MASM files are still missing.
3e629dc19168 initial from svn dyncall-1745
Daniel Adler
parents:
diff changeset
65
371
451299d50c1a - windows arm64 support (dyncall, dyncallback, cmake support for armasm64), thanks Bernhard Urban-Forster!
Tassilo Philipp
parents: 0
diff changeset
66
451299d50c1a - windows arm64 support (dyncall, dyncallback, cmake support for armasm64), thanks Bernhard Urban-Forster!
Tassilo Philipp
parents: 0
diff changeset
67 Build ARM64 using CMake and Visual Studio 2019:
451299d50c1a - windows arm64 support (dyncall, dyncallback, cmake support for armasm64), thanks Bernhard Urban-Forster!
Tassilo Philipp
parents: 0
diff changeset
68 -----------------------------------------------
451299d50c1a - windows arm64 support (dyncall, dyncallback, cmake support for armasm64), thanks Bernhard Urban-Forster!
Tassilo Philipp
parents: 0
diff changeset
69
451299d50c1a - windows arm64 support (dyncall, dyncallback, cmake support for armasm64), thanks Bernhard Urban-Forster!
Tassilo Philipp
parents: 0
diff changeset
70 vcvarsall.bat amd64_arm64
451299d50c1a - windows arm64 support (dyncall, dyncallback, cmake support for armasm64), thanks Bernhard Urban-Forster!
Tassilo Philipp
parents: 0
diff changeset
71 mkdir build && cd build
451299d50c1a - windows arm64 support (dyncall, dyncallback, cmake support for armasm64), thanks Bernhard Urban-Forster!
Tassilo Philipp
parents: 0
diff changeset
72 cmake -G "Visual Studio 16 2019" -A ARM64 ..
451299d50c1a - windows arm64 support (dyncall, dyncallback, cmake support for armasm64), thanks Bernhard Urban-Forster!
Tassilo Philipp
parents: 0
diff changeset
73 cmake --build . --config Release
451299d50c1a - windows arm64 support (dyncall, dyncallback, cmake support for armasm64), thanks Bernhard Urban-Forster!
Tassilo Philipp
parents: 0
diff changeset
74