neutrinolabs / xorgxrdp

Xorg drivers for xrdp
Other
455 stars 113 forks source link

Unable to compile #348

Open CorbinWunderlich opened 1 week ago

CorbinWunderlich commented 1 week ago
rdpClientCon.c:827:18: error: 'XRDP_a8r8g8b8' undeclared (first use in this function); did yo> 827 case XRDP_a8r8g8b8: ^~~~~ PICT_a8r8g8b8 rdpClientCon.c:827:18: note: each undeclared identifier is reported only once for each functi> rdpClientCon.c:828:18: error: 'XRDP_a8b8g8r8' undeclared (first use in this function); did yo> 828 case XRDP_a8b8g8r8: ^~~~~ PICT_a8b8g8r8 rdpClientCon.c:831:18: error: 'XRDP_r5g6b5' undeclared (first use in this function) 831 case XRDP_r5g6b5: ^~~ rdpClientCon.c:832:18: error: 'XRDP_a1r5g5b5' undeclared (first use in this function); did yo> 832 case XRDP_a1r5g5b5: ^~~~~ PICT_a1r5g5b5 rdpClientCon.c:845:37: error: 'XRDP_r3g3b2' undeclared (first use in this function) 845 clientCon->rdp_format = XRDP_r3g3b2;

I am compiling from source on NixOS. It has all the libraries it needs. I have enabled glamor and simd, but it did not work without them.

matt335672 commented 1 week ago

You need to pick a version of xorgxrdp which is compatible with your installed version of xrdp.

It looks like you're trying to compile a recent version of xorgxrdp against an older version of xrdp.

CorbinWunderlich commented 1 week ago

You need to pick a version of xorgxrdp which is compatible with your installed version of xrdp.

It looks like you're trying to compile a recent version of xorgxrdp against an older version of xrdp.

I am building xorgxrdp at v0.9.20, and xrdp at v0.9.25.1, is there anything wrong with this? I tried compiling the latest version, but it did not work. Thanks for your help. @matt335672

CorbinWunderlich commented 1 week ago

I finally got it to build (I don't know how, I didn't change anything) but glamor doesn't work. The screen is just blank. It worked just fine without it. The cursor on the screen is the correct remote cursor.

matt335672 commented 1 week ago

I can think of two possibilities here:- 1) Based on your description, make sure you haven't got a version of xrdp installed from a package, and a version you've built. If you do this, the shared libraries from one version get loaded by the other and bad things happen. 2) Glamor doesn't work on all platforms, which is why we implemented #322.

CorbinWunderlich commented 1 week ago

I can think of two possibilities here:-

1. Based on your description, make sure you haven't got a version of xrdp installed from a package, and a version you've built. If you do this, the shared libraries from one version get loaded by the other and bad things happen.

2. Glamor doesn't work on all platforms, which is why we implemented [glamor, check list of support devices #322](https://github.com/neutrinolabs/xorgxrdp/pull/322).

I am only using the new xrdp as a build input, not the already installed one. NixOS can do that very easily. As for the platform I am using, I am using i915-sriov as a guest vm. I assumed that was supported. Maybe it isn't thanks for the help.

matt335672 commented 1 week ago

Try disabling glamor at runtime by setting the DRMDevice to "" in /etc/X11/xrdp/xorg.conf`. That will tell you if it's glamor or not.

CorbinWunderlich commented 1 week ago

Try disabling glamor at runtime by setting the DRMDevice to "" in /etc/X11/xrdp/xorg.conf`. That will tell you if it's glamor or not.

Where will it tell me that?

matt335672 commented 1 week ago

Sorry - not being clear. Setting the DRMDevice will tell you whether the the blank screen is a glamor problem, or whether something else is going on.