How to Install

NOTE
 

The instructions on this page are for the latest WinDriver version released for
the target operating system (visit the online store for an updated list of
the latest WinDriver versions). To install an older version of WinDriver, refer
to the installation instructions in the WinDriver User’s Manual for your
WinDriver version.

General Information

The WinDriver CD contains all versions of WinDriver for all the different
operating systems. The CD’s root directory contains the Windows version.
This will automatically run when you insert the CD into your CD drive. The
other versions of WinDriver are located in subdirectories i.e.,
\Linux, \Wince and so on.

Below you will find instructions for
Windows,
Windows CE, and
Linux.


Installation Instructions for Windows

 

System Requirements

 

  • Any x86 32-bit or 64-bit (x64: AMD64 or Intel EM64T) processor.
  • Any compiler or development environment supporting C or .NET
  • Windows XP requires at least SP2.

 

Installation
NOTE
 

Driver installation on Windows requires administrator privileges.

    1. Insert the WinDriver CD into your CD-ROM drive, or double-click the
      downloaded installation file — WD<version>.EXE (for
      example, WD1120.EXE) — and follow the
      installation instructions. 

      NOTE
       

      When using the installation CD, wait a few seconds for the installation
      to begin automatically. If this does not happen, double-click the
      Windows installation file in the CD —
      WD<version>.EXE — and click the
      Install WinDriver button.

 

  1. At the end of the installation, you may be prompted to reboot your
    computer.
NOTE
 

    • The WinDriver installation defines a WD_BASEDIR
      environment variable, which is set to point to the location of your
      WinDriver directory, as selected during the installation. This variable
      is used during the DriverWizard code generation — it determines
      the default directory for saving your generated code and is used in the
      include paths of the generated project/make files. This variable is
      also used from the sample Kernel PlugIn projects and
      makefiles.

 

  • If the installation fails with an
    ERROR_FILE_NOT_FOUND error, inspect the Windows
    registry to see if the RunOnce key exists in
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion.
    This registry key is required by Windows Plug-and-Play in order to
    properly install drivers using INF files. If the
    RunOnce key is missing, create it; then try
    installing the INF file again.

 

The following steps are for registered users only:

To register your copy of WinDriver with the license you received from Jungo,
follow these steps:

    1. Start DriverWizard: Start | Programs | WinDriver | DriverWizard.

 

    1. Select the Register WinDriver option from the File menu,
      and insert the license string you received from Jungo.

 

    1. Click the Activate License button.

 

  1. To register source code you developed during the evaluation period:

     

     

    • For PCI: Refer to the documentation of
      WDC_DriverOpen() in the
      WinDriver User’s Manual

      When using the low-level WD_xxx API instead of the
      WDC_xxx API (which is used by default), refer to
      the documentation of WD_License() in the
      WinDriver User’s Manual.

 


Installation Instructions for Windows CE

 

System Requirements

 

    • An x86, MIPS, or ARM target platform running Windows CE (a.k.a.
      Windows Embedded Compact)

 

    • Windows 7/Vista/Server 2008/Server 2003/XP
      host development platform.

 

  • IDE:
      • For Windows CE 4.x–5.x(including Windows Mobile):
        • Microsoft eMbedded Visual C++ or
          Microsoft Visual Studio 2005/2008 with a
          corresponding target SDK
        • Microsoft Platform Builder with a corresponding
          Board Support Package (BSP) for the target platform

     

      • For Windows Embedded CE 6.x: Microsoft Visual Studio
        2005/2008 with a corresponding target SDK or with the Windows
        CE 6.0 plugin.

     

    • For Windows Embedded CE 7.x: Microsoft Visual Studio
      2005/2008 with the Windows CE 7 plugin

 

Installation

Installing WinDriver CE when Building New CE-based Platforms

NOTE
 

    • The following instructions apply to platform developers who build
      Windows CE kernel images using Windows CE Platform Builder or using
      MS Visual Studio 2005/2008 with the appropriate Windows CE 6.0 plugin.
      The instructions use the notation “Windows CE IDE”
      to refer to either of these platforms.

 

  • We recommend that you read Microsoft’s documentation and understand the
    Windows CE and device driver integration procedure before you perform
    the installation.

 


    1. Modify the project registry file to add an entry for your target device: 

      • If you select to use the WinDriver component (refer to
        Step 2),
        modify
        WinDriver\samples\wince_install\<TARGET_CPU>\WinDriver.reg
        (e.g.,
        WinDriver\samples\wince_install\ARMV4I\WinDriver.reg).
      • Otherwise, modify
        WinDriver\samples\wince_install\project_wd.reg.

 


    1. For Windows CE 4.x–5.x only, you can simplify the
      driver integration into your Windows CE platform by following the
      procedure described in this step, before the Sysgen platform
      compilation stage. 

      NOTE
       

       

        • Developers who use Windows CE 6.x and higher should skip to the
          next step (Step 3).

       

        • The procedure described in this step is relevant only for
          developers who use Windows CE 4.x–5.x with
          Platform Builder. Developers who use
          Windows CE 6.x with MSDEV 2005 should skip to the next step
          [3].

       

        • This procedure provides a convenient method for integrating
          WinDriver into your Windows CE platform. If you select not to
          use this method, you will need to perform the manual
          integration steps described in Step 4
          below after the Sysgen stage.

       

      • The procedure described in this step also adds the WinDriver
        kernel module (windrvr6.dll) to your OS image. This is a
        necessary step if you want the WinDriver CE kernel file
        (windrvr6.dll) to be a permanent part of the Windows CE
        image (NK.BIN), which is the case if you select to
        transfer the file to your target platform using a boot disk.
        However, if you prefer to have the file windrvr6.dll
        loaded on demand via the CESH/PPSH services, you need to
        perform the manual integration method described in
        Step 4 instead of
        performing the procedure described in the present step.

       

        1. Run the Windows CE IDE and and open your platform.

       

        1. From the File menu select
          Manage Catalog Items…., click the
          Import… button, and select the
          WinDriver.cec file from the relevant
          WinDriver\samples\wince_install\<TARGET_CPU>
          directory (e.g.,
          WinDriver\samples\wince_install\ARMV4I).

          This will add a WinDriver component to the
          Platform Builder Catalog.

       

      1. In the Catalog view, right-click the mouse on the
        WinDriver Component node in the
        Third Party tree, and select
        Add to OS design.

 


    1. Compile your Windows CE platform (Sysgen stage).

 


    1. If you did not perform the procedure described in Step 2 above,
      perform the following steps after the Sysgen stage in order to manually
      integrate the driver into your platform.

      Note: If you followed the procedure described in Step 2, skip
      this step and go directly to Step 5

        1. Run the Windows CE IDE and open your platform.

       

        1. Select Open Build Release Directory from the
          Build menu.

       

        1. Copy the WinDriver CE kernel file —
          WinDriver\redist\<TARGET_CPU>\windrvr6.dll
          — to the %_FLATRELEASEDIR% subdirectory on the
          target development platform (should be the current directory in
          the new command window).

       

        1. Append the contents of
          WinDriver\samples\wince_install\project_wd.reg
          to the %_FLATRELEASEDIR%\project.reg
          registry file.

       

      1. Copy the contents of the
        WinDriver\samples\wince_install\project_wd.bib
        file to the FILES section of the binary image builder file
        %_FLATRELEASEDIR%\project.bib.
        Then uncomment the line that matches the target platform (see
        the “TODO” comments in the copied text). 

        NOTE
         

        This step is only necessary if you want the WinDriver CE kernel
        file (windrvr6.dll) to be a permanent part of the
        Windows CE image (NK.BIN), which is the case if you
        select to transfer the file to your target platform using a
        boot disk. If you prefer to have the file windrvr6.dll
        loaded on demand via the CESH/PPSH services, you do not need to
        perform this step until you build a permanent kernel.

 

    1. Select Make Image from
      the Build menu, and name the new image NK.BIN.

 

    1. Download your new kernel to the target platform and initialize it
      either by selecting Attach Device from the
      Target menu, or by using a boot disk. For Windows CE 4.x, the
      menu is called Download/Initialize rather than
      Attach Device

       

    1. Restart your target CE platform. The WinDriver CE kernel will
      automatically load.
  1. Compile and run the sample programs to make sure that WinDriver CE is
    loaded and is functioning correctly (see the WinDriver User’s Manual
    for an explanation on how to check your installation).

 

Installing WinDriver CE when Developing Applications for CE Computers

NOTE
 

Unless otherwise specified, “Windows CE” references in this section include all
supported Windows CE platforms, including Windows Mobile.

The following instructions apply to driver developers who do not build the
Windows CE kernel, but only download their drivers, built using
MS eMbedded Visual C++or MS Visual Studio 2005/2008
to a ready-made Windows CE platform.

 

    1. Insert the WinDriver CD into your Windows host CD drive.

 

    1. Exit the automatic installation.

 

    1. Copy WinDriver’s kernel module — windrvr6.dll — from
      the WinDriver\redist\WINCE\<TARGET_CPU>
      directory on the Windows host development PC to the Windows
      directory on your target Windows CE platform

 

    1. Add WinDriver to the list of device drivers Windows CE loads on boot: 
        • Modify the registry according to the entries documented in the
          file WinDriver\samples\wince_install\project_wd.reg.
          This can be done using the Windows CE Pocket Registry Editor on
          the hand-held CE computer, or by using the Remote CE Registry
          Editor Tool supplied with MS eMbedded Visual C++ or
          MS Visual Studio 2005/2008. Note that in order to use the
          Remote CE Registry Editor tool you will need to have Windows CE
          Services installed on your Windows host platform.

       

      • On many versions of Windows CE, the operating system’s security
        scheme prevents the loading of unsigned drivers at boot time,
        therefore the WinDriver kernel module has to be reloaded after
        boot. To load WinDriver on the target Windows CE platform every
        time the OS is started, copy the
        WinDriver\redist\Windows_Mobile_5_ARMV4I\wdreg.exe

        utility to the Windows\StartUp\ directory on the target
        PC.

 

    1. Restart your target CE computer. The WinDriver CE kernel will
      automatically load. You will have to do a warm reset rather than just
      suspend/resume (use the reset or power button on your target CE
      computer).

 

  1. Compile and run the sample programs to make sure that WinDriver CE is
    loaded and is functioning correctly (see the WinDriver User’s Manual
    for an explanation on how to check your installation).

 

Windows CE Installation Note:

The WinDriver installation on the host
Windows 7/Vista/Server 2008/Server 2003/XP
PC defines a WD_BASEDIR environment variable, which is set
to point to the location of your WinDriver directory, as selected during the
installation. This variable is used during the DriverWizard code generation
— it determines the default directory for saving your generated code, and
is used in the include paths of the generated project/make files.

Note that if you install the WinDriver
Windows 7/Vista/Server 2008/Server 2003/XP
toolkit on the same host PC, the installation will override the value of the
WD_BASEDIR variable from the Windows CE installation.

 


Installation Instructions for Linux

 

System Requirements

 

    • Any of the following processor architectures, with a 2.6.x or higher
      Linux kernel: 

      • 32-bit x86
      • 64-bit x86 AMD64 or Intel EM64T (x86_64)
      • PowerPC 32-bit or 64-bit (PCI only)
      NOTE
       

      Jungo strives to support new Linux kernel versions as close as possible
      to their release. To find out the latest supported kernel version,
      refer to the .

 

    • A GCC compiler.NOTE: The version of the GCC compiler should match the compiler
      version used for building the running Linux kernel.

 

    • Any 32-bit or 64-bit development environment (depending on your target
      configuration) supporting C for user mode.

 

    • On your development PC: glibc2.3.x.

 

  • libstdc++.so.5 is required for running GUI WinDriver
    applications (e.g., DriverWizard; Debug Monitor).

 

Preparing the System for Installation

 

In Linux, kernel modules must be compiled with the same header files that the
kernel itself was compiled with. Since WinDriver installs the kernel modules,
it must compile with the header files of the Linux kernel during the
installation process.

Therefore, before you install WinDriver for Linux, verify that the Linux source
code and the file version.h are installed on your machine:

Install Linux kernel source code:

    • If you have yet to install Linux, install it, including the kernel
      source code, by following the instructions for your Linux distribution.

 

  • If Linux is already installed on your machine, check whether the Linux
    source code was installed. You can do this by looking for ‘linux’ in
    the /usr/src directory. If the source code is not installed,
    either install it, or reinstall Linux with the source code, by
    following the instructions for your Linux distribution.

Install version.h:

The file version.h is created when you first compile the Linux kernel
source code. Some distributions provide a compiled kernel without the file
version.h. Look under /usr/src/linux/include/linux/
to see whether you have this file. If you do not, follow these steps:

  1. Become super user:

    $ su

  2. Change directory to the Linux source directory:

    # cd /usr/src/linux

  3. Type

    # make xconfig

  4. Save the configuration by choosing Save and Exit.
  5. Type

    # make dep

  6. Exit super user mode:

    # exit

To run GUI WinDriver applications (e.g., DriverWizard; Debug Monitor) you must
also have version 5.0 of the libstdc++ library —
libstdc++.so.5. If you do not have this file, install it from the
relevant RPM in your Linux distribution (e.g., compat-libstdc++).

Before proceeding with the installation, you must also make sure that you have
a ‘linux’ symbolic link. If you do not, create one by typing

/usr/src$ ln -s <target kernel>/ linux

For example, for the Linux 2.4 kernel type

/usr/src$ ln -s linux-2.4/ linux

 

Installation

If your development machine is running a Debian distribution (e.g., Ubuntu) or
has the Red Hat Linux (RPM) utility (used, e.g., in Red Hat distributions such
as Fedora), you can use the provided Debian or RPM installation package
(respectively) to automate the WinDriver installation, as outlined
below. Otherwise, follow the
manual installation process, which is
supported for all Linux distributions.

Installation using a Debian or RPM Installation Package

To install WinDriver using one of the Debian or RPM WinDriver installation
packages, follow these steps:

    1. Insert the WinDriver CD into your Linux machine’s CD drive, or copy the
      downloaded file to your preferred directory.

 

    1. Extract the relevant distribution package for your development machine
      from the WinDriver installation file —
      WD<version>LN.tgz (e.g.,
      WD1120LN.tgz) or
      WD<version>LNx86_64.tgz (e.g.,
      WD1120LNx86_64.tgz):

       

      • Debian 32-bit —
        windriver-<version>-1.i386.deb
        (e.g.,
        windriver-11.2.0-1.i386.deb)
      • Debian 64-bit —
        windriver-<version>-1.x86_64.deb
        (e.g.,
        windriver-11.2.0-1.x86_64.deb)
      • RPM 32-bit —
        windriver-<version>-2.i386.rpm
        (e.g.,
        windriver-11.2.0-2.i386.rpm)
      • RPM 64-bit —
        windriver-<version>-2.x86_64.rpm
        (e.g.,
        windriver-11.2.0-2.x86_64.rpm)

 

  1. Use your selected package installer software to install the extracted
    package. 

    NOTE
     

      • On most machines, *.deb files (Debian) and *.rpm
        files (RPM) are already associated with the relevant
        installation software, so you can simply double-click the
        package file and follow the installation instructions.

     

    • You may also install the package from the command-line, using
      root privileges — for example: 

      • To install the 32-bit Debian package —

        # sudo dpkg -i
        windriver-11.2.0-1.i386.deb

      • To install the 64-bit RPM package —

        # sudo rpm -i --scripts
        windriver-11.2.0-2.x86_64.rpm

    The package installation will create a
    /usr/local/WinDriver product directory.

Manual Installation

    1. Insert the WinDriver CD into your Linux machine’s CD drive, or copy the
      downloaded file to your preferred directory.

 

    1. Change directory to your preferred installation directory, for example
      to your home directory:

      $ cd ~/ 

      NOTE
       

      The path to the installation directory must not contain any spaces.

 

    1. Extract the WinDriver distribution file —
      WD<version>LN[x86_64].tgz (for example,
      WD1120LN.tgz or
      WD1120LNx86_64.tgz):


      $
      tar xvzf <file location>/WD<version>LN[x86_64].tgz
       

      For example, to extract WD1120LN.tgz

        • From a CD —


          $ tar xvzf /mnt/cdrom/LINUX/WD1120LN.tgz

       

      • From a downloaded file —


        $ tar xvzf ~/WD1120LN.tgz

 

    1. Change directory to your WinDriver redist/ directory (the tar
      automatically creates a WinDriver/ directory):

      $ cd <WinDriver directory path>/redist/

 

    1. Install WinDriver: 
        1. For USB:


          <WinDriver directory>/redist$ ./configure

          For PCI:


          <WinDriver directory>/redist$
          ./configure --disable-usb-support

           

          NOTE
           

          • The configuration script creates a makefile
            based on the running kernel. You may select to use
            another installed kernel source, by executing the
            script with the
            --with-kernel-source=<path>
            option, where <path> is the
            full path to the kernel source directory — e.g.,
            /usr/src/linux.
          • If the Linux kernel version is 2.6.26 or higher, the
            configuration script generates makefiles that use
            kbuild to compile the kernel modules. You can
            force the use of kbuild on earlier versions of
            Linux, by executing the configuration script with the
            --enable-kbuild flag.

          For a full list of the configuration script options, use the
          --help option:

          ./configure --help

       

        1. <WinDriver directory>/redist$ make

       

        1. Become super user:

          <WinDriver directory>/redist$ su

       

      1. Install the driver:


        <WinDriver directory>/redist# make install

 

    1. Create a symbolic link so that you can easily launch the DriverWizard
      GUI:


      $ ln -s <full path to WinDriver>/wizard/wdwizard

      /usr/bin/wdwizard

 

    1. Change the read and execute permissions on the file wdwizard so
      that ordinary users can access this program.

 

    1. Change the user and group IDs and give read/write permissions to the
      device file /dev/windrvr6 depending on how you wish
      to allow users to access hardware through the device. Due to security
      reasons, by default the device file is created with permissions only
      for the root user. Change the permissions by modifying your
      /etc/udev/permissions.d/50-udev.permissions file.
      For example, add the following line to provide read and write
      permissions:
      windrvr6:root:root:0666 

 

    1. Define a new WD_BASEDIR environment variable and
      set it to point to the location of your WinDriver directory, as
      selected during the installation. This variable is used in the make and
      source files of the WinDriver samples and generated DriverWizard code,
      and is also used to determine the default directory for saving your
      generated DriverWizard project. If you do not define this variable you
      will be instructed to do so when attempting to build the
      sample/generated code using the WinDriver makefiles.

 

    1. Exit super user mode:

      # exit

 

  1. You can now start using WinDriver to access your hardware and generate
    your driver code!

TIP!

Use the WinDriver/util/wdreg script to load the WinDriver kernel
module.

To automatically load WinDriver on each boot, add the following to the target
Linux boot file (/etc/rc.d/rc.local):


<path to wdreg>/wdreg windrvr6

 

Registering Your WinDriver License

NOTE
 

This section applies only to registered WinDriver users.

To register your copy of WinDriver with the license you received from Jungo,
follow these steps:

    1. Start DriverWizard:

      $ <path to WinDriver>/wizard/wdwizard

 

    1. Select the Register WinDriver option from the File menu,
      and insert the license string you received from Jungo.

 

    1. Click the Activate License button.

 

  1. To register source code you developed during the evaluation period: 

     

 

Restricting Hardware Access on Linux

CAUTION:

Since /dev/windrvr6 gives direct hardware access to user programs, it
may compromise kernel stability on multi-user Linux systems. Please restrict
access to the DriverWizard and the device file /dev/windrvr6 to trusted
users.

For security reasons the WinDriver installation script does not automatically
perform the steps of changing the permissions on /dev/windrvr6 and the
DriverWizard executable (wdwizard).

 






Online Support Center for customer/evaluator: Secured Support Center (can’t access? use the non-secured version). For general inquiries: email info@jungo.com.

WinDriver Tutorials

Quick Start Guides