scenic_driver_inky

Build log

host

scenic_driver_inky 1.0.0 · fail · run scenic_driver_inky-1.0.0-1791276591324
500 of 500 lines
1Resolving Hex dependencies...2Resolution completed in 0.267s3Unchanged:4  circuits_gpio 0.4.85  circuits_spi 0.1.66  circular_buffer 1.1.07  elixir_make 0.7.88  ex_image_info 0.2.79  font_metrics 0.5.210  inky 1.0.211  interactive_cmd 0.1.412  nerves 2.0.0-pre.213  nerves_discovery 0.1.514  nerves_logging 0.2.415  nerves_runtime 0.13.1316  nerves_system_bbb 2.30.217  nerves_system_br 1.34.418  nerves_system_mangopi_mq_pro 0.17.219  nerves_system_qemu_aarch64 0.4.220  nerves_system_rpi0 2.1.221  nerves_system_rpi4 2.1.222  nerves_system_rpi5 2.1.223  nerves_system_trellis 0.5.024  nerves_system_x86_64 1.34.225  nerves_toolchain_aarch64_nerves_linux_gnu 15.3.126  nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.127  nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.128  nerves_toolchain_riscv64_nerves_linux_gnu 15.3.129  nerves_toolchain_x86_64_nerves_linux_musl 15.3.130  nerves_uevent 0.1.731  nimble_options 1.1.132  property_table 0.3.433  ring_logger 0.11.734  rpi_fb_capture 0.3.035  scenic 0.11.236  scenic_driver_inky 1.0.037  scenic_driver_nerves_rpi 0.10.138  tablet 0.3.339  toolshed 0.5.040  truetype_metrics 0.6.141  uboot_env 1.0.242All dependencies have been fetched43==> circuits_gpio44"**** MIX_ENV set to [prod] ****"45"**** CIRCUITS_MIX_ENV set to [] ****"46 CC hal_sysfs.o47 CC hal_sysfs_interrupts.o48 CC hal_rpi.o49 CC nif_utils.o50 CC gpio_nif.o51 LD gpio_nif.so52Compiling 2 files (.ex)53Generated circuits_gpio app54==> circuits_spi55 CC hal_spidev.o56 CC spi_nif.o57 LD spi_nif.so58Compiling 2 files (.ex)59Generated circuits_spi app60==> inky61Compiling 8 files (.ex)62     warning: unused require Logger63     │64 100 │   require Logger65     │   ~66     │67     └─ lib/hal/rpiio.ex:100:36869     warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead70     │71 180 │     Logger.warn("Dropping unexpected call #{inspect(request)} from #{inspect(from)}")72     │            ~73     │74     └─ lib/inky.ex:180:12: Inky.handle_call/37576     warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead77     │78 193 │     Logger.warn("Dropping unexpected cast #{inspect(request)}")79     │            ~80     │81     └─ lib/inky.ex:193:12: Inky.handle_cast/28283    warning: unused require Integer84    │85  8 │   require Integer86    │   ~87    │88    └─ lib/inky.ex:8:38990     warning: a struct for Inky.State is expected on struct update:9192         %Inky.State{state | wait_type: :nowait}9394     but got type:9596         dynamic(%{..., wait_type: term()})9798     where "state" was given the type:99100         # type: dynamic(%{..., wait_type: term()})101         # from: lib/inky.ex:201:10102         push(state.wait_type, state)103104     when defining the variable "state", you must also pattern match on "%Inky.State{}"105106     type warning found at:107     │108 206 │     {:noreply, %State{state | wait_type: :nowait}}109     │                ~110     │111     └─ lib/inky.ex:206:16: Inky.handle_info/2112113     warning: a struct for Inky.State is expected on struct update:114115         %Inky.State{state | pixels: update_pixels(arg, state), border: pick_border(opts[:border], state)}116117     but got type:118119         dynamic()120121     where "state" was given the type:122123         # type: dynamic()124         # from: lib/inky.ex:220:33125         state126127     when defining the variable "state", you must also pattern match on "%Inky.State{}"128129     type warning found at:130     │131 221 │     %State{132     │     ~133     │134     └─ lib/inky.ex:221:5: Inky.do_set_pixels/3135136     warning: a struct for Inky.State is expected on struct update:137138         %Inky.State{state | wait_type: timeout_policy}139140     but got type:141142         dynamic()143144     where "state" was given the type:145146         # type: dynamic()147         # from: lib/inky.ex:273:40148         state149150     when defining the variable "state", you must also pattern match on "%Inky.State{}"151152     type warning found at:153     │154 274 │     {:reply, response, %State{state | wait_type: timeout_policy}}155     │                        ~156     │157     └─ lib/inky.ex:274:24: Inky.reply/3158159     warning: a struct for Inky.State is expected on struct update:160161         %Inky.State{state | wait_type: timeout_policy}162163     but got type:164165         dynamic()166167     where "state" was given the type:168169         # type: dynamic()170         # from: lib/inky.ex:277:55171         state172173     when defining the variable "state", you must also pattern match on "%Inky.State{}"174175     type warning found at:176     │177 278 │     {:reply, response, %State{state | wait_type: timeout_policy}, @push_timeout}178     │                        ~179     │180     └─ lib/inky.ex:278:24: Inky.reply_timeout/3181182Generated inky app183==> rpi_fb_capture184Makefile:39: rpi_fb_capture only works on Nerves and Raspbian.185Makefile:40: Compiling the simulator.186mkdir -p /work/proj/_build/host/lib/rpi_fb_capture/priv187mkdir -p /work/proj/_build/host/lib/rpi_fb_capture/obj188cc -c -O2 -Wall -Wextra -Wno-unused-parameter -pedantic  -o /work/proj/_build/host/lib/rpi_fb_capture/obj/capture_sim.o src/capture_sim.c189cc -c -O2 -Wall -Wextra -Wno-unused-parameter -pedantic  -o /work/proj/_build/host/lib/rpi_fb_capture/obj/main.o src/main.c190src/main.c: In function ‘emit_mono_rotate_flip’:191src/main.c:198:38: warning: pointer targets in initialization of ‘const uint16_t *’ {aka ‘const short unsigned int *’} from ‘const int16_t *’ {aka ‘const short int *’} differ in signedness [-Wpointer-sign]192  198 |             const uint16_t *column = dithering_buffer;193      |                                      ^~~~~~~~~~~~~~~~194cc -c -O2 -Wall -Wextra -Wno-unused-parameter -pedantic  -o /work/proj/_build/host/lib/rpi_fb_capture/obj/dithering.o src/dithering.c195cc -o /work/proj/_build/host/lib/rpi_fb_capture/priv/rpi_fb_capture /work/proj/_build/host/lib/rpi_fb_capture/obj/capture_sim.o /work/proj/_build/host/lib/rpi_fb_capture/obj/main.o /work/proj/_build/host/lib/rpi_fb_capture/obj/dithering.o  -lm196Compiling 2 files (.ex)197Generated rpi_fb_capture app198==> scenic_driver_nerves_rpi199mkdir -p /work/proj/_build/host/lib/scenic_driver_nerves_rpi/priv200cc -O2 -Wall -Wextra -Wno-unused-parameter -pedantic -std=gnu99 -o /work/proj/_build/host/lib/scenic_driver_nerves_rpi/priv/scenic_driver_nerves_rpi c_src/main.c c_src/comms.c c_src/nanovg/nanovg.c c_src/render_script.c c_src/tx.c c_src/utils.c -lGLESv2 -lEGL -lm -lbcm_host -lvchostif201rsync -rupE fonts /work/proj/_build/host/lib/scenic_driver_nerves_rpi/priv/fonts202c_src/main.c:16:10: fatal error: bcm_host.h: No such file or directory203   16 | #include <bcm_host.h>204      |          ^~~~~~~~~~~~205compilation terminated.206c_src/comms.c:18:10: fatal error: GLES2/gl2.h: No such file or directory207   18 | #include <GLES2/gl2.h>208      |          ^~~~~~~~~~~~~209compilation terminated.210In file included from c_src/nanovg/nanovg.c:24:211c_src/nanovg/nanovg.h:40:18: warning: ISO C99 doesn’t support unnamed structs/unions [-Wpedantic]212   40 |                 };213      |                  ^214c_src/nanovg/nanovg.h:41:10: warning: ISO C99 doesn’t support unnamed structs/unions [-Wpedantic]215   41 |         };216      |          ^217c_src/nanovg/nanovg.h:35:8: warning: struct has no named members [-Wpedantic]218   35 | struct NVGcolor {219      |        ^~~~~~~~220In file included from c_src/nanovg/nanovg.c:26:221c_src/nanovg/fontstash.h: In function ‘fonsAddFont’:222c_src/nanovg/fontstash.h:911:20: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare]223  911 |         if (readed != dataSize) goto error;224      |                    ^~225In file included from c_src/nanovg/nanovg.c:28:226c_src/nanovg/stb_image.h: In function ‘stbi__convert_format’:227c_src/nanovg/stb_image.h:1359:44: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]228 1359 |       #define CASE(a,b)   case COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b)229      |                                            ^~~230c_src/nanovg/stb_image.h:1363:10: note: in expansion of macro ‘CASE’231 1363 |          CASE(1,2) dest[0]=src[0], dest[1]=255; break;232      |          ^~~~233c_src/nanovg/stb_image.h:1363:49: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’234 1363 |          CASE(1,2) dest[0]=src[0], dest[1]=255; break;235      |                                                 ^~~~~236c_src/nanovg/stb_image.h:1359:44: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]237 1359 |       #define CASE(a,b)   case COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b)238      |                                            ^~~239c_src/nanovg/stb_image.h:1364:10: note: in expansion of macro ‘CASE’240 1364 |          CASE(1,3) dest[0]=dest[1]=dest[2]=src[0]; break;241      |          ^~~~242c_src/nanovg/stb_image.h:1364:52: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’243 1364 |          CASE(1,3) dest[0]=dest[1]=dest[2]=src[0]; break;244      |                                                    ^~~~~245c_src/nanovg/stb_image.h:1359:44: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]246 1359 |       #define CASE(a,b)   case COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b)247      |                                            ^~~248c_src/nanovg/stb_image.h:1365:10: note: in expansion of macro ‘CASE’249 1365 |          CASE(1,4) dest[0]=dest[1]=dest[2]=src[0], dest[3]=255; break;250      |          ^~~~251c_src/nanovg/stb_image.h:1365:65: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’252 1365 |          CASE(1,4) dest[0]=dest[1]=dest[2]=src[0], dest[3]=255; break;253      |                                                                 ^~~~~254c_src/nanovg/stb_image.h:1359:44: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]255 1359 |       #define CASE(a,b)   case COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b)256      |                                            ^~~257c_src/nanovg/stb_image.h:1366:10: note: in expansion of macro ‘CASE’258 1366 |          CASE(2,1) dest[0]=src[0]; break;259      |          ^~~~260c_src/nanovg/stb_image.h:1366:36: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’261 1366 |          CASE(2,1) dest[0]=src[0]; break;262      |                                    ^~~~~263c_src/nanovg/stb_image.h:1359:44: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]264 1359 |       #define CASE(a,b)   case COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b)265      |                                            ^~~266c_src/nanovg/stb_image.h:1367:10: note: in expansion of macro ‘CASE’267 1367 |          CASE(2,3) dest[0]=dest[1]=dest[2]=src[0]; break;268      |          ^~~~269c_src/nanovg/stb_image.h:1367:52: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’270 1367 |          CASE(2,3) dest[0]=dest[1]=dest[2]=src[0]; break;271      |                                                    ^~~~~272c_src/nanovg/stb_image.h:1359:44: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]273 1359 |       #define CASE(a,b)   case COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b)274      |                                            ^~~275c_src/nanovg/stb_image.h:1368:10: note: in expansion of macro ‘CASE’276 1368 |          CASE(2,4) dest[0]=dest[1]=dest[2]=src[0], dest[3]=src[1]; break;277      |          ^~~~278c_src/nanovg/stb_image.h:1368:68: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’279 1368 |          CASE(2,4) dest[0]=dest[1]=dest[2]=src[0], dest[3]=src[1]; break;280      |                                                                    ^~~~~281c_src/nanovg/stb_image.h:1359:44: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]282 1359 |       #define CASE(a,b)   case COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b)283      |                                            ^~~284c_src/nanovg/stb_image.h:1369:10: note: in expansion of macro ‘CASE’285 1369 |          CASE(3,4) dest[0]=src[0],dest[1]=src[1],dest[2]=src[2],dest[3]=255; break;286      |          ^~~~287c_src/nanovg/stb_image.h:1369:78: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’288 1369 |          CASE(3,4) dest[0]=src[0],dest[1]=src[1],dest[2]=src[2],dest[3]=255; break;289      |                                                                              ^~~~~290c_src/nanovg/stb_image.h:1359:44: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]291 1359 |       #define CASE(a,b)   case COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b)292      |                                            ^~~293c_src/nanovg/stb_image.h:1370:10: note: in expansion of macro ‘CASE’294 1370 |          CASE(3,1) dest[0]=stbi__compute_y(src[0],src[1],src[2]); break;295      |          ^~~~296c_src/nanovg/stb_image.h:1370:67: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’297 1370 |          CASE(3,1) dest[0]=stbi__compute_y(src[0],src[1],src[2]); break;298      |                                                                   ^~~~~299c_src/nanovg/stb_image.h:1359:44: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]300 1359 |       #define CASE(a,b)   case COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b)301      |                                            ^~~302c_src/nanovg/stb_image.h:1371:10: note: in expansion of macro ‘CASE’303 1371 |          CASE(3,2) dest[0]=stbi__compute_y(src[0],src[1],src[2]), dest[1] = 255; break;304      |          ^~~~305c_src/nanovg/stb_image.h:1371:82: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’306 1371 |          CASE(3,2) dest[0]=stbi__compute_y(src[0],src[1],src[2]), dest[1] = 255; break;307      |                                                                                  ^~~~~308c_src/nanovg/stb_image.h:1359:44: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]309 1359 |       #define CASE(a,b)   case COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b)310      |                                            ^~~311c_src/nanovg/stb_image.h:1372:10: note: in expansion of macro ‘CASE’312 1372 |          CASE(4,1) dest[0]=stbi__compute_y(src[0],src[1],src[2]); break;313      |          ^~~~314c_src/nanovg/stb_image.h:1372:67: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’315 1372 |          CASE(4,1) dest[0]=stbi__compute_y(src[0],src[1],src[2]); break;316      |                                                                   ^~~~~317c_src/nanovg/stb_image.h:1359:44: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]318 1359 |       #define CASE(a,b)   case COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b)319      |                                            ^~~320c_src/nanovg/stb_image.h:1373:10: note: in expansion of macro ‘CASE’321 1373 |          CASE(4,2) dest[0]=stbi__compute_y(src[0],src[1],src[2]), dest[1] = src[3]; break;322      |          ^~~~323c_src/nanovg/stb_image.h:1373:85: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’324 1373 |          CASE(4,2) dest[0]=stbi__compute_y(src[0],src[1],src[2]), dest[1] = src[3]; break;325      |                                                                                     ^~~~~326c_src/nanovg/stb_image.h:1359:44: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]327 1359 |       #define CASE(a,b)   case COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b)328      |                                            ^~~329c_src/nanovg/stb_image.h:1374:10: note: in expansion of macro ‘CASE’330 1374 |          CASE(4,3) dest[0]=src[0],dest[1]=src[1],dest[2]=src[2]; break;331      |          ^~~~332c_src/nanovg/stb_image.h:1374:66: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’333 1374 |          CASE(4,3) dest[0]=src[0],dest[1]=src[1],dest[2]=src[2]; break;334      |                                                                  ^~~~~335c_src/nanovg/stb_image.h: In function ‘stbi__build_fast_ac’:336c_src/nanovg/stb_image.h:1578:33: warning: left shift of negative value [-Wshift-negative-value]337 1578 |             if (k < m) k += (-1 << magbits) + 1;338      |                                 ^~339c_src/nanovg/stb_image.h: In function ‘stbi__create_png_image_raw’:340c_src/nanovg/stb_image.h:4049:17: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]341 4049 |                 for (k=0; k < nk; ++k)342      |                 ^~~343c_src/nanovg/stb_image.h:4053:13: note: in expansion of macro ‘CASE’344 4053 |             CASE(STBI__F_sub)          cur[k] = STBI__BYTECAST(raw[k] + cur[k-filter_bytes]); break;345      |             ^~~~346c_src/nanovg/stb_image.h:4053:95: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’347 4053 |             CASE(STBI__F_sub)          cur[k] = STBI__BYTECAST(raw[k] + cur[k-filter_bytes]); break;348      |                                                                                               ^~~~~349c_src/nanovg/stb_image.h:4049:17: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]350 4049 |                 for (k=0; k < nk; ++k)351      |                 ^~~352c_src/nanovg/stb_image.h:4054:13: note: in expansion of macro ‘CASE’353 4054 |             CASE(STBI__F_up)           cur[k] = STBI__BYTECAST(raw[k] + prior[k]); break;354      |             ^~~~355c_src/nanovg/stb_image.h:4054:84: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’356 4054 |             CASE(STBI__F_up)           cur[k] = STBI__BYTECAST(raw[k] + prior[k]); break;357      |                                                                                    ^~~~~358c_src/nanovg/stb_image.h:4049:17: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]359 4049 |                 for (k=0; k < nk; ++k)360      |                 ^~~361c_src/nanovg/stb_image.h:4055:13: note: in expansion of macro ‘CASE’362 4055 |             CASE(STBI__F_avg)          cur[k] = STBI__BYTECAST(raw[k] + ((prior[k] + cur[k-filter_bytes])>>1)); break;363      |             ^~~~364c_src/nanovg/stb_image.h:4055:113: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’365 4055 |             CASE(STBI__F_avg)          cur[k] = STBI__BYTECAST(raw[k] + ((prior[k] + cur[k-filter_bytes])>>1)); break;366      |                                                                                                                 ^~~~~367c_src/nanovg/stb_image.h:4049:17: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]368 4049 |                 for (k=0; k < nk; ++k)369      |                 ^~~370c_src/nanovg/stb_image.h:4056:13: note: in expansion of macro ‘CASE’371 4056 |             CASE(STBI__F_paeth)        cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k-filter_bytes],prior[k],prior[k-filter_bytes])); break;372      |             ^~~~373c_src/nanovg/stb_image.h:4056:139: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’374 4056 |             CASE(STBI__F_paeth)        cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k-filter_bytes],prior[k],prior[k-filter_bytes])); break;375      |                                                                                                                                           ^~~~~376c_src/nanovg/stb_image.h:4049:17: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]377 4049 |                 for (k=0; k < nk; ++k)378      |                 ^~~379c_src/nanovg/stb_image.h:4057:13: note: in expansion of macro ‘CASE’380 4057 |             CASE(STBI__F_avg_first)    cur[k] = STBI__BYTECAST(raw[k] + (cur[k-filter_bytes] >> 1)); break;381      |             ^~~~382c_src/nanovg/stb_image.h:4057:102: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’383 4057 |             CASE(STBI__F_avg_first)    cur[k] = STBI__BYTECAST(raw[k] + (cur[k-filter_bytes] >> 1)); break;384      |                                                                                                      ^~~~~385c_src/nanovg/stb_image.h:4049:17: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]386 4049 |                 for (k=0; k < nk; ++k)387      |                 ^~~388c_src/nanovg/stb_image.h:4058:13: note: in expansion of macro ‘CASE’389 4058 |             CASE(STBI__F_paeth_first)  cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k-filter_bytes],0,0)); break;390      |             ^~~~391c_src/nanovg/stb_image.h:4058:112: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’392 4058 |             CASE(STBI__F_paeth_first)  cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k-filter_bytes],0,0)); break;393      |                                                                                                                ^~~~~394c_src/nanovg/stb_image.h:4067:20: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]395 4067 |                    for (k=0; k < img_n; ++k)396      |                    ^~~397c_src/nanovg/stb_image.h:4069:13: note: in expansion of macro ‘CASE’398 4069 |             CASE(STBI__F_none)         cur[k] = raw[k]; break;399      |             ^~~~400c_src/nanovg/stb_image.h:4069:57: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’401 4069 |             CASE(STBI__F_none)         cur[k] = raw[k]; break;402      |                                                         ^~~~~403c_src/nanovg/stb_image.h:4067:20: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]404 4067 |                    for (k=0; k < img_n; ++k)405      |                    ^~~406c_src/nanovg/stb_image.h:4070:13: note: in expansion of macro ‘CASE’407 4070 |             CASE(STBI__F_sub)          cur[k] = STBI__BYTECAST(raw[k] + cur[k-out_n]); break;408      |             ^~~~409c_src/nanovg/stb_image.h:4070:88: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’410 4070 |             CASE(STBI__F_sub)          cur[k] = STBI__BYTECAST(raw[k] + cur[k-out_n]); break;411      |                                                                                        ^~~~~412c_src/nanovg/stb_image.h:4067:20: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]413 4067 |                    for (k=0; k < img_n; ++k)414      |                    ^~~415c_src/nanovg/stb_image.h:4071:13: note: in expansion of macro ‘CASE’416 4071 |             CASE(STBI__F_up)           cur[k] = STBI__BYTECAST(raw[k] + prior[k]); break;417      |             ^~~~418c_src/nanovg/stb_image.h:4071:84: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’419 4071 |             CASE(STBI__F_up)           cur[k] = STBI__BYTECAST(raw[k] + prior[k]); break;420      |                                                                                    ^~~~~421c_src/nanovg/stb_image.h:4067:20: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]422 4067 |                    for (k=0; k < img_n; ++k)423      |                    ^~~424c_src/nanovg/stb_image.h:4072:13: note: in expansion of macro ‘CASE’425 4072 |             CASE(STBI__F_avg)          cur[k] = STBI__BYTECAST(raw[k] + ((prior[k] + cur[k-out_n])>>1)); break;426      |             ^~~~427c_src/nanovg/stb_image.h:4072:106: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’428 4072 |             CASE(STBI__F_avg)          cur[k] = STBI__BYTECAST(raw[k] + ((prior[k] + cur[k-out_n])>>1)); break;429      |                                                                                                          ^~~~~430c_src/nanovg/stb_image.h:4067:20: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]431 4067 |                    for (k=0; k < img_n; ++k)432      |                    ^~~433c_src/nanovg/stb_image.h:4073:13: note: in expansion of macro ‘CASE’434 4073 |             CASE(STBI__F_paeth)        cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k-out_n],prior[k],prior[k-out_n])); break;435      |             ^~~~436c_src/nanovg/stb_image.h:4073:125: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’437 4073 |             CASE(STBI__F_paeth)        cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k-out_n],prior[k],prior[k-out_n])); break;438      |                                                                                                                             ^~~~~439c_src/nanovg/stb_image.h:4067:20: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]440 4067 |                    for (k=0; k < img_n; ++k)441      |                    ^~~442c_src/nanovg/stb_image.h:4074:13: note: in expansion of macro ‘CASE’443 4074 |             CASE(STBI__F_avg_first)    cur[k] = STBI__BYTECAST(raw[k] + (cur[k-out_n] >> 1)); break;444      |             ^~~~445c_src/nanovg/stb_image.h:4074:95: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’446 4074 |             CASE(STBI__F_avg_first)    cur[k] = STBI__BYTECAST(raw[k] + (cur[k-out_n] >> 1)); break;447      |                                                                                               ^~~~~448c_src/nanovg/stb_image.h:4067:20: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]449 4067 |                    for (k=0; k < img_n; ++k)450      |                    ^~~451c_src/nanovg/stb_image.h:4075:13: note: in expansion of macro ‘CASE’452 4075 |             CASE(STBI__F_paeth_first)  cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k-out_n],0,0)); break;453      |             ^~~~454c_src/nanovg/stb_image.h:4075:105: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’455 4075 |             CASE(STBI__F_paeth_first)  cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k-out_n],0,0)); break;456      |                                                                                                         ^~~~~457c_src/nanovg/stb_image.h: In function ‘stbi__tga_get_comp’:458c_src/nanovg/stb_image.h:4856:18: warning: this statement may fall through [-Wimplicit-fallthrough=]459 4856 |       case 16: if(is_grey) return STBI_grey_alpha;460      |                  ^461c_src/nanovg/stb_image.h:4858:7: note: here462 4858 |       case 15: if(is_rgb16) *is_rgb16 = 1;463      |       ^~~~464c_src/nanovg/fontstash.h: In function ‘fonsDeleteInternal’:465c_src/nanovg/fontstash.h:1647:9: warning: pointer ‘stash’ used after ‘free’ [-Wuse-after-free]466 1647 |         fons__tt_done(stash);467      |         ^~~~~~~~~~~~~~~~~~~~468c_src/nanovg/fontstash.h:1646:9: note: call to ‘free’ here469 1646 |         free(stash);470      |         ^~~~~~~~~~~471In file included from c_src/nanovg/fontstash.h:262:472c_src/nanovg/stb_truetype.h: In function ‘stbtt_GetGlyphSDF’:473c_src/nanovg/stb_truetype.h:4507:53: warning: ‘res[1]’ may be used uninitialized [-Wmaybe-uninitialized]474 4507 |                      if (num >= 2 && res[1] >= 0.0f && res[1] <= 1.0f) {475      |                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~476c_src/nanovg/stb_truetype.h:4472:28: note: ‘res[1]’ was declared here477 4472 |                      float res[3],px,py,t,it;478      |                            ^~~479c_src/render_script.c:15:12: fatal error: GLES2/gl2.h: No such file or directory480   15 |   #include <GLES2/gl2.h>481      |            ^~~~~~~~~~~~~482compilation terminated.483c_src/tx.c:14:10: fatal error: GLES2/gl2.h: No such file or directory484   14 | #include <GLES2/gl2.h>485      |          ^~~~~~~~~~~~~486compilation terminated.487c_src/utils.c:16:10: fatal error: GLES2/gl2.h: No such file or directory488   16 | #include <GLES2/gl2.h>489      |          ^~~~~~~~~~~~~490compilation terminated.491make: *** [Makefile:55: /work/proj/_build/host/lib/scenic_driver_nerves_rpi/priv/scenic_driver_nerves_rpi] Error 1492could not compile dependency :scenic_driver_nerves_rpi, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile scenic_driver_nerves_rpi --force", update it with "mix deps.update scenic_driver_nerves_rpi" or clean it with "mix deps.clean scenic_driver_nerves_rpi"493==> nerves_compatibility_test494** (Mix) Could not compile with "make" (exit status: 2).495You need to have gcc and make installed. If you are using496Ubuntu or any other Debian-based system, install the packages497"build-essential". Also install "erlang-dev" package if not498included in your Erlang/OTP version. If you're on Fedora, run499"dnf group install 'Development Tools'".500