]> mj.ucw.cz Git - pciutils.git/blobdiff - README.Windows
update-pciids: Add support for xz compression
[pciutils.git] / README.Windows
index 5f73dd41e7163dbbf2720456a625bdaca48014db..7a5ccab1917ce549b71a7dc46fa86a41865cc9dd 100644 (file)
@@ -4,18 +4,35 @@ to Alexander Stock for contributing the port.
 Updated after version 2.2.6 to compile again, and with MinGW, even (only?)
 cross-compiling. (Hopefully it works with MSVC too.)
 
 Updated after version 2.2.6 to compile again, and with MinGW, even (only?)
 cross-compiling. (Hopefully it works with MSVC too.)
 
-To use this port, you need to install WinIO.dll first. You can get it
-from http://www.internals.com/.
+For simple listing PCI devices in system with basic information, there is no
+special requirement. To list PCI resources on Windows 8 and higher versions,
+it is necessary to have architecture-native version (e.g. AMD64 version on
+AMD64 systems).
 
 
-However, you need to use win32/config.{h,mk} instead of the automatically
-generated lib/config.{h,mk} as lib/configure does not run on Windows.
+To access config space on NT-based systems, it is required to have SeTcbPrivilege
+(Act as part of the operating system privilege), which can be enabled in User
+Accounts settings (take effect after next login). By default this privilege is
+not enabled for any non-system user. Or alternatively it is required to be in
+local Administrators group and on Windows 2000 SP4 or higher systems to have
+SeImpersonatePrivilege (Impersonate a client after authentication privilege)
+which is by default enabled for all local Administrators accounts. There is no
+special requirement for DOS-based systems. 64-bit systems do not have to allow
+users to access config space even with SeTcbPrivilege.
+
+To compile this port, run following command:
+
+  make CROSS_COMPILE=i586-mingw32msvc- HOST=i586-windows ZLIB=no IDSDIR=""
+
+To build 64-bit version, run:
+
+  make CROSS_COMPILE=x86_64-w64-mingw32- HOST=x86_64-windows ZLIB=no IDSDIR=""
+
+Sometimes compilation may fail due to broken or missing getopt implementation.
+In this case try to compile with additional make option: COMPAT_GETOPT=yes
 
 ================================================================================
 BEWARE: The current implementation pokes I/O ports to access the PCI devices
 directly. This leads to several problems: some devices are invisible, extended
 PCIe configuration space is not available, and there are many potential race
 conditions. Instead, libpci should use the proper Windows drivers.
 
 ================================================================================
 BEWARE: The current implementation pokes I/O ports to access the PCI devices
 directly. This leads to several problems: some devices are invisible, extended
 PCIe configuration space is not available, and there are many potential race
 conditions. Instead, libpci should use the proper Windows drivers.
-
-Unfortunately, the Windows port currently lacks a maintainer. If you are willing
-to step up and fix the issues, please let me know.  -- Martin Mares
 ================================================================================
 ================================================================================