Hi all! I am trying to make sure my opengl-backed GUI application is leveraging 
the most optimal graphics drivers on the beaglebone black device and am running 
into yocto build failures.

 
Based on what I can tell from the changes in 56be461 
(https://git.yoctoproject.org/meta-ti/commit/meta-ti-bsp/recipes-graphics/libgles/ti-sgx-ddk-um_1.17.4948957.bb?h=kirkstone&id=56be4618abdde45649f0f92d383d5f44e5ec6efb),
 
<https://git.yoctoproject.org/meta-ti/commit/meta-ti-bsp/recipes-graphics/libgles/ti-sgx-ddk-um_1.17.4948957.bb?h=kirkstone&amp;id=56be4618abdde45649f0f92d383d5f44e5ec6efb),>
  I should be able to have mesa compiled using the drivers provided from the 
`ti-sgx-ddk-km` recipe by setting my preferred provider for the 
`virtual/gpudriver` as such:

 
```

PREFERRED_PROVIDER_virtual/gpudriver = "ti-sgx-ddk-km"

```

 
I'm not sure if this is the correct way to go about what I am trying to do, or 
if it is even necessary to ensure my application is using the best hardware it 
can (which is ultimately the goal). Either way, with the variable mentioned 
above set to `ti-sgx-ddk-km`, the mesa.do_compile step fails with what I 
believe are linker errors. This is an example of what I am seeing in my logs:

 
```

/<my-path-to-yocto>/tmp/work/beaglebone-poky-linux-gnueabi/mesa/2_22.0.3+pvr-r0/recipe-sysroot-native/usr/bin/arm-poky-linux-gnueabi/../../libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.3.0/ld:
 src/gallium/frontends/sgx/libsgx.a.p/pvrdri.c.o: in function 
`PVRDRIReleaseBuffer':

2023-03-15T19:19:43.7831698Z | 
/usr/src/debug/mesa/2_22.0.3+pvr-r0/build/../git/src/gallium/frontends/sgx/pvrdri.c:1055:
 undefined reference to `PVRDRIBufferDestroy'
2023-03-15T19:19:43.7832402Z | 
/<my-path-to-yocto>/tmp/work/beaglebone-poky-linux-gnueabi/mesa/2_22.0.3+pvr-r0/recipe-sysroot-native/usr/bin/arm-poky-linux-gnueabi/../../libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.3.0/ld:
 src/gallium/frontends/sgx/libsgx.a.p/pvrdri.c.o: in function 
`PVRDRIAllocateBuffer':
2023-03-15T19:19:43.7833062Z | 
/usr/src/debug/mesa/2_22.0.3+pvr-r0/build/../git/src/gallium/frontends/sgx/pvrdri.c:1027:
 undefined reference to `PVRDRIBufferCreate'
2023-03-15T19:19:43.7833813Z | 
/<my-path-to-yocto>/tmp/work/beaglebone-poky-linux-gnueabi/mesa/2_22.0.3+pvr-r0/recipe-sysroot-native/usr/bin/arm-poky-linux-gnueabi/../../libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.3.0/ld:
 
/usr/src/debug/mesa/2_22.0.3+pvr-r0/build/../git/src/gallium/frontends/sgx/pvrdri.c:1037:
 undefined reference to `PVRDRIBufferGetName'

```

 
The full(-ish, I might be missing some) list of these missing functions is:
 
- PVREGLDrawableDestroy
- PVREGLDrawableCreate

- PVRDRIPixFmtGetBlockSize

- PVRDRIEGLMarkRendersurfaceInvalid

- PVREGLDrawableRecreate

- PVRDRIBufferDestroy

- PVRDRIGetAPIFunc

- PVRDRIEGLGetLibHandle

- PVRDRIDepthStencilBitArraySize

- PVRDRIMSAABitArraySize

- PVRDRIDepthBitsArray

- PVRDRIEGLImageCreate

- PVRDRIMesaFormatSupported

- PVRDRIMaxPBufferWidth

- PVRDRIMaxPBufferHeight

- PVRDRIBufferCreateFromNames

- PVRDRIEGLImageCreateFromBuffer

- PVRDRIEGLFlushBuffers

- PVRDRIBufferCreate

- PVRDRICreateDrawableImpl

- PVRDRIMakeCurrentGC

- PVRDRIGetDeviceTypeFromFd

- PVRDRIEGLImageGetAttribs

- PVRDRI2ReleaseTexImage

 
I'm a bit out of my element here, but it looks like I might be missing some 
dynamically linked library that provides functions like PVRDRIBufferGetName 
which gallium depends on? It seems likely I am missing a recipe or 
configuration value, but I'm not sure where to look.

 
Any help here would be appreciated. I'd be happy to provide more logs and/or 
configuration information as necessary.

 
Thanks!

- Danny

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#15988): 
https://lists.yoctoproject.org/g/meta-ti/message/15988
Mute This Topic: https://lists.yoctoproject.org/mt/97653905/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/meta-ti/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to