diff --git a/numpy/fft/setup.py b/numpy/fft/setup.py
index cd99a82d7..e614ecd07 100644
--- a/numpy/fft/setup.py
+++ b/numpy/fft/setup.py
@@ -9,7 +9,8 @@ def configuration(parent_package='',top_path=None):
 
     # Configure fftpack_lite
     config.add_extension('fftpack_lite',
-                         sources=['fftpack_litemodule.c', 'fftpack.c']
+                         sources=['fftpack_litemodule.c', 'fftpack.c'],
+                         libraries=['m']
                          )
 
     return config
diff --git a/numpy/linalg/setup.py b/numpy/linalg/setup.py
index 66c07c9e1..d34bd930a 100644
--- a/numpy/linalg/setup.py
+++ b/numpy/linalg/setup.py
@@ -43,6 +43,7 @@ def configuration(parent_package='', top_path=None):
         sources=['lapack_litemodule.c', get_lapack_lite_sources],
         depends=['lapack_lite/f2c.h'],
         extra_info=lapack_info,
+        libraries=['m'],
     )
 
     # umath_linalg module
@@ -51,7 +52,7 @@ def configuration(parent_package='', top_path=None):
         sources=['umath_linalg.c.src', get_lapack_lite_sources],
         depends=['lapack_lite/f2c.h'],
         extra_info=lapack_info,
-        libraries=['npymath'],
+        libraries=['npymath', 'm'],
     )
     return config
 
diff --git a/numpy/random/setup.py b/numpy/random/setup.py
index 3f3b773a4..c1db9f783 100644
--- a/numpy/random/setup.py
+++ b/numpy/random/setup.py
@@ -40,7 +40,7 @@ def configuration(parent_package='',top_path=None):
     if needs_mingw_ftime_workaround():
         defs.append(("NPY_NEEDS_MINGW_TIME_WORKAROUND", None))
 
-    libs = []
+    libs = ['m']
     # Configure mtrand
     config.add_extension('mtrand',
                          sources=[join('mtrand', x) for x in