aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorErlang/OTP <[email protected]>2009-12-17 13:54:38 +0000
committerErlang/OTP <[email protected]>2009-12-17 13:54:38 +0000
commitebaa01050deb2bbc4cf4e1279e3d8ffe220080d9 (patch)
treef30072b98c3727fd157462975c1164976fadadaa
parentca9557b50d146b5fe32b9aab3647ee25f4d05824 (diff)
parent346b530950c2c6c80d179d8ff1fcc835ed95c1b8 (diff)
downloadotp-ebaa01050deb2bbc4cf4e1279e3d8ffe220080d9.tar.gz
otp-ebaa01050deb2bbc4cf4e1279e3d8ffe220080d9.tar.bz2
otp-ebaa01050deb2bbc4cf4e1279e3d8ffe220080d9.zip
Merge branch 'at/windows_build_fixes' into ccase/r13b04_dev
* at/windows_build_fixes: Updated README.win32 for compiling with VS2008 and issues with mc.exe Allow mc.sh and rc.sh to work when path to mc/rc.exe has spaces OTP-8345 Building on Windows will now work if the paths to mc.exe and rc.exe contain spaces. The README.win32 file has been updated with some information about building using Visual Studio 2008. (Thanks to Andrew Thompson.)
-rw-r--r--README.win3214
-rwxr-xr-xerts/etc/win32/cygwin_tools/vc/mc.sh8
-rwxr-xr-xerts/etc/win32/cygwin_tools/vc/rc.sh4
3 files changed, 20 insertions, 6 deletions
diff --git a/README.win32 b/README.win32
index a6d2609aae..6fd14b23dc 100644
--- a/README.win32
+++ b/README.win32
@@ -366,6 +366,20 @@ backslashes in your path environment variable in Cygwin bash, but LIB
and INCLUDE should contain Windows style paths with semicolon,
drive letters and backslashes.
+If you wish to use Visual Studio 2008, a couple things need to be tweaked,
+namely the fact that some of the SDK stuff is installed in (by default)
+C:\Program Files\Microsoft SDKs\v6.0A . Just ensure that that
+C:\Program Files\Microsoft SDKs\v6.0A\Lib is in LIB and
+C:\Program Files\Microsoft SDKs\v6.0A\Include is in INCLUDE. A symptom of not
+doing this is errors about finding kernel32.lib and windows.h.
+
+Additionally, if you encounter errors about mc.exe not being found, you must
+install the entire Windows SDK (the partial SDK included in visual studio
+apparently does not include it). After installing it you'll want to add
+something like: /c/cygdrive/Program\ Files/Microsoft\ SDKs/v7.0/bin to your
+PATH to allow the environment to find mc.exe. The next Visual Studio (2010) is
+expected to include this tool.
+
* Sun's Java JDK 1.5.0 or higher. Our Java code (jinterface, ic) is
written for JDK 1.5.0. Get it for Windows and install it, the JRE is
not enough. If you don't care about Java, you can skip this step, the
diff --git a/erts/etc/win32/cygwin_tools/vc/mc.sh b/erts/etc/win32/cygwin_tools/vc/mc.sh
index 813b59947b..676b072655 100755
--- a/erts/etc/win32/cygwin_tools/vc/mc.sh
+++ b/erts/etc/win32/cygwin_tools/vc/mc.sh
@@ -24,7 +24,7 @@ CMD=""
OUTPUT_DIRNAME=""
# Find the correct mc.exe. This could be done by the configure script,
-# But as we seldom use the resource compiler, it might as well be done here...
+# But as we seldom use the message compiler, it might as well be done here...
MCC=""
save_ifs=$IFS
IFS=:
@@ -32,7 +32,7 @@ for p in $PATH; do
if [ -f $p/mc.exe ]; then
if [ -n "`$p/mc.exe -? 2>&1 >/dev/null </dev/null \
| grep -i \"message compiler\"`" ]; then
- MCC=$p/mc.exe
+ MCC=`echo "$p/mc.exe" | sed 's/ /\\\\ /g'`
fi
fi
done
@@ -68,8 +68,8 @@ while test -n "$1" ; do
done
p=$$
if [ "X$MC_SH_DEBUG_LOG" != "X" ]; then
- echo rc.sh "$SAVE" >>$MC_SH_DEBUG_LOG
- echo rc.exe $CMD >>$MC_SH_DEBUG_LOG
+ echo mc.sh "$SAVE" >>$MC_SH_DEBUG_LOG
+ echo mc.exe $CMD >>$MC_SH_DEBUG_LOG
fi
if [ -n "$OUTPUT_DIRNAME" ]; then
cd $OUTPUT_DIRNAME
diff --git a/erts/etc/win32/cygwin_tools/vc/rc.sh b/erts/etc/win32/cygwin_tools/vc/rc.sh
index 748de48890..6a6921c49e 100755
--- a/erts/etc/win32/cygwin_tools/vc/rc.sh
+++ b/erts/etc/win32/cygwin_tools/vc/rc.sh
@@ -30,8 +30,8 @@ save_ifs=$IFS
IFS=:
for p in $PATH; do
if [ -f $p/rc.exe ]; then
- if [ -n "`$p/rc.exe -? 2>&1 | grep -i "resource compiler"`" ]; then
- RCC=$p/rc.exe
+ if [ -n "`$p/rc.exe -? 2>&1 | grep -i "resource compiler"`" ]; then
+ RCC=`echo "$p/rc.exe" | sed 's/ /\\\\ /g'`
fi
fi
done