FormerLurker / Octolapse

Stabilized timelapses for Octoprint
GNU Affero General Public License v3.0
639 stars 99 forks source link

Unable to install Octolapse #245

Closed JohnnyBBravo closed 6 years ago

JohnnyBBravo commented 6 years ago

I've done a manual installation of OctoPrint and it seems i'm not able to install the Octolapse plugin. When using the plugin manager, i select "get more", then find Octolapse and click install. Everything appears to install OK, i even get the message "Successfully installed Octolapse-0.3.1 Done!", but the little pop-up at the right side says "Plugin management log, install unknown" with a little check mark next to it. When restarting OctoPrint (and clearing browser cache) Octolapse is nowhere to be found (as if it never installed, even though it said it did).

On a side note: FFMPEG is installed and Pillow installation went fine. I've also tried installing Octolapse rc/maintennce release, but the result is exactly the same. Pip is version 18.0, Pillow is version 5.2.0

Version of Octolapse

Octolapse Version: 0.3.1

Version of OctoPrint

OctoPrint Version: 1.3.9

When you ran into the problem, did you have diagnostic logging enabled?

Diagnostic Logging was Enabled: NO - Unable as Octolapse doesn't install

What were you doing when the problem occurred

Attempting to install Octolapse via the OctoPrint's plugin manager.

What should have happened?

Octolapse should have installed

What happened instead?

Message said Octolapse successfully installed, but after OctoPrint restart it is nowhere to be found and seems as if it didn't install

Operating System running OctoPrint and Octolapse

OS Name: Raspbian Jessie (On a BananaPi Zero) Os Version: 3.4.113-BPI-M2Z-Kernel

Browser and version of browser, operating system running browser

Browser: Chrome 69.0.3497.100 Browser OS: Windows 10

Link to settings.json

I don't know how to export settings.json

Link to plugin_octolapse.log

Link to plugin_octolapse.log: https://pastebin.com/i58fadNr

Link to octoprint.log

Link to octoprint.log: https://pastebin.com/rLZe1H8x

Screenshots and/or videos of the problem:

Screenshot/Video Links: https://imagebin.ca/v/4GSCoWsG5pXw

JohnnyBBravo commented 6 years ago

This is the output from when I install Octolapse:

Installing plugin "Octolapse" from https://github.com/FormerLurker/Octolapse/archive/master.zip... /home/pi/OctoPrint/venv/bin/python -m pip install https://github.com/FormerLurker/Octolapse/archive/master.zip --no-cache-dir Collecting https://github.com/FormerLurker/Octolapse/archive/master.zip Downloading https://github.com/FormerLurker/Octolapse/archive/master.zip Requirement already satisfied (use --upgrade to upgrade): Octolapse==0.3.1 from https://github.com/FormerLurker/Octolapse/archive/master.zip in /home/pi/OctoPrint/venv/lib/python2.7/site-packages Requirement already satisfied: OctoPrint in /home/pi/OctoPrint/venv/lib/python2.7/site-packages (from Octolapse==0.3.1) (1.3.9) Requirement already satisfied: Pillow in /home/pi/OctoPrint/venv/lib/python2.7/site-packages (from Octolapse==0.3.1) (5.2.0) Requirement already satisfied: sarge in /home/pi/OctoPrint/venv/lib/python2.7/site-packages (from Octolapse==0.3.1) (0.1.4) Requirement already satisfied: six in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/six-1.11.0-py2.7.egg (from Octolapse==0.3.1) (1.11.0) Requirement already satisfied: flask<0.11,>=0.10.1 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/Flask-0.10.1-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (0.10.1) Requirement already satisfied: Jinja2<2.9,>=2.8.1 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/Jinja2-2.8.1-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (2.8.1) Requirement already satisfied: werkzeug<0.9,>=0.8.3 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/Werkzeug-0.8.3-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (0.8.3) Requirement already satisfied: tornado==4.5.3 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/tornado-4.5.3-py2.7-linux-armv7l.egg (from OctoPrint->Octolapse==0.3.1) (4.5.3) Requirement already satisfied: PyYAML<3.11,>=3.10 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/PyYAML-3.10-py2.7-linux-armv7l.egg (from OctoPrint->Octolapse==0.3.1) (3.10) Requirement already satisfied: Flask-Login<0.3,>=0.2.11 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/Flask_Login-0.2.11-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (0.2.11) Requirement already satisfied: Flask-Principal<0.4,>=0.3.5 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/Flask_Principal-0.3.5-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (0.3.5) Requirement already satisfied: Flask-Babel<0.10,>=0.9 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/Flask_Babel-0.9-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (0.9) Requirement already satisfied: Flask-Assets<0.11,>=0.10 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/Flask_Assets-0.10-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (0.10) Requirement already satisfied: markdown<2.7,>=2.6.9 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/Markdown-2.6.11-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (2.6.11) Requirement already satisfied: pyserial<3.5,>=3.4 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/pyserial-3.4-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (3.4) Requirement already satisfied: netaddr<0.8,>=0.7.19 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/netaddr-0.7.19-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (0.7.19) Requirement already satisfied: watchdog<0.9,>=0.8.3 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/watchdog-0.8.3-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (0.8.3) Requirement already satisfied: netifaces<0.11,>=0.10.6 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/netifaces-0.10.7-py2.7-linux-armv7l.egg (from OctoPrint->Octolapse==0.3.1) (0.10.7) Requirement already satisfied: pylru<1.1,>=1.0.9 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/pylru-1.0.9-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (1.0.9) Requirement already satisfied: rsa<3.3,>=3.2.3 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/rsa-3.2.3-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (3.2.3) Requirement already satisfied: pkginfo<1.5,>=1.4.2 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/pkginfo-1.4.2-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (1.4.2) Requirement already satisfied: requests<3,>=2.18.4 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/requests-2.19.1-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (2.19.1) Requirement already satisfied: semantic_version<2.5,>=2.4.2 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/semantic_version-2.4.2-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (2.4.2) Requirement already satisfied: psutil<5.5,>=5.4.6 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/psutil-5.4.7-py2.7-linux-armv7l.egg (from OctoPrint->Octolapse==0.3.1) (5.4.7) Requirement already satisfied: Click<6.3,>=6.2 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/click-6.2-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (6.2) Requirement already satisfied: awesome-slugify<1.7,>=1.6.5 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/awesome_slugify-1.6.5-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (1.6.5) Requirement already satisfied: feedparser<5.3,>=5.2.1 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/feedparser-5.2.1-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (5.2.1) Requirement already satisfied: chainmap<1.1,>=1.0.2 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/chainmap-1.0.2-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (1.0.2) Requirement already satisfied: future<0.16,>=0.15.2 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/future-0.15.2-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (0.15.2) Requirement already satisfied: scandir<1.4,>=1.3 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/scandir-1.3-py2.7-linux-armv7l.egg (from OctoPrint->Octolapse==0.3.1) (1.3) Requirement already satisfied: websocket-client<0.41,>=0.40.0 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/websocket_client-0.40.0-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (0.40.0) Requirement already satisfied: python-dateutil<2.7,>=2.6.1 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/python_dateutil-2.6.1-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (2.6.1) Requirement already satisfied: wrapt<1.11,>=1.10.11 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/wrapt-1.10.11-py2.7-linux-armv7l.egg (from OctoPrint->Octolapse==0.3.1) (1.10.11) Requirement already satisfied: futures<3.2,>=3.1.1 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/futures-3.1.1-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (3.1.1) Requirement already satisfied: emoji<0.5,>=0.4.5 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/emoji-0.4.5-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (0.4.5) Requirement already satisfied: monotonic<1.4,>=1.3 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/monotonic-1.3-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (1.3) Requirement already satisfied: frozendict<1.3,>=1.2 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/frozendict-1.2-py2.7.egg (from OctoPrint->Octolapse==0.3.1) (1.2) Requirement already satisfied: itsdangerous>=0.21 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/itsdangerous-0.24-py2.7.egg (from flask<0.11,>=0.10.1->OctoPrint->Octolapse==0.3.1) (0.24) Requirement already satisfied: MarkupSafe in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/MarkupSafe-1.0-py2.7-linux-armv7l.egg (from Jinja2<2.9,>=2.8.1->OctoPrint->Octolapse==0.3.1) (1.0) Requirement already satisfied: singledispatch in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/singledispatch-3.4.0.3-py2.7.egg (from tornado==4.5.3->OctoPrint->Octolapse==0.3.1) (3.4.0.3) Requirement already satisfied: certifi in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/certifi-2018.8.24-py2.7.egg (from tornado==4.5.3->OctoPrint->Octolapse==0.3.1) (2018.8.24) Requirement already satisfied: backports_abc>=0.4 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/backports_abc-0.5-py2.7.egg (from tornado==4.5.3->OctoPrint->Octolapse==0.3.1) (0.5) Requirement already satisfied: blinker in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/blinker-1.4-py2.7.egg (from Flask-Principal<0.4,>=0.3.5->OctoPrint->Octolapse==0.3.1) (1.4) Requirement already satisfied: Babel>=1.0 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/Babel-2.6.0-py2.7.egg (from Flask-Babel<0.10,>=0.9->OctoPrint->Octolapse==0.3.1) (2.6.0) Requirement already satisfied: speaklater>=1.2 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/speaklater-1.3-py2.7.egg (from Flask-Babel<0.10,>=0.9->OctoPrint->Octolapse==0.3.1) (1.3) Requirement already satisfied: webassets>=0.10 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/webassets-0.12.1-py2.7.egg (from Flask-Assets<0.11,>=0.10->OctoPrint->Octolapse==0.3.1) (0.12.1) Requirement already satisfied: argh>=0.24.1 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/argh-0.26.2-py2.7.egg (from watchdog<0.9,>=0.8.3->OctoPrint->Octolapse==0.3.1) (0.26.2) Requirement already satisfied: pathtools>=0.1.1 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/pathtools-0.1.2-py2.7.egg (from watchdog<0.9,>=0.8.3->OctoPrint->Octolapse==0.3.1) (0.1.2) Requirement already satisfied: pyasn1>=0.1.3 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/pyasn1-0.4.4-py2.7.egg (from rsa<3.3,>=3.2.3->OctoPrint->Octolapse==0.3.1) (0.4.4) Requirement already satisfied: chardet<3.1.0,>=3.0.2 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/chardet-3.0.4-py2.7.egg (from requests<3,>=2.18.4->OctoPrint->Octolapse==0.3.1) (3.0.4) Requirement already satisfied: idna<2.8,>=2.5 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/idna-2.7-py2.7.egg (from requests<3,>=2.18.4->OctoPrint->Octolapse==0.3.1) (2.7) Requirement already satisfied: urllib3<1.24,>=1.21.1 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/urllib3-1.23-py2.7.egg (from requests<3,>=2.18.4->OctoPrint->Octolapse==0.3.1) (1.23) Requirement already satisfied: regex in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/regex-2018.8.29-py2.7-linux-armv7l.egg (from awesome-slugify<1.7,>=1.6.5->OctoPrint->Octolapse==0.3.1) (2018.8.29) Requirement already satisfied: Unidecode<0.05,>=0.04.14 in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/Unidecode-0.4.21-py2.7.egg (from awesome-slugify<1.7,>=1.6.5->OctoPrint->Octolapse==0.3.1) (0.4.21) Requirement already satisfied: backports.ssl_match_hostname in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/backports.ssl_match_hostname-3.5.0.1-py2.7.egg (from websocket-client<0.41,>=0.40.0->OctoPrint->Octolapse==0.3.1) (3.5.0.1) Requirement already satisfied: pytz>=0a in /home/pi/OctoPrint/venv/lib/python2.7/site-packages/pytz-2018.5-py2.7.egg (from Babel>=1.0->Flask-Babel<0.10,>=0.9->OctoPrint->Octolapse==0.3.1) (2018.5) Looks like the plugin was already installed. Forcing a reinstall. /home/pi/OctoPrint/venv/bin/python -m pip install https://github.com/FormerLurker/Octolapse/archive/master.zip --no-cache-dir --ignore-installed --force-reinstall --no-deps Collecting https://github.com/FormerLurker/Octolapse/archive/master.zip Downloading https://github.com/FormerLurker/Octolapse/archive/master.zip Installing collected packages: Octolapse Running setup.py install for Octolapse: started Running setup.py install for Octolapse: finished with status 'done' Successfully installed Octolapse-0.3.1 Done!

But after restarting octoprint it still seems as if octolapse never installed...

FormerLurker commented 6 years ago

That is very strange. I've never seen that before! Octolapse is clearly installed since I see a log file was generated. Can you snap a pic of your Octoprint page for me? I'd like to see if the title bar add on loaded (it would say octolapse in the title bar). Also, can you look in the octoprint settings page and look under 'plugins' (bottom left corner of the settings screen) for an octolapse link?

We'll get to the bottom of this!

JohnnyBBravo commented 6 years ago

I don't get it either... The title bar add-on doesn't load - Screenshot here: https://imagebin.ca/v/4GTILzurkhCM The plugins page also doesn't show Octolapse - Screenshot here: https://imagebin.ca/v/4GTIp2AJrWMk

I've looked at this thread https://discourse.octoprint.org/t/installing-a-plugin-shows-me-unknown-in-the-popup-i-cant-uninstall-plugins-through-the-plugin-manager-octoprint-up-to-1-3-8-octopi-0-15-0-or-pip-10-x/1746 but downgrading pip to 9.0.3 doesn't make any difference.

Thanks for your help!

JohnnyBBravo commented 6 years ago

The only hint might be in octoprint.log which states: 2018-09-21 10:47:51,730 - octoprint.plugin.core - ERROR - Error loading plugin octolapse Traceback (most recent call last): File "/home/pi/OctoPrint/venv/local/lib/python2.7/site-packages/octoprint/plugin/core.py", line 847, in _import_plugin instance = imp.load_module(key, f, filename, description) File "/home/pi/OctoPrint/venv/local/lib/python2.7/site-packages/octoprint_octolapse/__init__.py", line 41, in <module> import octoprint_octolapse.camera as camera File "/home/pi/OctoPrint/venv/local/lib/python2.7/site-packages/octoprint_octolapse/__init__.py", line 41, in <module> import octoprint_octolapse.camera as camera AttributeError: 'module' object has no attribute 'camera'

Although I have no idea what all that means...

FormerLurker commented 6 years ago

Forgot to look at octoprint.log, whoops. There is definitely some error loading the installed plugin. Can you maybe try installing the latest devel/RC via the plug-in manager via the plug-in manager from this link: https://github.com/FormerLurker/Octolapse/archive/v0.3.4rc1.dev3.zip

I suspect a missing prerequisite, though I don't know what it could be yet. After you reboot can you link to the latest octoprint.log (give me the whole file if possible please).

Thanks!

JohnnyBBravo commented 6 years ago

The result of trying to install the latest devel/RC as you suggested gives the same results. octoprint.log is here: https://filebin.ca/4GTPLfVfZ3j4/octoprint.log

Thanks!

JohnnyBBravo commented 6 years ago

SUCCESS!!

These two lines in octoprint.log caught my attentions:

ImportError: /usr/lib/arm-linux-gnueabihf/libc.so: invalid ELF header octoprint.plugin.core - ERROR - Error loading plugin octolapse

The error loading octolapse came immediately after the error about libc.so, therefore it seemed that libc.so was potentially a culprit and i did the following:

mv /usr/lib/arm-linux-gnueabihf/libc.so /usr/lib/arm-linux-gnueabihf/libc.so.old cp /usr/lib/arm-linux-gnueabihf/libc.so.6 /usr/lib/arm-linux-gnueabihf/libc.so service octoprint restart

And presto, all is working fine :-)

FormerLurker commented 6 years ago

Wow, you are quite the sleuth! Not sure if I would have seen that. If anyone else has this issue now I'll know what to do, thanks. Let me know if you ever have any other issues/questions. I'd be happy to help!

JohnnyBBravo commented 6 years ago

There are some issues with this solution though. I wanted to compile some other software and the C-compiler threw an error...

Reverting the libc.so to the original file solved this and allowed me to compile, however afterwards i had to do the same trick as mentioned above to prevent octoprint from throwing an error.

I'm not sure if there is a permanent solution to this, as this is all a bit tedious...

FormerLurker commented 6 years ago

Yeah, what an odd issue. Please keep me updated. If I can ever replicate this I'll definitely dig in and see what I can find. I may have to grab a BananaPi and see what I can figure out.