Jump to content
View in the app

A better way to browse. Learn more.

Tinkerunity

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Featured Replies

Geschrieben

Hallo,

 

nachdem ich vor einiger Zeit auf Arch Linux umgestiegen bin, wollte ich den Brick Viewer dort wieder installieren. Da dort die Debian Pakete natürlich nicht funktionieren wollte ich die Installation deshalb wie unter http://www.tinkerforge.com/en/doc/Software/Brickv_Install_Linux.html#from-source beschrieben durchführen. Dies schlägt allerdings fehl mit dem Fehler:

Traceback (most recent call last):
  File "build_serviceproviders.py", line 30, in <module>
    import urllib2
ImportError: No module named 'urllib2'

Ein wenig Recherche brachte zu Tage, dass urllib2 nur unter Python2 verfügbar ist. Arch verwendet jedoch standardmäßig mit dem Befehl python die Version 3.x. Auch ein expliziter Start mit python2 brachte nicht den gewünschten Erfolg und es trat wieder die selbe Fehlermeldung auf.

 

Im Source fand ich dann die zahlreichen system Aufrufe, die z.B. in der build_ui.py in Zeile 79 stehen:

system("python build_serviceproviders.py")

 

Das Problem ist nun aber, dass Arch an dieser Stelle die Datei natürlich wieder mit Python 3 ausführt, da die Version 2 an dieser Stelle nicht explizit übergeben wird. In der Datei build_serviceproviders.py wird nun aber zum ersten Mal eine Bibliothek eingebunden, die nicht unter Python 3 verfügbar ist. Somit stürzt der Build Vorgang ab.

Ich schlage daher vor den Code so anzupassen, dass Python über den Befehl python2 aufgerufen wird. Auf Debian funktioniert das so weit ich weiß auch und unter anderen Linux Distribution (z.B. Arch) können so Probleme vermieden werden.

 

Der Workaround sieht zurzeit wie folgt aus:

[*]Den Symlink zu Python3 löschen: rm /usr/bin/python

[*]Den Symlink zu Python2 erstellen: ln -s python2 /usr/bin/python

 

Da ich aber nicht weiß, wo auf meinem System möglicherweise erwartet wird, dass der Befehl python die Version 3.x aufruft habe ich diese Änderung nach dem Build wieder rückgangig gemacht.

 

Robin

Geschrieben

Das geht leider nicht so einfach. Das muss auch unter Windows und Mac OS X funktionieren und dort wird diese python2/python3 Namenskonvention nicht verwendet. Ich fürchte da gibt es keine einfache Lösung für.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Reply to this topic...

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.