Commit ad19b03fd346e6779a029c43b6228e377919852f

Authored by Jay Berkenbilt
1 parent 351284b5

now possible to test from msys!


git-svn-id: svn+q:///qpdf/trunk@804 71b93d88-0707-0410-a8cf-f5a4172ac649
Showing 1 changed file with 39 additions and 33 deletions
README.windows
@@ -2,19 +2,15 @@ Common Setup @@ -2,19 +2,15 @@ Common Setup
2 ============ 2 ============
3 3
4 To be able to build qpdf and run its test suite, you must have either 4 To be able to build qpdf and run its test suite, you must have either
5 -Cygwin or MSYS from MinGW (>= 1.0.11) installed.  
6 -  
7 - qpdf's test suite, you must have cygwin installed.  
8 -This is because qpdf's test suite uses qtest, which requires cygwin  
9 -perl on Windows. (Hopefully a future version of qtest will work with  
10 -ActiveState Perl.) You must have at least perl and gnu diffutils  
11 -installed to run the test suite. 5 +Cygwin or MSYS from MinGW (>= 1.0.11) installed. If you want to build
  6 +with Microsoft Visual C++, either Cygwin or MSYS will do. If you want
  7 +to build with MinGW, you must use MSYS rather than Cygwin.
12 8
13 As of this writing, the image comparison tests confuse ghostscript in 9 As of this writing, the image comparison tests confuse ghostscript in
14 cygwin, but there's a chance they might work at some point. If you 10 cygwin, but there's a chance they might work at some point. If you
15 want to run them, you need ghostscript and tiff utils as well. Then 11 want to run them, you need ghostscript and tiff utils as well. Then
16 omit --disable-test-compare-images from the configure statements given 12 omit --disable-test-compare-images from the configure statements given
17 -below. 13 +below. The image comparison tests have not been tried under MSYS.
18 14
19 Building with MinGW 15 Building with MinGW
20 =================== 16 ===================
@@ -31,39 +27,22 @@ From your MSYS prompt, run @@ -31,39 +27,22 @@ From your MSYS prompt, run
31 ./configure --disable-test-compare-images --enable-build-external-libs --with-buildrules=mingw 27 ./configure --disable-test-compare-images --enable-build-external-libs --with-buildrules=mingw
32 make 28 make
33 29
34 -When done, you should copy the gcc runtime DLL into the libqpdf/build  
35 -directory. You can find the path to it by running  
36 -  
37 - objdump -p qpdf/build/qpdf.exe | grep DLL  
38 - type -P libgcc_s_dw2-1.dll  
39 -  
40 -replacing libgcc_s_dw2-1.dll with whatever gcc DLL is shown, if  
41 -different. Redistribution of this DLL is unavoidable as of this  
42 -writing; see "Static Runtime" below for details. 30 +Add the absolute path to the libqpdf/build directory to your PATH.
  31 +Make sure you can run the qpdf command by typing qpdf/build/qpdf and
  32 +making sure you get a help message rather than an error loading the
  33 +DLL or no output at all. Run the test suite by typing
43 34
44 -From your cygwin prompt, add the absolute path to the libqpdf/build  
45 -directory to your PATH. Make sure you can run the qpdf command by  
46 -typing qpdf/build/qpdf and making sure you get a help message rather  
47 -than an error loading the DLL or no output at all. Run the test suite  
48 -by typing  
49 -  
50 - make check GENDEPS=0 35 + make check
51 36
52 -from your cygwin prompt. The GENDEPS=0 is necessary to prevent the  
53 -build system in cygwin from trying to interpret the MSYS/Windows paths  
54 -embedded in the dependency files. If all goes well, you should get a  
55 -passing test suite. 37 +If all goes well, you should get a passing test suite.
56 38
57 Building with MSVC .NET 2008 Express 39 Building with MSVC .NET 2008 Express
58 ==================================== 40 ====================================
59 41
60 These instructions would likely work with newer version of MSVC or 42 These instructions would likely work with newer version of MSVC or
61 with full version of MSVC. They may also work with .NET 2005. They 43 with full version of MSVC. They may also work with .NET 2005. They
62 -have only been tested with .NET 2008 Express.  
63 -  
64 -It's possible that the MSVC build may work from MSYS, but since cygwin  
65 -is needed to run the test suite, these have only been tested from  
66 -cygwin. 44 +have only been tested with .NET 2008 Express. You may follow these
  45 +instructions from either Cygwin or from MSYS.
67 46
68 You should first set up your environment to be able to run MSVC from 47 You should first set up your environment to be able to run MSVC from
69 the command line. There is usually a batch file included with MSVC 48 the command line. There is usually a batch file included with MSVC
@@ -98,6 +77,33 @@ Note that you must redistribute the Microsoft runtime DLLs. Linking @@ -98,6 +77,33 @@ Note that you must redistribute the Microsoft runtime DLLs. Linking
98 with static runtime won't work; see "Static Runtime" below for 77 with static runtime won't work; see "Static Runtime" below for
99 details. 78 details.
100 79
  80 +Runtime DLLs
  81 +============
  82 +
  83 +Both build methods create executables and DLLs that are dependent on
  84 +the compiler's runtime DLLs. You can find out which DLLs are required
  85 +by using objdump. For any DLLs that are not standard on any Windows
  86 +system, you will need to copy those into the directory with the exe
  87 +and the qpdf DLL in order for the application to work outside the
  88 +development environment. You don't need KERNEL32.dll, or msvcrt.dll
  89 +as those are standard.
  90 +
  91 +To discover which DLLs you need, you can run
  92 +
  93 + objdump -p qpdf/build/qpdf.exe | grep DLL
  94 +
  95 +To find the path to the DLL, you can use type -P, as in
  96 +
  97 + type -P libgcc_s_dw2-1.dll
  98 +
  99 +replacing libgcc_s_dw2-1.dll with whatever gcc DLL is shown, if
  100 +different. For MSVC, you will probably need two DLLs. Keep in mind
  101 +that Microsoft does not allow redistribution of the debugging DLLs.
  102 +qpdf's build does not depend on them by default, however.
  103 +
  104 +Redistribution of the runtime DLL is unavoidable as of this writing;
  105 +see "Static Runtime" below for details.
  106 +
101 Installing 107 Installing
102 ========== 108 ==========
103 109