[Xorp-hackers] [PATCH] windows: mingw cross compiler : build xorp_win32.zip : win32_pkg.bash 1) libstdc++-6.dll 2) change order exit errors 3) update notes mingw32 packages 4) add URLs /w32api/include/routprot.h 51: error: 'IP_LOCAL_BINDING'
Victor Miasnikov
vvm at tut.by
Tue Mar 13 03:20:04 PDT 2012
From: Victor Miasnikov <vvm at tut.by>
windows: mingw cross compiler : build xorp_win32.zip : win32_pkg.bash
1) add copy libstdc++-6.dll in win32_pkg.bash
1b) add backward compatibility with old mingw GCC runtime
i.e. in case run builds on Fedora 13 (and/or with older mingw packages)
2) change order exit errors numbers
i.e. first -- common issue, last -- copy *.dll related
3) update notes about Fedora cross-compile packages ( mingw32-* )
3b) but not removing info the older mingw packages
( see section "works on Fedora 13")
4) update notes and URLs related with Error 51
in w32api headers file routprot.h
See screenshot of error:
==
. . . include/routprot.h:51: error:
'IP_LOCAL_BINDING' does not name a type
==
Signed-off-by: Victor Miasnikov <vvm at tut.by>
---
xorp/win32_pkg.bash | 46 ++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 42 insertions(+), 4 deletions(-)
diff --git a/xorp/win32_pkg.bash b/xorp/win32_pkg.bash
index a7fa284..59a71b0 100755
--- a/xorp/win32_pkg.bash
+++ b/xorp/win32_pkg.bash
@@ -4,7 +4,24 @@
# This needs to be run as root (or via sudo) to have a good
# chance of working...
-# This works on modern Fedora, with these pkgs installed:
+# This works on modern Fedora ( on 2012-03-12: Fedora 16),
+# with these pkgs installed:
+
+#mingw32-gcc-4.6.1-3.fc16.i686
+#mingw32-gcc-c++-4.6.1-3.fc16.i686
+#mingw32-cpp-4.6.1-3.fc16.i686
+#mingw32-filesystem-69-11.fc16.noarch
+#mingw32-binutils-2.21-2.fc16.i686
+#mingw32-runtime-3.18-4.fc16.noarch
+#mingw32-w32api-3.17-1.fc16.noarch
+#mingw32-pthreads-2.8.0-15.20110511cvs.fc16.noarch
+#mingw32-zlib-1.2.5-5.fc16.noarch
+#mingw32-openssl-1.0.0d-1.fc16.noarch
+#mingw32-pdcurses-3.4-8.fc15.noarch
+#mingw32-libgnurx-2.5.1-7.fc15.noarch
+
+
+# This works on Fedora 13, with these pkgs installed:
#mingw32-pdcurses-3.4-8.fc15.noarch
#mingw32-cpp-4.5.3-1.fc15.i686
@@ -19,8 +36,24 @@
#mingw32-pthreads-2.8.0-13.fc15.noarch
#mingw32-filesystem-69-3.fc15.noarch
-# In addition, you need the fix listed in this bug:
+
+
+# In addition, you need ( on 2012-03-12) the fix this bug:
+#==
+# . . . include/routprot.h:51: error:
+# 'IP_LOCAL_BINDING' does not name a type
+#==
+# Bug listed in
+#http://sourceforge.net/tracker/?func=detail&aid=3388721&group_id=2435&atid=102435
+# or
#http://lists.fedoraproject.org/pipermail/mingw/2011-February/003442.html
+#
+# But first check "src/winsup/w32api/include/" on cygwin.com :
+#http://cygwin.com/cgi-bin/cvsweb.cgi/src/winsup/w32api/include/?cvsroot=src
+# or directly
+# "CVS log for src/winsup/w32api/include/routprot.h" on
+#http://cygwin.com/cgi-bin/cvsweb.cgi/src/winsup/w32api/include/routprot.h?cvsroot=src
+#
# mingw cross-compile arguments
SARGS="strip=yes shared=no build=mingw32 STRIP=i686-pc-mingw32-strip \
@@ -52,10 +85,15 @@ scons $SARGS install || exit 2
echo "Copy some files..."
# Copy some run-time libraries to the xorp dir for packaging
-cp /usr/i686-pc-mingw32/sys-root/mingw/bin/libcrypto-10.dll /usr/local/xorp/sbin/ || exit 3
cp /usr/i686-pc-mingw32/sys-root/mingw/bin/zlib1.dll /usr/local/xorp/sbin/ || exit 4
cp /usr/i686-pc-mingw32/sys-root/mingw/bin/libgcc_s_sjlj-1.dll /usr/local/xorp/sbin/ || exit 5
cp /usr/i686-pc-mingw32/sys-root/mingw/bin/libgnurx-0.dll /usr/local/xorp/sbin/ || exit 6
+cp /usr/i686-pc-mingw32/sys-root/mingw/bin/libcrypto-10.dll /usr/local/xorp/sbin/ || exit 7
+if [ -d /usr/i686-pc-mingw32/sys-root/mingw/bin/libstdc++-6.dll ] ; then
+ (
+ cp /usr/i686-pc-mingw32/sys-root/mingw/bin/libstdc++-6.dll /usr/local/xorp/sbin/ || exit 8
+ )
+fi
PWD=$(pwd)
@@ -66,7 +104,7 @@ then
userdir = "./"
fi
-cd /usr/local || exit 7
+cd /usr/local || exit 3
if [ ! -d ${userdir}tmp ]
then
--
1.7.9.msysgit.0
More information about the Xorp-hackers
mailing list