์๋ ํ์ธ์ ์ฌ๋ฌ๋ถ,
ํฐ์น ์คํฌ๋ฆฐ์ด ์๋ texy 2.8" ์ปฌ๋ฌ LCD๋ก ๋ผ์ฆ๋ฒ ๋ฆฌ ํ์ด์์ kivy๋ฅผ ์คํํ๋ ค๊ณ ํ ๋ ๋ค์๊ณผ ๊ฐ์ ๋ฉ์์ง๊ฐ ๋ํ๋ฉ๋๋ค. http://kivy.org/docs/installation/installation-rpi.html ์ง์นจ์ ์ ํํ ๋ฐ๋์ต๋๋ค. ์ค๋ฅ์์ด ์ ๋น๋๋๋ ๊ฒ ๊ฐ์ต๋๋ค.
๊ฐ๋ฐ์ ๋น๋์ ์ ์ญ ๋น๋ ์ต์ ์ ์๋ํ์ต๋๋ค.
์ ธ ๋ช ๋ น์ค๊ณผ X์ xterm์์ ์คํ์ ์๋ํ์ง๋ง ๋์ผํ ์ค๋ฅ๊ฐ ๋ฐ์ํ์ต๋๋ค.
์ด๋ค ์์ด๋์ด? ์ด๊ฒ์ ํฐ์น ์คํฌ๋ฆฐ์ ๋ํ http://www.raspberrypi.org/forums/viewtopic.php?f=45&t=64993 ์์ ์ฐพ์ ์ ์๋ texy ์์ ์ฌํญ์ด ์๋ raspbian ์ต์ ๋ชจ๋ ๊ฒ์ ๋๋ค.
INFO ] [Logger ] Record log in /home/pi/.kivy/logs/kivy_14-04-26_2.txt
[INFO ] Kivy v1.8.1-dev
[INFO ] [Python ] v2.7.3 (default, Mar 18 2014, 05:13:23)
[GCC 4.6.3]
[INFO ] [Factory ] 157 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_pygame, img_gif (img_pil ignored)
[ERROR ]
Traceback (most recent call last):
File "/home/pi/kivy/kivy/lang.py", line 1186, in execute_directives
mod = __import__('.'.join(package.split('.')[:-1]))
File "/home/pi/kivy/kivy/extras/highlight.py", line 3, in <module>
from pygments.lexer import RegexLexer, bygroups, using
ImportError: No module named pygments.lexer
Traceback (most recent call last):
File "main.py", line 212, in <module>
ShowcaseApp().run()
File "/home/pi/kivy/kivy/app.py", line 773, in run
self.load_kv(filename=self.kv_file)
File "/home/pi/kivy/kivy/app.py", line 593, in load_kv
root = Builder.load_file(rfilename)
File "/home/pi/kivy/kivy/lang.py", line 1546, in load_file
return self.load_string(data, **kwargs)
File "/home/pi/kivy/kivy/lang.py", line 1593, in load_string
parser = Parser(content=string, filename=fn)
File "/home/pi/kivy/kivy/lang.py", line 1122, in __init__
self.parse(content)
File "/home/pi/kivy/kivy/lang.py", line 1220, in parse
self.execute_directives()
File "/home/pi/kivy/kivy/lang.py", line 1197, in execute_directives
package)
kivy.lang.ParserException: Parser: File "./showcase.kv", line 2:
...
1:#:kivy 1.8.0
>> 2:#:import KivyLexer kivy.extras.highlight.KivyLexer
3:#:import Factory kivy.factory.Factory
4:
...
Unable to import package 'kivy.extras.highlight.KivyLexer'
๋ฌธ์ ์ธ์ฌ
์ฌํํฐ
Showcase ์ ํ๋ฆฌ์ผ์ด์
์๋ Kivy ์ธ์ 2๊ฐ์ ํจํค์ง๊ฐ ๋ ํ์ํฉ๋๋ค. ๋น์ ์
pyglet(Lexer) ๋ฐ docutil๋ ๋๋ฝ๋์์ต๋๋ค. ๋น์ ์ ๊ทธ๋ค์ ์ค์นํ ์ ์์ต๋๋ค
์ ํจ๊ป:
sudo pip ์ค์น pyglet docutils
2014๋ 4์ 26์ผ ํ ์์ผ ์ค์ 5์ 36๋ถ, shifters67 [email protected] ์์ฑ:
์๋ ํ์ธ์ ์ฌ๋ฌ๋ถ,
๋ผ์ฆ๋ฒ ๋ฆฌ ํ์ด์์ kivy๋ฅผ ์คํํ๋ ค๊ณ ํ ๋ ๋ค์๊ณผ ๊ฐ์ ๋ฉ์์ง๊ฐ ๋ํ๋ฉ๋๋ค.
ํฐ์น ์คํฌ๋ฆฐ์ด ์๋ texy 2.8" ์ปฌ๋ฌ LCD๋ก
์ง์นจ http://kivy.org/docs/installation/installation-rpi.html์ ํ ํ๊ณ ๋ชจ๋ ์ค๋ฅ ์์ด ์ ์์ ์ผ๋ก ๋น๋๋๋ ๊ฒ ๊ฐ์ต๋๋ค.๊ฐ๋ฐ์ ๋น๋์ ์ ์ญ ๋น๋ ์ต์ ์ ์๋ํ์ต๋๋ค.
์ ธ ๋ช ๋ น์ค๊ณผ X์ xterm์์ ์คํ์ ์๋ํ์ต๋๋ค.
๊ฐ์ ์ค๋ฅ.์ด๋ค ์์ด๋์ด? ์ด๊ฒ์ texy ์์ ์ฌํญ์ด์๋ raspbian ์ต์ ๋ชจ๋ ๊ฒ์ ๋๋ค.
์ฌ๊ธฐ http://www.raspberrypi.org/forums/viewtopic.php?f=45&t=64993
ํฐ์น ์คํฌ๋ฆฐ.INFO ] [Logger ] /home/pi/.kivy/logs/kivy_14-04-26_2.txt์ ๋ก๊ทธ์ธ ๊ธฐ๋ก
[์ ๋ณด] ํค๋น v1.8.1-dev
[์ ๋ณด] [ํ์ด์ฌ] v2.7.3 (๊ธฐ๋ณธ๊ฐ, 2014๋ 3์ 18์ผ, 05:13:23)
[GCC 4.6.3]
[INFO] [Factory] 157๊ฐ์ ๊ธฐํธ๊ฐ ๋ก๋๋จ
[์ ๋ณด] [์ด๋ฏธ์ง] ์ ๊ณต์: img_tex, img_dds, img_pygame, img_gif (img_pil
๋ฌด์)
[์ค๋ฅ]
์ญ์ถ์ (๊ฐ์ฅ ์ต๊ทผ ํธ์ถ ๋ง์ง๋ง):
ํ์ผ "/home/pi/kivy/kivy/lang.py", 1186ํ, execute_directives
๋ชจ๋ = _import_('.'.join(package.split('.')[:-1]))
ํ์ผ "/home/pi/kivy/kivy/extras/highlight.py", 3ํ, in
pygments.lexer์์ RegexLexer ๊ฐ์ ธ์ค๊ธฐ, ๊ทธ๋ฃน๋ณ, ์ฌ์ฉ
ImportError: pygments.lexer๋ผ๋ ๋ชจ๋์ด ์์ต๋๋ค.
์ญ์ถ์ (๊ฐ์ฅ ์ต๊ทผ ํธ์ถ ๋ง์ง๋ง):
ํ์ผ "main.py", 212ํ,
์ผ์ผ์ด์ค์ฑ().run()
ํ์ผ "/home/pi/kivy/kivy/app.py", 773ํ, ์คํ ์ค
self.load_kv(ํ์ผ๋ช =self.kv_file)
load_kv์ ํ์ผ "/home/pi/kivy/kivy/app.py", 593ํ
๋ฃจํธ = Builder.load_file(rfilename)
load_file์ ํ์ผ "/home/pi/kivy/kivy/lang.py", 1546ํ
๋ฐํ self.load_string(๋ฐ์ดํฐ, *_kwargs)
load_string์ ํ์ผ "/home/pi/kivy/kivy/lang.py", 1593ํ
ํ์ = ํ์(๋ด์ฉ=๋ฌธ์์ด, ํ์ผ๋ช =fn)
ํ์ผ "/home/pi/kivy/kivy/lang.py", ์ค 1122, *init_
self.parse(์ฝํ ์ธ )
ํ์ผ "/home/pi/kivy/kivy/lang.py", 1220ํ, ๊ตฌ๋ฌธ ๋ถ์ ์ค
self.execute_directives()
ํ์ผ "/home/pi/kivy/kivy/lang.py", 1197ํ, execute_directives
ํจํค์ง)
kivy.lang.ParserException: ํ์: ํ์ผ "./showcase.kv", 2ํ:
...
1:#:ํค๋น 1.8.02:#:KivyLexer ๊ฐ์ ธ์ค๊ธฐ kivy.extras.highlight.KivyLexer
3:#:๊ณต์ฅ ๊ฐ์ ธ์ค๊ธฐ kivy.factory.Factory
4:
...
ํจํค์ง 'kivy.extras.highlight.KivyLexer'๋ฅผ ๊ฐ์ ธ์ฌ ์ ์์ต๋๋ค.๋ฌธ์ ์ธ์ฌ
์ฌํํฐ
โ
์ด ์ด๋ฉ์ผ์ ์ง์ ๋ต์ฅํ๊ฑฐ๋ Gi tHubhttps://github.com/kivy/kivy/issues/2115 ์์ ํ์ธํ์ธ์.
.
๋ฒค ๋ฃจ์
[email protected]
http://clusterbleep.net/
๋น ๋ฅธ ๋ต๋ณ์ ๊ฐ์ฌ๋๋ฆฝ๋๋ค.
์์ ๋ฐฉ๋ฒ์ ์๋ํ์ง๋ง ์ฌ์ ํ ๋์ผํ ์ค๋ฅ ๋ฉ์์ง๊ฐ ๋ํ๋ฉ๋๋ค. ์ด๋ค ์์ด๋์ด?
์ฌ์ง ๋ฐ๋ชจ ๋ก๋๋ฅผ ์๋ํ์ต๋๋ค. ์ค๋ฅ๋ ์์ง๋ง ๋ฏธ๋ ํ๋ฉด์๋ ํ์๋์ง ์๊ณ ๋์ ํฐ ํ๋ฉด์ผ๋ก ์ด๋ํ์ง๋ง ์ ์ด๋ ์๋ํฉ๋๋ค!
๋๋ผ์ด๋ฒ ๋ฌธ์ ์ธ์ง ํ์ธํ๊ธฐ ์ํด texy ์ ์์์๊ฒ ๋ฌธ์ ๋ฅผ ์ ๊ธฐํ์ต๋๋ค.
๋ฌธ์ ์ธ์ฌ
์ฌํํฐ
pyglet์ด ์๋๋ผ pygments๊ฐ ํ์ํฉ๋๋ค :) brosch์ ์คํ์์ต๋๋ค. CodeInput ์์ ฏ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๋ฅผ ์ ์ธํ๊ณ Kivy ์์ฒด์๋ ํ์ํ์ง ์์ต๋๋ค. docutils์ ๋์ผํ๊ฒ RstDocument ์์ ฏ์ ํ์ํฉ๋๋ค.
๊ฐ์ฌ ํด์.
์๋์ํค๋ ค๋ฉด:
buildozer.spec
:
requirements = kivy,pil,sqlite3,pygments,docutils
์ด ์ข ์์ฑ์ ์ค์ ๋ก ์ด์ ๊ฐ์ด ๋์ด๋์ด์ผ ํ์ง ์์ต๋๊น? RPi์ Kivy๋ฅผ ์ค์นํ๋ ๊ณต์ ๊ฐ์ด๋๋ฅผ ๋ฐ๋ฅด๋ฉด ์ด ๋ฌธ์ ์ ๋ํ ์๋ฃจ์ ์ ์ฐพ๊ธฐ ์ํด GitHub์ ๋ฌธ์ ๋ฅผ ํํค์ณ์ผ ํ๋ค๋ ์ ์ด ๋ค์ ์ง์ฆ์ค๋ฝ์ต๋๋ค. ๋ชจ๋ ๋ฐ๋ชจ๋ ์์คํ ์ Kivy๋ฅผ ์ค์นํ๊ธฐ ์ํ ์๊ตฌ ์ฌํญ์ผ๋ก ๋์ด๋ ๊ฒ๊ณผ ํจ๊ป ๋ฌธ์ ์์ด ์คํ๋๋ ๋ฐ๋ชจ์ฌ์ผ ํฉ๋๋ค. ์ผ์ผ์ด์ค์ ํ์ํ ํจํค์ง๊ฐ ์ถฉ์กฑ๋์ง ์์ผ๋ฉด ์ต์ํ ๊ฒฝ๊ณ ๋ฅผ ์ถ๊ฐํ๋ ๊ฒ์ ๊ณ ๋ คํ์ญ์์ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
์ด ์ข ์์ฑ์ ์ค์ ๋ก ์ด์ ๊ฐ์ด ๋์ด๋์ด์ผ ํ์ง ์์ต๋๊น? RPi์ Kivy๋ฅผ ์ค์นํ๋ ๊ณต์ ๊ฐ์ด๋๋ฅผ ๋ฐ๋ฅด๋ฉด ์ด ๋ฌธ์ ์ ๋ํ ์๋ฃจ์ ์ ์ฐพ๊ธฐ ์ํด GitHub์ ๋ฌธ์ ๋ฅผ ํํค์ณ์ผ ํ๋ค๋ ์ ์ด ๋ค์ ์ง์ฆ์ค๋ฝ์ต๋๋ค. ๋ชจ๋ ๋ฐ๋ชจ๋ ์์คํ ์ Kivy๋ฅผ ์ค์นํ๊ธฐ ์ํ ์๊ตฌ ์ฌํญ์ผ๋ก ๋์ด๋ ๊ฒ๊ณผ ํจ๊ป ๋ฌธ์ ์์ด ์คํ๋๋ ๋ฐ๋ชจ์ฌ์ผ ํฉ๋๋ค. ์ผ์ผ์ด์ค์ ํ์ํ ํจํค์ง๊ฐ ์ถฉ์กฑ๋์ง ์์ผ๋ฉด ์ต์ํ ๊ฒฝ๊ณ ๋ฅผ ์ถ๊ฐํ๋ ๊ฒ์ ๊ณ ๋ คํ์ญ์์ค.