Du bist nicht angemeldet.

#1 17.12.2019 12:42:43

brikler
Mitglied

ich hab ein python proplem beim paket bauen (gelöst)

grüß euch,

ich möchte mir pyalpm bauen und es hängt sich damit auf:

  File "setup.py", line 48
    scripts=["scripts/lsoptdepends"] + [f'scripts/pycman-{p}' for p in PYCMAN_SCRIPTS],
                                                            ^
SyntaxError: invalid syntax

wenn ich das hochkomma weg tu, dann ist da schluß…

  File "setup.py", line 48
    scripts=["scripts/lsoptdepends"] + [f'scripts/pycman-{p} for p in PYCMAN_SCRIPTS],
                                                                                     ^
SyntaxError: EOL while scanning string literal

die methode schaut so aus:

setup(name='pyalpm',
          version=pyalpm_version,
          description='libalpm bindings for Python 3',
          long_description=long_description,
          long_description_content_type="text/markdown",
          author="Rémy Oudompheng",
          author_email="remy@archlinux.org",
          url="https://projects.archlinux.org/pyalpm.git",
          packages=["pycman"],
          scripts=["scripts/lsoptdepends"] + [f'scripts/pycman-{p}' for p in PYCMAN_SCRIPTS],
          ext_modules=[alpm],
          classifiers=[
              'Development Status :: 6 - Mature',
              'License :: OSI Approved :: GNU General Public License v3 (GPLv3)',
              'Programming Language :: C',
              'Topic :: System :: Software Distribution',
              'Topic :: System :: Systems Administration',
          ])

ich hab von der pest python grad so viel ahnung wie ein rindvieh von quanten…wie lässt sich das zurecht biegen?

Beitrag geändert von brikler (17.12.2019 14:12:44)

Offline

#2 17.12.2019 12:53:57

schard
Moderator

Re: ich hab ein python proplem beim paket bauen (gelöst)

Ich bin überrascht. Mit python verdiene ich mein täglich Brot. Was du da benutzt ist ein Format String innerhalb einer List Comprehension. Das sollte™ so eigentlich funktionieren.
Allerdings nur unter python 3.6 oder höher.
Wenn du das unter Python 2.x ausführst dürfte führt das zu einem solchen oder ähnlichen diesem Fehler führen.

Für Python 2.x kannst du stattdessen die format() Methode von str verwenden:

'scripts/pycman-{}'.format(p)

PS: laut Paketbeschreibung ist das Paket so wie so nur für Python 3 geeignet.
Irgendwas stimmt also mit deinem Python Pfad nicht. Benutzt du überhaupt Arch Linux oder ein verkorkstes Derivat, dass noch Python 2 als Standard verwendet?

PPS: Ich konnte es gerade nachvollziehen. Dieser Fehler liegt mit an Sicherheit grenzender Wahrscheinlichkeit daran, dass du versuchst, Python 3 Code mit einem Python 2 Interpreter auszuführen.
Gib bitte die Ausgaben von

/usr/bin/python -c 'from sys import version; print(version)'
/usr/bin/python2 -c 'from sys import version; print(version)'
/usr/bin/python3 -c 'from sys import version; print(version)'

an.

Offline

#3 17.12.2019 14:12:17

brikler
Mitglied

Re: ich hab ein python proplem beim paket bauen (gelöst)

schard schrieb:

Benutzt du überhaupt Arch Linux oder ein verkorkstes Derivat, dass noch Python 2 als Standard verwendet?

ich bin entlarft und mein problem ist damit gelöst, danke dir smile
wenn ich das gesamt PKGBUILD gelesen und verstanden hätte, wär das forum um einen thread ärmer^^

Offline

Schnellantwort auf dieses Thema

Schreibe deinen Beitrag und versende ihn
Deine Antwort

Fußzeile des Forums