我已经在Ubuntu 21.10上为我的python 3.17安装了Kivy 2.1。我用一个简单的测试库,但有一些错误,它找不到iris和swrast库,请参阅下面的代码和错误并给出建议。感谢
代码:
"""
This is Mobile App designed to send email using Kivy lib.
"""
from kivy.app import App
from kivy.lang import Builder
from kivy.uix.screenmanager import ScreenManager, Screen
Builder.load_file("interface.kv")
class LoginScreen(Screen):
pass
class RootWidget(ScreenManager):
pass
class MainApp(App):
def build(self):
return RootWidget()
if __name__ == "__main__":
MainApp().run()
运行后出错:python main.py
[INFO ] [Logger ] Record log in /home/fredbitenyo/.kivy/logs/kivy_22-02-25_11.txt [INFO ] [Kivy ] v2.1.0rc1 [INFO ] [Kivy ] Installed at "/home/fredbitenyo/Downloads/udemy/github_codes/kivy_env/lib/python3.7/site-packages/kivy/__init__.py" [INFO ] [Python ] v3.7.3 (default, Mar 27 2019, 22:11:17) [GCC
7.3.0] [INFO ] [Python ] Interpreter at "/home/fredbitenyo/Downloads/udemy/github_codes/kivy_env/bin/python" [INFO ] [Logger ] Purge log fired. Processing... [INFO ] [Logger ] Purge finished! [INFO ] [Factory ] 189 symbols loaded [INFO ] [Image ] Providers: img_tex, img_dds, img_sdl2, img_pil (img_ffpyplayer ignored) [INFO ] [Window ] Provider: sdl2 libGL error: MESA-LOADER: failed to open iris: /usr/lib/dri/iris_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:$${ORIGIN}/dri:/usr/lib/dri, suffix
_dri) libGL error: failed to load driver: iris libGL error: MESA-LOADER: failed to open swrast: /home/fredbitenyo/anaconda3/lib/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by /usr/lib/dri/swrast_dri.so) (search paths /usr/lib/x86_64-linux-gnu/dri:$${ORIGIN}/dri:/usr/lib/dri, suffix
_dri) libGL error: failed to load driver: swrast X Error of failed request: BadValue (integer parameter out of range for operation) Major opcode of failed request: 149 (GLX) Minor opcode of failed request: 3 (X_GLXCreateContext) Value in failed request: 0x0 Serial number of failed request: 100 Current serial number in output stream: 101```
解决了这个问题,我刚刚删除了符号链接/home/fredbitenyo/anaconda3/lib/libstdc++.so->libstdc++.so.6.0.25,因为它指向较低版本,所以正在创建冲突。