1 (edytowany przez lukas 2015-10-10 15:23:40)

Temat: Google Cloud Print

# opkg install wget
    # opkg install python python-openssl python-cups
    # cd /root
    # wget --no-check-certificate https://github.com/armooo/cloudprint/ar … ter.tar.gz
    # tar zxvf master.tar.gz
    # rm master.tar.gz
    # python cloudprint-master/cloudprint/cloudprint.py

root@Gargoyle:~# python cloudprint-master/cloudprint/cloudprint.py
Traceback (most recent call last):
  File "cloudprint-master/cloudprint/cloudprint.py", line 32, in <module>
    import requests
ImportError: No module named requests


coś nie działa i nie wiem czemu.
Proszę o pomoc ;-)

2 (edytowany przez mathey 2018-11-08 21:56:01)

Odp: Google Cloud Print

Hehe nie wiem czy coś Ci to kolego po 3 latach da, ale rozwiązanie znajdziesz poniżej w opisie mojego problemu.

Mam również problem z tym skryptem. LEDE 17.01.6, cupsa kompilowałem sam (2.1.4), pakiet python-cups również kompilowałem sam (pycups 1.9.74, próbowałem też 1.9.66) no i przy próbie odpalenia cloudprint.py mam taki błąd:

root@TD-W8970:~# python cloudprint-master/cloudprint/cloudprint.py
Traceback (most recent call last):
  File "cloudprint-master/cloudprint/cloudprint.py", line 23, in <module>
    import cups
ImportError: Error relocating /usr/lib/python2.7/site-packages/cups.so: libiconv_close: symbol not found
root@TD-W8970:~#

Tu próbowałem wielu rzeczy, instalacja pakietu libiconv, linkowanie tej biblioteki przy kompilacji pycups na różne sposoby, linkowanie libiconv-full no i nic nie zdaje się na to nie działać. Zakomentowałem na próbę ten import w pliku cloudprint.py by sprawdzić co się będzie działo dalej i tu zaczęły się sypać kolejne braki w modułach pythona i modułach przez te moduły wykorzystywanych, z racji że nie ma takich rzeczy dostępnych jako pakiety w repo OpenWRT to zacząłem pobierać paczki z pypi.org, dorzuciłem dokładnie:
configargparse
requests
chardet
no i doszedłem do momentu w którym już za bardzo nie wiem co poradzić, jest błąd:

root@TD-W8970:~# python cloudprint-master/cloudprint/cloudprint.py
Traceback (most recent call last):
  File "cloudprint-master/cloudprint/cloudprint.py", line 40, in <module>
    from cloudprint import xmpp
  File "/root/cloudprint-master/cloudprint/cloudprint.py", line 40, in <module>
    from cloudprint import xmpp
ImportError: cannot import name xmpp

i dorzucenie takich paczek jak xmpp2 czy xmpp-backends nie daje nic.
Nie wiem co zrobić by pozbyć się tych dwóch błędów i dlaczego w ogóle tak się dzieje, wydaje mi się że wszystko robiłem zgodnie z poradnikiem na głównej. Być może te rozwiązanie jest już zbyt przestarzałe i ciężko będzie to tak 'po prostu' odpalić?

3

Odp: Google Cloud Print

To coś jest od wielu lat nie rozwijane.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

4 (edytowany przez mathey 2018-11-09 19:43:38)

Odp: Google Cloud Print

No ale widzisz, w takiej sytuacji spodziewałbym się błędów raczej w dalszej części kodu a nie już na samych importach. Postanowiłem sprawdzić na starszej wersji cupsa, wziąłem na ruszt ten co jest w repo bb bo o nim gdzieś tutaj się przewijało w innych tematach czyli 1.5.4, jednak ipk pod lantiq i tak nie chciało się zainstalować, więc musiałem to skompilować sam se źródeł no i tutaj też troszkę było zabawy bo kod nie był całkowicie przystosowany do kroskompilacji i trzeba było niektóre rzeczy poprawić. Koniec końców się udało, no i taki błąd tym razem:

root@TD-W8970:~# python cloudprint-master/cloudprint/cloudprint.py
Traceback (most recent call last):
  File "cloudprint-master/cloudprint/cloudprint.py", line 23, in <module>
    import cups
ImportError: Error relocating /usr/lib/python2.7/site-packages/cups.so: ippGetBoolean: symbol not found

Więc myślę sprawdzę jeszcze na starszym pycups w wersji 1.9.66 no i ostatecznie powrót do korzeni czyli znów błąd z libiconv_close. Wychodzi na to, że trzebaby chyba zgrać się co do wersji cupsa i pycups, ale nie chce mi się aż tak bawić i sprawdzać która z którą będzie w pełni kompatybilna.

Jedyne co chciałem osiągnąć to możliwość drukowania bezpośrednio z Androida bez konieczności uruchamiania PC, no ale niestety chyba jedynie zmiana drukarki na coś z wifi tu pomoże. Ale szkoda mi zmieniać, bo ten obecny Brother jest mega ekonomiczny. No nic, to chyba się poddaje.

5

Odp: Google Cloud Print

Tak się dołączę.
Ja używam Cupsa na RPi2 plus PrintShare na Androidzie. I działa bez problemu Xerox Phaser 3117 smile. Mógł bym używać na OpenWRT ale router mam w innym pokoju sad.

6

Odp: Google Cloud Print

mathey napisał/a:

Jedyne co chciałem osiągnąć to możliwość drukowania bezpośrednio z Androida bez konieczności uruchamiania PC

Jeśli chcesz drukować lokalnie to Google Cloud Print nie jest Ci potrzebny. Kiedyś korzystałem z tego StarPrint+OpenWRT+Printer Sharing.

WNDR3800 OpenWrt 19.07.7 / WNDR3700v2 17.01.6 / TL-WR741ND v4 17.01.6

7 (edytowany przez mathey 2018-11-09 22:24:40)

Odp: Google Cloud Print

To ja może sprostuję bo to co napisałem wyżej jest w trochę większym skrócie wink Powinno działać z Androida bez wykorzystywania cloudprint z aplikacjami jak np. Android CUPS printing czy Let's print droid (te apki bez problemu komunikują się u mnie z cupsem), które są darmowe jednak u mnie głównym problemem są sterowniki do drukarki - a raczej biblioteki w kodzie źródłowym które są prekompilowane pod x86 i nic nie zrobisz. To na koniec napisałem jako takie ogólne podsumowanie mojej zabawy w tym temacie, ale nie wspomniałem o samych sterownikach przez co miało to zupełnie inny sens. A cloudprint i tak chciałem z ciekawości odpalić by ew. mieć gotowe narzędzia na wypadek gdybym zmienił drukarkę na coś pod co sterowniki są.