diff --git a/README b/README
index ec04fb58..af46b9a0 100644
--- a/README
+++ b/README
@@ -4,3 +4,43 @@ The latest version of AVRDUDE is always available here:
 
   http://savannah.nongnu.org/projects/avrdude
 
+
+Important environment variables for ./configure:
+================================================
+
+CPPFLAGS: C preprocessor flags (*not* "C++")
+
+This is the place to put additional (non-standard) -I options into.
+For example, if your Windows system has LibUSB-Win32 installed into
+\\WINDOWS\ProgramFiles\LibUSB-Win32, use
+
+CPPFLAGS=-I/WINDOWS/ProgramFiles/LibUSB-Win32/include
+
+to tell configure where to search for the header files.  (The use of
+forward slashes rather than backslashes can often simplify things.
+Note that the Windows system services internally treat both the same.
+It's only cmd.exe which requires backslashes as the directory
+separator.)
+
+LDFLAGS: Linker options
+
+This is the place to make additional library locations known to the
+linker.  To continue the above example, use
+
+LDFLAGS=-L/WINDOWS/ProgramFiles/LibUSB-Win32/lib/gcc
+
+to make the linker search for "libusb.a" in that directory.
+
+
+Linux users: make sure the header files are installed
+=====================================================
+
+While many Linux distributions install the libraries needed by AVRDUDE
+(libusb, libelf) by default, they leave out the corresponding header
+files.  Consequently, the configure script won't find them, so these
+libraries could not be used.
+
+Usually, the packages with the header files (and static libraries) are
+derived from the regular package name by appending "-devel".  Thus,
+make sure you have "libusb-devel" and "libelf-devel" installed before
+running the configure script.  (Same goes for libftdi.)