linkchecker does not build properly on windows with MSVC:
Philippe@pc-philippe /cygdrive/d/work/elc-dev/git-linkchecker2 $ python
Python 2.6.1 (r261:67517, Dec 4 2008, 16:51:00) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
Converted from SourceForge issue 2978524, submitted by bluebird75
Hi Bastian,
linkchecker does not build properly on windows with MSVC:
Philippe@pc-philippe /cygdrive/d/work/elc-dev/git-linkchecker2 $ python
Python 2.6.1 (r261:67517, Dec 4 2008, 16:51:00) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
*** SOURCE WARNING: The MANIFEST file is missing!
creating build
creating build\share
creating build\share\locale
creating build\share\locale\de
creating build\share\locale\de\LC_MESSAGES
creating build\share\locale\es
creating build\share\locale\es\LC_MESSAGES
creating build\share\locale\fr
creating build\share\locale\fr\LC_MESSAGES
running build_py
creating build\lib.win32-2.6
creating build\lib.win32-2.6\linkcheck
copying linkcheck\ansicolor.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\clamav.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\containers.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\cookies.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\decorators.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\dummy.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\fcgi.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\fileutil.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\ftpparse.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\gzip2.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\httplib2.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\httputil.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\i18n.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\lc_cgi.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\lock.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\log.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\mem.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\robotparser2.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\socketutil.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\strformat.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\threader.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\trace.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\url.py -> build\lib.win32-2.6\linkcheck
copying linkcheck\winutil.py -> build\lib.win32-2.6\linkcheck
copying linkcheckinit.py -> build\lib.win32-2.6\linkcheck
creating build\lib.win32-2.6\linkcheck\logger
copying linkcheck\logger\blacklist.py -> build\lib.win32-2.6\linkcheck\logger
copying linkcheck\logger\csvlog.py -> build\lib.win32-2.6\linkcheck\logger
copying linkcheck\logger\customxml.py -> build\lib.win32-2.6\linkcheck\logger
copying linkcheck\logger\dot.py -> build\lib.win32-2.6\linkcheck\logger
copying linkcheck\logger\gml.py -> build\lib.win32-2.6\linkcheck\logger
copying linkcheck\logger\graph.py -> build\lib.win32-2.6\linkcheck\logger
copying linkcheck\logger\gxml.py -> build\lib.win32-2.6\linkcheck\logger
copying linkcheck\logger\html.py -> build\lib.win32-2.6\linkcheck\logger
copying linkcheck\logger\none.py -> build\lib.win32-2.6\linkcheck\logger
copying linkcheck\logger\sql.py -> build\lib.win32-2.6\linkcheck\logger
copying linkcheck\logger\text.py -> build\lib.win32-2.6\linkcheck\logger
copying linkcheck\logger\xmllog.py -> build\lib.win32-2.6\linkcheck\logger
copying linkcheck\loggerinit.py -> build\lib.win32-2.6\linkcheck\logger
creating build\lib.win32-2.6\linkcheck\checker
copying linkcheck\checker\const.py -> build\lib.win32-2.6\linkcheck\checker
copying linkcheck\checker\fileurl.py -> build\lib.win32-2.6\linkcheck\checker
copying linkcheck\checker\ftpurl.py -> build\lib.win32-2.6\linkcheck\checker
copying linkcheck\checker\httpheaders.py -> build\lib.win32-2.6\linkcheck\checker
copying linkcheck\checker\httpsurl.py -> build\lib.win32-2.6\linkcheck\checker
copying linkcheck\checker\httpurl.py -> build\lib.win32-2.6\linkcheck\checker
copying linkcheck\checker\internpaturl.py -> build\lib.win32-2.6\linkcheck\checker
copying linkcheck\checker\mailtourl.py -> build\lib.win32-2.6\linkcheck\checker
copying linkcheck\checker\nntpurl.py -> build\lib.win32-2.6\linkcheck\checker
copying linkcheck\checker\proxysupport.py -> build\lib.win32-2.6\linkcheck\checker
copying linkcheck\checker\telneturl.py -> build\lib.win32-2.6\linkcheck\checker
copying linkcheck\checker\unknownurl.py -> build\lib.win32-2.6\linkcheck\checker
copying linkcheck\checker\urlbase.py -> build\lib.win32-2.6\linkcheck\checker
copying linkcheck\checkerinit.py -> build\lib.win32-2.6\linkcheck\checker
creating build\lib.win32-2.6\linkcheck\director
copying linkcheck\director\aggregator.py -> build\lib.win32-2.6\linkcheck\director
copying linkcheck\director\checker.py -> build\lib.win32-2.6\linkcheck\director
copying linkcheck\director\cleanup.py -> build\lib.win32-2.6\linkcheck\director
copying linkcheck\director\console.py -> build\lib.win32-2.6\linkcheck\director
copying linkcheck\director\logger.py -> build\lib.win32-2.6\linkcheck\director
copying linkcheck\director\status.py -> build\lib.win32-2.6\linkcheck\director
copying linkcheck\director\task.py -> build\lib.win32-2.6\linkcheck\director
copying linkcheck\directorinit.py -> build\lib.win32-2.6\linkcheck\director
creating build\lib.win32-2.6\linkcheck\configuration
copying linkcheck\configuration\confparse.py -> build\lib.win32-2.6\linkcheck\configuration
copying linkcheck\configurationinit.py -> build\lib.win32-2.6\linkcheck\configuration creating build\lib.win32-2.6\linkcheck\cache
copying linkcheck\cache\addrinfo.py -> build\lib.win32-2.6\linkcheck\cache
copying linkcheck\cache\connection.py -> build\lib.win32-2.6\linkcheck\cache
copying linkcheck\cache\cookie.py -> build\lib.win32-2.6\linkcheck\cache
copying linkcheck\cache\geoip.py -> build\lib.win32-2.6\linkcheck\cache
copying linkcheck\cache\robots_txt.py -> build\lib.win32-2.6\linkcheck\cache
copying linkcheck\cache\urlqueue.py -> build\lib.win32-2.6\linkcheck\cache
copying linkcheck\cacheinit.py -> build\lib.win32-2.6\linkcheck\cache
creating build\lib.win32-2.6\linkcheck\htmlutil
copying linkcheck\htmlutil\linkname.py -> build\lib.win32-2.6\linkcheck\htmlutil
copying linkcheck\htmlutil\linkparse.py -> build\lib.win32-2.6\linkcheck\htmlutil
copying linkcheck\htmlutilinit.py -> build\lib.win32-2.6\linkcheck\htmlutil
creating build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\dnssec.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\e164.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\edns.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\entropy.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\exception.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\flags.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\inet.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\ipv4.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\ipv6.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\message.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\name.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\namedict.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\node.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\opcode.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\query.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\rcode.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\rdata.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\rdataclass.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\rdataset.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\rdatatype.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\renderer.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\resolver.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\reversename.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\rrset.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\tokenizer.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\tsig.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\tsigkeyring.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\ttl.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\update.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\version.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dns\zone.py -> build\lib.win32-2.6\linkcheck\dns
copying linkcheck\dnsinit.py -> build\lib.win32-2.6\linkcheck\dns
creating build\lib.win32-2.6\linkcheck\dns\rdtypes
copying linkcheck\dns\rdtypes\dsbase.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes
copying linkcheck\dns\rdtypes\keybase.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes
copying linkcheck\dns\rdtypes\mxbase.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes
copying linkcheck\dns\rdtypes\nsbase.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes
copying linkcheck\dns\rdtypes\sigbase.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes
copying linkcheck\dns\rdtypes\txtbase.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes
copying linkcheck\dns\rdtypesinit.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes
creating build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\AFSDB.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\CERT.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY copying linkcheck\dns\rdtypes\ANY\CNAME.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\DLV.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\DNAME.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\DNSKEY.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\DS.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\GPOS.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY copying linkcheck\dns\rdtypes\ANY\HINFO.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\HIP.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\ISDN.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY copying linkcheck\dns\rdtypes\ANY\KEY.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\LOC.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\MX.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\NS.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\NSEC.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY copying linkcheck\dns\rdtypes\ANY\NSEC3.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\NSEC3PARAM.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\NXT.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\PTR.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\RP.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\RRSIG.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\RT.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\SIG.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\SOA.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\SPF.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\SSHFP.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\TXT.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANY\X25.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
copying linkcheck\dns\rdtypes\ANYinit.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\ANY
creating build\lib.win32-2.6\linkcheck\dns\rdtypes\IN
copying linkcheck\dns\rdtypes\IN\A.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\IN
copying linkcheck\dns\rdtypes\IN\AAAA.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\IN
copying linkcheck\dns\rdtypes\IN\APL.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\IN
copying linkcheck\dns\rdtypes\IN\DHCID.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\IN
copying linkcheck\dns\rdtypes\IN\IPSECKEY.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\IN
copying linkcheck\dns\rdtypes\IN\KX.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\IN
copying linkcheck\dns\rdtypes\IN\NAPTR.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\IN
copying linkcheck\dns\rdtypes\IN\NSAP.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\IN
copying linkcheck\dns\rdtypes\IN\NSAP_PTR.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\IN
copying linkcheck\dns\rdtypes\IN\PX.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\IN
copying linkcheck\dns\rdtypes\IN\SRV.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\IN
copying linkcheck\dns\rdtypes\IN\WKS.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\IN
copying linkcheck\dns\rdtypes\INinit.py -> build\lib.win32-2.6\linkcheck\dns\rdtypes\IN
creating build\lib.win32-2.6\linkcheck\HtmlParser
copying linkcheck\HtmlParser\htmllib.py -> build\lib.win32-2.6\linkcheck\HtmlParser
copying linkcheck\HtmlParserinit.py -> build\lib.win32-2.6\linkcheck\HtmlParser
creating build\lib.win32-2.6\linkcheck\network
copying linkcheck\network\iputil.py -> build\lib.win32-2.6\linkcheck\network
copying linkcheck\networkinit.py -> build\lib.win32-2.6\linkcheck\network
creating build\lib.win32-2.6\linkcheck\gui
copying linkcheck\gui\checker.py -> build\lib.win32-2.6\linkcheck\gui
copying linkcheck\gui\contextmenu.py -> build\lib.win32-2.6\linkcheck\gui
copying linkcheck\gui\help.py -> build\lib.win32-2.6\linkcheck\gui
copying linkcheck\gui\linkchecker_rc.py -> build\lib.win32-2.6\linkcheck\gui
copying linkcheck\gui\linkchecker_ui_main.py -> build\lib.win32-2.6\linkcheck\gui
copying linkcheck\gui\linkchecker_ui_options.py -> build\lib.win32-2.6\linkcheck\gui
copying linkcheck\gui\linkchecker_ui_progress.py -> build\lib.win32-2.6\linkcheck\gui
copying linkcheck\gui\logger.py -> build\lib.win32-2.6\linkcheck\gui
copying linkcheck\gui\options.py -> build\lib.win32-2.6\linkcheck\gui
copying linkcheck\gui\progress.py -> build\lib.win32-2.6\linkcheck\gui
copying linkcheck\guiinit.py -> build\lib.win32-2.6\linkcheck\gui
running build_ext
building 'linkcheck.HtmlParser.htmlsax' extension
creating build\temp.win32-2.6
creating build\temp.win32-2.6\Release
creating build\temp.win32-2.6\Release\linkcheck
creating build\temp.win32-2.6\Release\linkcheck\HtmlParser
c:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\cl.exe /c /nologo /Ox /MD /W3 /GS- /DNDEBUG -DYY_NO_UNISTD_H -DYY_NO_INPUT -Ilinkcheck\HtmlParser -Ic:\Python26\include -Ic:\Python26\PC /Tclinkcheck/HtmlParser/htmllex.c /Fobuild\temp.win32-2.6\Release\linkcheck/HtmlParser/htmllex.obj
htmllex.c
htmllex.l(1100) : warning C4018: '>' : signed/unsigned mismatch
c:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\cl.exe /c /nologo /Ox /MD /W3 /GS- /DNDEBUG -DYY_NO_UNISTD_H -DYY_NO_INPUT -Ilinkcheck\HtmlParser -Ic:\Python26\include -Ic:\Python26\PC /Tclinkcheck/HtmlParser/htmlparse.c /Fobuild\temp.win32-2.6\Release\linkcheck/HtmlParser/htmlparse.obj
htmlparse.c
htmlparse.y(728) : warning C4018: '>=' : signed/unsigned mismatch
htmlparse.y(731) : warning C4018: '>=' : signed/unsigned mismatch
c:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\cl.exe /c /nologo /Ox /MD /W3 /GS- /DNDEBUG -DYY_NO_UNISTD_H -DYY_NO_INPUT -Ilinkcheck\HtmlParser -Ic:\Python26\include -Ic:\Python26\PC /Tclinkcheck/HtmlParser/s_util.c /Fobuild\temp.win32-2.6\Release\linkcheck/HtmlParser/s_util.obj
s_util.c
c:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\link.exe /DLL /nologo /INCREMENTAL:NO /LIBPATH:c:\Python26\libs /LIBPATH:c:\Python26\PCbuild /EXPORT:inithtmlsax build\temp.win32-2.6\Release\linkcheck/HtmlParser/htmllex.obj build\temp.win32-2.6\Release\linkcheck/HtmlParser/htmlparse.obj build\temp.win32-2.6\Release\linkcheck/HtmlParser/s_util.obj /OUT:build\lib.win32-2.6\linkcheck\HtmlParser\htmlsax.pyd /IMPLIB:build\temp.win32-2.6\Release\linkcheck/HtmlParser\htmlsax.lib /MANIFESTFILE:build\temp.win32-2.6\Release\linkcheck/HtmlParser\htmlsax.pyd.manifest
Creating library build\temp.win32-2.6\Release\linkcheck/HtmlParser\htmlsax.lib and object build\temp.win32-2.6\Release\linkcheck/HtmlParser\htmlsax.exp
C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin\mt.exe -nologo -manifest build\temp.win32-2.6\Release\linkcheck/HtmlParser\htmlsax.pyd.manifest -outputresource:build\lib.win32-2.6\linkcheck\HtmlParser\htmlsax.pyd;2
building 'linkcheck.network._network' extension
creating build\temp.win32-2.6\Release\linkcheck\network
c:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\cl.exe /c /nologo /Ox /MD /W3 /GS- /DNDEBUG -DYY_NO_UNISTD_H -Ic:\Python26\include -Ic:\Python26\PC /Tclinkcheck/network/_network.c /Fobuild\temp.win32-2.6\Release\linkcheck/network/_network.obj
_network.c
linkcheck/network/_network.c(20) : fatal error C1083: Cannot open include file: 'sys/ioctl.h': No such file or directory
error: command '"c:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\cl.exe"' failed with exit status 2
Philippe@pc-philippe /cygdrive/d/work/elc-dev/git-linkchecker2 $