jessevdk / cldoc

clang based documentation generator for C and C++
GNU General Public License v2.0
553 stars 59 forks source link

Install on Arch linux fails #120

Closed youngmit closed 6 years ago

youngmit commented 8 years ago

I am trying to install cldoc on an Arch system, and having issues with the pyparsing dependency. cldoc seems to want exactly version 1.5.7, which appears to be incompatible with the current version of python2:

 % pip2 install --user pyparsing==1.5.7 --no-cache-dir
Collecting pyparsing==1.5.7
  Downloading pyparsing-1.5.7.zip (965kB)
    100% |████████████████████████████████| 972kB 26.0MB/s
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/usr/lib/python2.7/site-packages/setuptools/__init__.py", line 11, in <module>
        from setuptools.extern.six.moves import filterfalse, map
      File "/usr/lib/python2.7/site-packages/setuptools/extern/__init__.py", line 1, in <module>
        from pkg_resources.extern import VendorImporter
      File "/usr/lib/python2.7/site-packages/pkg_resources/__init__.py", line 71, in <module>
        __import__('pkg_resources.extern.packaging.requirements')
      File "/usr/lib/python2.7/site-packages/pkg_resources/extern/__init__.py", line 42, in load_module
        __import__(extant)
      File "/usr/lib/python2.7/site-packages/packaging/requirements.py", line 59, in <module>
        MARKER_EXPR = originalTextFor(MARKER_EXPR())("marker")
    TypeError: __call__() takes exactly 2 arguments (1 given)

I'm not sure if this failure is due to some other issue, or if version 1.5.7 of pyparsing is not compatible with my current version of python (2.7.11). I'm unfamiliar with the MARKER_EXPR that is giving me the issue.

The version of pyparsing that is currently installed on my system is 2.1.4. Does cldoc need pyparsing==1.5.7, or would pyparsing>=1.5.7 suffice?

refi64 commented 8 years ago

Pyparsing 1.5.7 does work under Python 2. This seems like something weird going on with your packaging...

jessevdk commented 8 years ago

I'm not against bumping the pyparsing version, but it does seem like it's a problem on your system as @kirbyfan64 mentions.

Salamandar commented 8 years ago

I got the exact same problem and I dont know where there would be a problem on my system ^^ The repositories of my distro are up to date:

1 extra/python-pyparsing 2.1.8-1 [installed]
    General parsing module for Python
2 extra/python2-pyparsing 2.1.8-1 [installed]
    General parsing module for Python

And there's just no (correct and clean) way to install the "old" (or not so much ?) pyparsing 1.5.7.

refi64 commented 8 years ago

@Salamandar Try pip install pyparsing==1.5.7.

Salamandar commented 8 years ago

I just modified the file /usr/lib/python2.7/site-packages/cldoc-1.9-py2.7.egg-info/requires.txt to say pyparsing >=1.5.7, and that works amazingly fine :)

Salamandar commented 8 years ago

@kirbyfan64 I could but that basically would break my distro's package management (or not, but I would not tempt the devil). I worked for some weeks on my laptop with this fix (and bumped on this problem today on my desktop) without issue.

xgdgsc commented 8 years ago

Works with anaconda2 python on archlinux.

fennecdjay commented 7 years ago

I just modified the file /usr/lib/python2.7/site-packages/cldoc-1.9-py2.7.egg-info/requires.txt to say pyparsing >=1.5.7, and that works amazingly fine :)

I did it in setup.py and it is fine!

catskul commented 6 years ago

This pull request upgrades pyparsing:

https://github.com/jessevdk/cldoc/pull/131

jessevdk commented 6 years ago

pyparsing has been upgraded to 2.2. Could you verify this now works for you?