ca7845
diff --git a/pycparser/c_lexer.py b/pycparser/c_lexer.py
ca7845
index 045d24e..9b3cbf2 100644
ca7845
--- a/pycparser/c_lexer.py
ca7845
+++ b/pycparser/c_lexer.py
ca7845
@@ -9,8 +9,8 @@
ca7845
 import re
ca7845
 import sys
ca7845
 
ca7845
-from .ply import lex
ca7845
-from .ply.lex import TOKEN
ca7845
+from ply import lex
ca7845
+from ply.lex import TOKEN
ca7845
 
ca7845
 
ca7845
 class CLexer(object):
ca7845
diff --git a/pycparser/c_parser.py b/pycparser/c_parser.py
ca7845
index 744ede8..50156a3 100644
ca7845
--- a/pycparser/c_parser.py
ca7845
+++ b/pycparser/c_parser.py
ca7845
@@ -8,7 +8,7 @@
ca7845
 #------------------------------------------------------------------------------
ca7845
 import re
ca7845
 
ca7845
-from .ply import yacc
ca7845
+from ply import yacc
ca7845
 
ca7845
 from . import c_ast
ca7845
 from .c_lexer import CLexer
ca7845
diff --git a/setup.py b/setup.py
ca7845
index 6dce89c..b3dbfb4 100644
ca7845
--- a/setup.py
ca7845
+++ b/setup.py
ca7845
@@ -8,6 +8,8 @@ except ImportError:
ca7845
     from distutils.command.install import install as _install
ca7845
     from distutils.command.sdist import sdist as _sdist
ca7845
 
ca7845
+import ply
ca7845
+
ca7845
 
ca7845
 def _run_build_tables(dir):
ca7845
     from subprocess import check_call
ca7845
@@ -60,7 +62,8 @@ setup(
ca7845
         'Programming Language :: Python :: 3.6',
ca7845
     ],
ca7845
     python_requires=">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*",
ca7845
-    packages=['pycparser', 'pycparser.ply'],
ca7845
+    packages=['pycparser'],
ca7845
+    install_requires=['ply==' + ply.__version__],
ca7845
     package_data={'pycparser': ['*.cfg']},
ca7845
     cmdclass={'install': install, 'sdist': sdist},
ca7845
 )