]> git.sur5r.net Git - bacula/bacula/blob - bacula/src/win32/README.win32
Remove old commented out code from configure.in
[bacula/bacula] / bacula / src / win32 / README.win32
1
2 This directory <bacula-src>/src/win32 contains the build
3 environment for building the native Win32 Bacula File daemon,
4 the native Win32 bconsole program and the wx-console GUI console
5 program.
6
7 The directory structure is:
8
9   bacula/src/win32      Makefiles and scripts
10     baculafd            Visual Studio Files
11       Release           Release objects, and bacula-fd.exe
12        Debug            Debug object, and bacula-fd.exe produced
13                            by VC++
14     console             Build of console program and bconsole.conf
15       Release           Release objects  and bconsole.exe
16       Debug             Debug objects 
17     wx-console          Buld of wx-console program and wx-console-conf
18       Release           Release objects and wx-console.exe
19       Debug             Debug objects.
20     filed               Links to core filed code
21     findlib             Links to core findlib code
22     lib                 Links to core lib code
23
24   depkgs-win32
25     pthreads            The POSIX pthreads library (third party)
26     zlib                The zlib library (third party)
27     wx                  The wxWidgets library (third party)
28
29 depkgs-win32 is released in a separate .tar.gz file that contains the
30 source for the above mentioned libraries needed to build the
31 Win32 Bacula.  It can be found in the Source Forge Bacula project
32 release section.
33
34 To build it:
35 - Make sure nmake is on your PATH.
36 - Make sure your COMSPEC is properly setup (see full dump of
37   my cygwin environment below).
38 - The build is done in an rxvt window under the latest version
39   of cygwin.
40 - You need the Platform SDK installed.
41 - You need Visual Studio installed.
42 - You need to load depkgs-win32, then
43     (make the two patches described below to in Nicolas' notes to wx)
44     cd depkgs-win32
45     make
46     (after building zlib and pthreads, it fails in wx)
47     cd wx
48     ./configure
49     make
50     (if it succeeds skip the next item, otherwise do it) 
51 - You may have to build wx with VC++.
52   After starting VC++, use File->Open Workspace then
53   open wx/src/wxWindows.dsw then use
54   Build->Build All or Build->build wxmsw.lib should work too.
55 - cd bacula
56   ./configure --enable-client-only
57   cd src/win32
58   make
59
60 Instructions if you want to build bacula-fd with VSS 
61 (Volume Shadow Copy Service) support:
62
63 - VSS support is right now (June 2005) available for MS-Windows XP 
64    (beta)
65 - VSS support is right now (June 2005) available for MS-Windows 2003 (beta)
66 - you need to get the VSS SDK: 
67   http://www.microsoft.com/downloads/details.aspx?FamilyID=0B4F56E4-0CCC-4626-826A-ED2C4C95C871&displaylang=en
68 - copy the 'inc' and 'lib' directories from this SDK to 
69   'bacula/src/win32/compat/vss'. Note, generally these files
70   are installed in c:/Program\ Files/Microsoft/VSSSDK71
71 - you should then have 'bacula/src/win32/compat/vss/inc' and 
72   'bacula/src/win32/compat/vss/lib'
73   both with 'Win2003' and 'WinXP' subdirectories
74 - add 'WIN32_VSS' as preprocessor directive
75 - you should get a bacula-fd that runs on all platforms and has 
76   VSS support for WinXP and 2003 enabled
77
78 That should be all there is too it. The winbacula-1.xx.y.exe 
79 should be in the current directory.
80
81
82 See License.txt for the License.
83
84 The native Win32 interface code was written by:
85
86    Christopher S. Hull, February 2004
87
88
89 For more details of building wx, see depkgs-win32/wx/docs/msw/install.txt
90
91 The easiest way to build this is to have a Visual Studio C++ 6.0. 
92 However, you can use the free Microsoft C++ compiler with a bit
93 of additional work.
94
95 Here are additional pointers on building wx-console supplied by Nicolas Boichat:
96
97
98 Tools I used (I think the 3 first one are included in VStudio) :
99 - VC++ toolkit : http://msdn.microsoft.com/visualc/vctoolkit2003/
100 - Windows Platform SDK :
101    http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
102    (Core SDK and Internet Development SDK)
103 - nmake (it got it with .Net Framework SDK)
104 - lib.exe found in the SDK-base/Bin/win64 directory (works fine
105   on a 32 bit Windows).
106
107 Instructions if you want to build wx-console :
108 - wxWidgets 2.4.2 compilation
109   + In include/wx/string.h, replace line 195 by
110       #if defined(__VISUALC__) // && defined(_MT) && !defined(_DLL)
111   + In src/common/string.cpp, replace line 167 by
112       #if defined(__VISUALC__) // && defined(_MT) && !defined(_DLL)
113   + Follow the instructions in docs/msw/install.txt
114      (Visual C++ 6.0 compilation - Using makefiles)
115
116 - Make sure that the environment variables are set as:
117   - PATH includes the directories bin of both the C++ Toolkit and the SDK
118   - INCLUDE includes the directories include of both the C++ Toolkit and the SDK
119   - LIB includes the directories Lib of both the C++ Toolkit and the SDK
120     
121 - Compile bacula depkg-win32 with Visual Studio or try the
122   supplied makefiles as described in the doc.
123
124 - Compile wx-console with nmake -f wx-console.mak in
125   src/win32/wx-console
126
127 - Additional information on using the free Micrsosoft C++ see
128   http://sapdb.2scale.net/moin.cgi/MS_20C_2b_2b_20Toolkit
129
130 NOTE! I (Kern) cannot build wxWindows with the Makefile until after
131 I do a ./configure.  I can us VC Studio directly to do so
132 following their instructions.
133
134 Getting all the environment variables setup properly is not always so obvious.
135 Here is what I have when I do a "set" in a rxvt window, in which I build
136 Bacula. Probably what is important are INCLUDE, LIB, PATH, and WXWIN, but note
137 there are a zillion other things set:
138 !::='::\'
139 !C:='C:\cygwin\home\kern'
140 ALLUSERSPROFILE='C:\Documents and Settings\All Users'
141 APPDATA='C:\Documents and Settings\kern\Application Data'
142 BASEMAKE='C:\Program Files\Microsoft SDK\Include\BKOffice.Mak'
143 BASH=/usr/bin/bash
144 BASH_VERSINFO=([0]="2" [1]="05b" [2]="0" [3]="1" [4]="release" [5]="i686-pc-cygwin")
145 BASH_VERSION='2.05b.0(1)-release'
146 BKOFFICE='C:\Program Files\Microsoft SDK\.'
147 CLIENTNAME=Console
148 COLORFGBG='0;default;15'
149 COLORTERM=rxvt-xpm
150 COLUMNS=70
151 COMMONPROGRAMFILES='C:\Program Files\Common Files'
152 COMPUTERNAME=TIBS
153 COMSPEC='C:\WINDOWS\system32\cmd.exe'
154 CYGWIN=notty
155 DIRSTACK=()
156 DISPLAY=:0
157 EDHELP=/home/kern/bin/ed.hlp
158 EDTRM=/home/kern/bin/ed.trm
159 EUID=1007
160 GROUPS=()
161 HISTFILE=/cygdrive/c/home/kern/.bash_history
162 HISTFILESIZE=500
163 HISTSIZE=500
164 HOME=/cygdrive/c/home/kern
165 HOMEDRIVE=C:
166 HOMEPATH='\Documents and Settings\kern'
167 HOSTNAME=Tibs
168 HOSTTYPE=i686
169 IFS=$' \t\n'
170 INCLUDE='C:\Program Files\Microsoft SDK\Include\.;C:\Program Files\Microsoft Visual Studio\VC98\atl\include;C:\Program Files\Microsoft Visual Studio\VC98\mfc\include;C:\Program Files\Microsoft Visual Studio\VC98\include'
171 INETSDK='C:\Program Files\Microsoft SDK\.'
172 LIB='C:\Program Files\Microsoft SDK\Lib\.;C:\Program Files\Microsoft Visual Studio\VC98\mfc\lib;C:\Program Files\Microsoft Visual Studio\VC98\lib'
173 LINES=65
174 LOGONSERVER='\\TIBS'
175 MACHTYPE=i686-pc-cygwin
176 MAILCHECK=60
177 MAKE_MODE=UNIX
178 MOZILLA_HOME=/home/netscape
179 MSDEVDIR='C:\Program Files\Microsoft Visual Studio\Common\MSDev98'
180 MSSDK='C:\Program Files\Microsoft SDK\.'
181 MSTOOLS='C:\Program Files\Microsoft SDK\.'
182 NUMBER_OF_PROCESSORS=1
183 OLDPWD=/home/kern/bacula
184 OPTERR=1
185 OPTIND=1
186 OS=Windows_NT
187 OSTYPE=cygwin
188 PATH='/cygdrive/c/Program Files/Microsoft Visual Studio/VC98/Bin:/cygdrive/c/Program Files/Microsoft Visual Studio/VC98:/cygdrive/c/Program Files/Microsoft Visual Studio/Common/MSDev98/Bin:/cygdrive/c/Program Files/Microsoft Visual Studio/Common/Tools/WinNT:/cygdrive/c/Program Files/Microsoft Visual Studio/Common/Tools:c:/cygwin/bin:/usr/bin:/home/kern/bin:/sbin:/usr/sbin:'
189 PATHEXT='.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH'
190 PIPESTATUS=([0]="0")
191 PPID=3864
192 PROCESSOR_ARCHITECTURE=x86
193 PROCESSOR_IDENTIFIER='x86 Family 15 Model 2 Stepping 7, GenuineIntel'
194 PROCESSOR_LEVEL=15
195 PROCESSOR_REVISION=0207
196 PROGRAMFILES='C:\Program Files'
197 PROMPT='$P$G'
198 PS1='\e[34m\]\w\[\e[0m\]$\040'
199 PS2='> '
200 PS4='+ '
201 PWD=/home/kern
202 SESSIONNAME=Console
203 SHELL=/bin/bash
204 SHELLOPTS=braceexpand:emacs:hashall:histexpand:history:interactive-comments:monitor
205 SHLVL=1
206 SYSTEMDRIVE=C:
207 SYSTEMROOT='C:\WINDOWS'
208 TEMP=/cygdrive/c/DOCUME~1/kern/LOCALS~1/Temp
209 TERM=xterm
210 TMP=/cygdrive/c/DOCUME~1/kern/LOCALS~1/Temp
211 UID=1007
212 USERDOMAIN=TIBS
213 USERNAME=kern
214 USERPROFILE='C:\Documents and Settings\kern'
215 WINDIR='C:\WINDOWS'
216 WINDOWID=168050736
217 WXWIN='c:\home\kern\bacula\depkgs-win32\wx'
218 _=set