Bug 263778 - x11/xscreensaver: Fails to run: glslideshow: undefined symbol "eg1GetPlatformDisplay" (missing --with-glx ?)
Summary: x11/xscreensaver: Fails to run: glslideshow: undefined symbol "eg1GetPlatform...
Status: Open
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Many People
Assignee: Charlie Li
URL:
Keywords: needs-patch, needs-qa, regression
Depends on:
Blocks:
 
Reported: 2022-05-05 00:00 UTC by Christopher
Modified: 2022-05-06 12:44 UTC (History)
3 users (show)

See Also:
vishwin: maintainer-feedback+
koobs: maintainer-feedback? (x11)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Christopher 2022-05-05 00:00:54 UTC
First let me say thank you to all involved with getting the 6.0 version into the ports tree!

I have it happily running on several newer workstations and laptops.

However, I did have an issue with two older laptops which use the nvidia-driver-340 (latest version).  The prior version of xscreensaver worked fine but version 6 does not.

The error I when launching from cmd line using any of the GL screensavers is:

ld-elf.xo.1:/usr/local/bin/xscreensaver-hacks/glslideshow: undefined symbol "eg1GetPlatformDisplay"

The error on the desktop when trying to launch any GL screen saver is a black screen with big red print  "glslideshow crashed with status 1"

I did some digging and see this is an issue with v6 and older video cards.

see:  https://bugs.gentoo.org/811885

From comment #1 of the above link, I did the following...

I edited the make file to include --with-glx \ in the CONFIGURE_ARGS section.  I placed it right under --with-gl \ and then rebuilt xscreensaver.

It worked!  GL screensavers back in action under the legacy nvidia driver.

I am not saying it's the "proper" or "right" way to go about it, I'll let other's figure that out.  I am just saying... it worked for me and hope this helps other's who come across the same issue.

It might be nice to have an option to do something like this for those with legacy hardware, etc.
Comment 1 Kubilay Kocak freebsd_committer freebsd_triage 2022-05-05 00:15:54 UTC
Thank you for the report Christopher. 

For ports issues, its always most helpful to prefix issue summaries with "$category/$portname: " replacing category and portname with the actual category and portname values.
Comment 2 Christopher 2022-05-05 07:35:25 UTC
Please accept my apologies... I'll do better next time.
Comment 3 Charlie Li freebsd_committer freebsd_triage 2022-05-05 22:28:24 UTC
Hmm…this may be why xscreensaver occasionally "hangs", doesn't display the unlock dialog or clear itself after an unlock (with invisible dialog) on my two-high-pixel-density-monitor setup, with latest mesa even. Let me dogfood --with-glx a bit.
Comment 4 Christoph Moench-Tegeder freebsd_committer freebsd_triage 2022-05-06 12:44:27 UTC
(In reply to Christopher from comment #0)

legacy nvidia driver, egl? that rings a bell: bug #263209, comment #5

(it should be eglGetPlatformDisplay() with an ell "l" not one "1", right?)