wxWidgets SetVirtualSizeHints Problem building on Arch

Problems getting SL up and running on Linux? Post here.

Moderator: jesse

Post Reply
mwaeti
Posts: 3
Joined: Mon Oct 31, 2022 12:49 am

wxWidgets SetVirtualSizeHints Problem building on Arch

Post by mwaeti »

First post here. Have used SL for a while but am struggling to install a newer release.

I'm getting this error when I run make on the SooperLooper 1.7.8 source code:
main_panel.cpp: In member function ‘void SooperLooperGui::MainPanel::init_loopers(int)’:
main_panel.cpp:471:28: error: ‘class wxScrolledWindow’ has no member named ‘SetVirtualSizeHints’; did you mean ‘SetVirtualSize’?
471 | _scroller->SetVirtualSizeHints (bestsz.GetWidth(), -1);
| ^~~~~~~~~~~~~~~~~~~
| SetVirtualSize
make[3]: *** [Makefile:480: main_panel.o] Error 1
I installed wxWidgets compiled for gtk2 as suggested, so I'm not sure what's going on here. I looked on the WxWiki and I found something about SetVirtualSizeHints being deprecated:

void wxSizer::SetVirtualSizeHints ( wxWindow * window )
Tell the sizer to set the minimal size of the window virtual area to match the sizer's minimal size.

For windows with managed scrollbars this will set them appropriately.

Deprecated:
This is exactly the same as FitInside() in wxWidgets 2.9 and later, please replace calls to it with FitInside().
See also
wxScrolled::SetScrollbars()
I tried changing the first instance of SetVirtualSizeHints, and the next instance threw an error too. I installed wxWidgets-3.2.1. Is this the wrong version?

Let me know and thanks!
jesse
Posts: 554
Joined: Sat Sep 06, 2008 9:46 am
Contact:

Re: wxWidgets SetVirtualSizeHints Problem building on Arch

Post by jesse »

Oops, haven't checked on here for a while...

Go ahead and comment out any calls to SetVirtualSizeHints in main_panel.cpp and in check_box.cpp and see what happens...
mwaeti
Posts: 3
Joined: Mon Oct 31, 2022 12:49 am

Re: wxWidgets SetVirtualSizeHints Problem building on Arch

Post by mwaeti »

Hi Jesse,

Thanks for the reply! I tried commenting it out and it installed at least. Running slgui I got a new error:
slgui: error while loading shared libraries: libwx_gtk2u_xrc-3.3.so.0: cannot open shared object file: No such file or directory
I found this thread a while back viewtopic.php?t=5062&sid=dc07b03ceaee48 ... bab5e36a17 so I tried installing the recent source code and got to the same place that way.

Maybe the missing wx library just got a name change? I ran wxconfig --libs and it returned
-L/usr/local/lib -pthread -lwx_gtk2u_xrc-3.3 -lwx_gtk2u_html-3.3 -lwx_gtk2u_qa-3.3 -lwx_gtk2u_core-3.3 -lwx_baseu_xml-3.3 -lwx_baseu_net-3.3 -lwx_baseu-3.3
Did they just change "libwx" to "lwx?"
hans
Posts: 2
Joined: Fri May 21, 2021 6:04 am

Re: wxWidgets SetVirtualSizeHints Problem building on Arch

Post by hans »

SooperLooper is available in the AUR. Did you check / use that?
mwaeti
Posts: 3
Joined: Mon Oct 31, 2022 12:49 am

Re: wxWidgets SetVirtualSizeHints Problem building on Arch

Post by mwaeti »

Hi Hans,

I think the AUR is where I started, but it throws the SetVirtualSizeHints error in the Main Panel and then aborts. I worked around that by using the newest source, where someone else who had that error went through and replaced the deprecated commands.

Now the engine runs fine I think, but the gui is having problems finding the necessary libraries because I think their names have changed.

I think I just need to figure out how to tell the gui look for this lwx_gtk2u_xrc-3.3 library instead of libwx_gtk2u_xrc-3.3.

Any insight appreciated!
Post Reply