@@ -60,30 +60,54 @@ benefiting the entire application stack.
60
60
61
61
## Build and Verify
62
62
63
+ ### Prerequisites
64
+
63
65
` Mado ` is built with a minimalist design in mind. However, its verification
64
66
relies on certain third-party packages for full functionality and access to all
65
- its features. To ensure proper operation, the development environment should
66
- have the [ SDL2 library] ( https://www.libsdl.org/ ) , [ libjpeg] ( https://www.ijg.org/ ) , and [ libpng] ( https://github.com/pnggroup/libpng ) installed.
67
+ its features. We encourage the development environment to be installed with all optional
68
+ packages, including [ libjpeg] ( https://www.ijg.org/ ) , [ libpng] ( https://github.com/pnggroup/libpng ) ,
69
+ and the [ SDL2 library] ( https://www.libsdl.org/ ) .
67
70
* macOS: ` brew install sdl2 jpeg libpng `
68
71
* Ubuntu Linux / Debian: ` sudo apt install libsdl2-dev libjpeg-dev libpng-dev `
69
72
70
- Configure via [ Kconfiglib] ( https://pypi.org/project/kconfiglib/ )
73
+ ### Configure the demo program
74
+
75
+ Configure via [ Kconfiglib] ( https://pypi.org/project/kconfiglib/ ) , you should select either SDL
76
+ video output or the Linux framebuffer.
71
77
``` shell
72
78
$ make config
73
79
```
74
80
75
- Build the library and demo program.
81
+ ### Build the library and demo program
82
+
76
83
``` shell
77
84
$ make
78
85
```
79
86
80
- Run sample ` Mado ` program:
87
+ ### Run demo program with SDL backend
88
+
81
89
``` shell
82
90
$ ./demo-sdl
83
91
```
84
92
85
93
Once the window appears, you should be able to move the windows and interact with the widgets.
86
94
95
+ ### Run demo program with the Linux framebuffer backend
96
+
97
+ Normal users don't have access to ` /dev/fb0 ` so use ` sudo ` :
98
+
99
+ ``` shell
100
+ $ sudo ./demo-fbdev
101
+ ```
102
+
103
+ Alternatively, you can add the user to the video group to avoid typing ` sudo ` every time:
104
+
105
+ ``` shell
106
+ $ sudo usermod -a -G video $USERNAME
107
+ ```
108
+
109
+ In addition, the framebuffer and mouse device files can be assigned via the environment variable ` FRAMEBUFFER ` and ` MOUSE ` .
110
+
87
111
## License
88
112
89
113
` Mado ` is available under a MIT-style license, permitting liberal commercial use.
0 commit comments