Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

deface when use wxwidgets 3.0.2 over GTK3 #51

Open
sl1pkn07 opened this issue Jul 30, 2016 · 16 comments
Open

deface when use wxwidgets 3.0.2 over GTK3 #51

sl1pkn07 opened this issue Jul 30, 2016 · 16 comments
Labels

Comments

@sl1pkn07
Copy link

@sl1pkn07 sl1pkn07 commented Jul 30, 2016

https://sl1pkn07.wtf/paste/view/5e1984e8



  Configure script has finished system check.

  Configured aMule SVN (rev. 10941) for 'x86_64-unknown-linux-gnu'.

  aMule enabled options:

  **** aMule Core ****
  Prefix where aMule should be installed?                    /usr
  Should aMule be compiled with i18n support?                yes
  Should aMule be compiled in debug mode?                    yes
  Should aMule be compiled with profiling?                   no
  Should aMule be compiled with optimizations?               yes
  Should aMule be compiled with UPnP support?                yes
  Should aMule be compiled with IP2country support?          no
  Should aMule monolithic application be built?              no
  Should aMule daemon version be built?                      yes
  Should aMule remote gui be built?                          no

  **** aMule TextClient ****
  Should aMule Command Line Client be built?                 yes

  **** aMule WebServer ****
  Should aMule WebServer be built?                           yes

  **** aMule ED2K Links Handler ****
  Should aMule ED2K Links Handler be built?                  yes

  **** aMuleLinkCreator ****
  Should aMuleLinkCreator GUI version (alc) be built?        no
  Should aMuleLinkCreator for console (alcc) be built?       yes

  **** aMule Statistics ****
  Should C aMule Statistics (CAS) be built?                  no
  Should aMule GUI Statistics (wxCas) be built?              no
  Should xas XChat2 plugin be installed?                     no
  Should plasmaMule plasma-applet be built?                  no

  **** General Libraries and Tools ****
  Should ccache support be enabled?                          yes
  Libraries aMule will use to build:
                             wxWidgets             3.0.1 (base,shared)
                             boost                 1.60 (in /usr/include)
                             crypto++              5.6.3 (in /usr)
                             libupnp               1.6.19
                             libintl               system
                             libpng                1.6.23
                             zlib                  1.2.8

NOTE: is 3.0.2. idk why wx-config show 3.0.1

checking for the --with-toolkit option... will be automatically detected
checking for the --with-wxshared option... will be automatically detected
checking for the --with-wxdebug option... will be automatically detected
checking for the --with-wxversion option... will be automatically detected
checking for wx-config... /usr/bin/wx-config
checking for wxWidgets version >= 2.8.12 (--unicode=yes)... yes (version 3.0.1)
checking for wxWidgets static library... no
checking if wxWidgets was built with UNICODE enabled... yes
checking if wxWidgets was built in DEBUG mode... no
checking if wxWidgets was built in STATIC mode... no
checking which wxWidgets toolkit was selected... gtk3
@gonosztopi
Copy link
Member

@gonosztopi gonosztopi commented Aug 1, 2016

Hmm, interesting... Please re-run configure with WX_DEBUG_CONFIGURE=1 ./configure .... and post the relevant parts.

@sl1pkn07
Copy link
Author

@sl1pkn07 sl1pkn07 commented Aug 1, 2016

checking for the --with-toolkit option... will be automatically detected
checking for the --with-wxshared option... will be automatically detected
checking for the --with-wxdebug option... will be automatically detected
checking for the --with-wxversion option... will be automatically detected
[dbg] DEBUG: , WX_DEBUG: 
[dbg] UNICODE: , WX_UNICODE: 
[dbg] SHARED: , WX_SHARED: 
[dbg] TOOLKIT: , WX_TOOLKIT: 
[dbg] VERSION: SVN, WX_RELEASE: 
[dbg] WXCONFIG_FLAGS: --unicode=yes
checking for wx-config... /usr/lib/wx/config/gtk3-unicode-3.0
checking for wxWidgets version >= 2.8.12 (--unicode=yes)... yes (version 3.0.1)
checking for wxWidgets static library... no
[dbg] Using wx-config --selected-config
[dbg] WX_SELECTEDCONFIG: gtk3-unicode-3.0
checking if wxWidgets was built with UNICODE enabled... yes
checking if wxWidgets was built in DEBUG mode... no
checking if wxWidgets was built in STATIC mode... no
checking which wxWidgets toolkit was selected... gtk3
[dbg] Values of all WX_* options after final detection:
[dbg] WX_DEBUG: 0
[dbg] WX_UNICODE: 1
[dbg] WX_SHARED: 1
[dbg] WX_RELEASE: 30
[dbg] WX_PORT: gtk3

@gonosztopi
Copy link
Member

@gonosztopi gonosztopi commented Aug 2, 2016

I think wxWidgets =< 3.1 may not be fully ready for gtk3. I'd say you'd try it with wxWidgets 3.1, but you'd run into several compilation errors... Unfortunately aMule does not support wxWidgets >= 3.1 yet...

@sandrotosi
Copy link

@sandrotosi sandrotosi commented Sep 7, 2019

In debian we're trying to migrate WX libraries from Gtk2 to Gtk3, with when rebuilt with the Gtk3 incantation, amule crashes with:

(gdb) r
Starting program: /usr/bin/amule 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7ffff2cf5700 (LWP 5340)]
[New Thread 0x7ffff24f4700 (LWP 5341)]
[Detaching after fork from child process 5342]
 2019-09-06 23:35:58: Initialising aMule 2.3.2 compiled with wxGTK2 v3.0.4 and Boost 1.67
 2019-09-06 23:35:58: Checking if there is an instance already running...
 2019-09-06 23:35:58: No other instances are running.
[Detaching after fork from child process 5344]
[Detaching after fork from child process 5346]
[Detaching after fork from child process 5348]
[Detaching after fork from child process 5350]
[Detaching after fork from child process 5352]
[Detaching after fork from child process 5354]
[Detaching after fork from child process 5356]
[Detaching after fork from child process 5358]
 2019-09-06 23:35:58: ListenSocket: Ok.
[New Thread 0x7ffff172f700 (LWP 5360)]
[New Thread 0x7ffff0f2e700 (LWP 5361)]
[New Thread 0x7fffebfff700 (LWP 5362)]
[New Thread 0x7fffeb7fe700 (LWP 5363)]
[New Thread 0x7fffeaffd700 (LWP 5364)]
[New Thread 0x7fffea7fc700 (LWP 5365)]
[New Thread 0x7fffe9ffb700 (LWP 5366)]
[New Thread 0x7fffe97fa700 (LWP 5367)]
[New Thread 0x7fffe8ff9700 (LWP 5368)]
[Detaching after fork from child process 5369]
[New Thread 0x7fffde60e700 (LWP 5371)]
[New Thread 0x7fffdde0d700 (LWP 5372)]
[New Thread 0x7fffdd60c700 (LWP 5373)]
[New Thread 0x7fffdce0b700 (LWP 5374)]
[New Thread 0x7fffcffff700 (LWP 5375)]
[New Thread 0x7fffcf7fe700 (LWP 5376)]
[New Thread 0x7fffceffd700 (LWP 5377)]
 2019-09-06 23:35:59: Loading temp files from /download/enkey/tmp.
 2019-09-06 23:35:59: All PartFiles Loaded.
[New Thread 0x7fffce7fc700 (LWP 5379)]
[New Thread 0x7fffcdffb700 (LWP 5380)]

Thread 1 "amule" received signal SIGSEGV, Segmentation fault.
0x00007ffff71d8c1a in wxWindow::DoClientToScreen(int*, int*) const () from /usr/lib/x86_64-linux-gnu/libwx_gtk3u_core-3.0.so.0

@gonosztopi
Copy link
Member

@gonosztopi gonosztopi commented Sep 12, 2019

I have to say the only wx library aMule is stable with is 2.8.12. It more-or-less works with 3.0.4, and compiles with 3.1.x, but the GUI needs lots of work. I'm currently working on the GUI, but I don't have too much free time, you must understand.

@sergiomb2
Copy link

@sergiomb2 sergiomb2 commented Sep 14, 2019

I got lot of complains here [1] after start using wxwidgets 3.0 (2.8 was remove from distro)

https://bugzilla.rpmfusion.org/show_bug.cgi?id=5197

@BallaMarcell
Copy link
Contributor

@BallaMarcell BallaMarcell commented Sep 17, 2019

I got lot of complains here [1] after start using wxwidgets 3.0 (2.8 was remove from distro)
https://bugzilla.rpmfusion.org/show_bug.cgi?id=5197

I am seeing the same error when I compile with wxWidgets 3.0:

(amule:25621): GLib-CRITICAL **: 02:17:33.817: Source ID 2274 was not found when attempting to remove it

I tried to search for the cause, but it seems to be originating from wxWidgets. Unfortunately I am a novice when it comes to digging deeper and finding the real troublemaker.

@dememax
Copy link

@dememax dememax commented Nov 17, 2019

I am seeing the same error when I compile with wxWidgets 3.0:

(amule:25621): GLib-CRITICAL **: 02:17:33.817: Source ID 2274 was not found when attempting to remove it

I have this message ("Source ID was not found") with wxGTK2 v3.0.x on my Gentoo, see:
http://bugs.amule.org/view.php?id=1802
(Does anybody whatch bugs.amule.org or it was moved definitively here?)

@dememax
Copy link

@dememax dememax commented Nov 17, 2019

I have to say the only wx library aMule is stable with is 2.8.12.

Helped my with http://bugs.amule.org/view.php?id=1802
The thing is that I don't have wx 2.x any more on my distribution.

@dememax
Copy link

@dememax dememax commented Dec 10, 2019

I have to say the only wx library aMule is stable with is 2.8.12. It more-or-less works with 3.0.4, and compiles with 3.1.x, but the GUI needs lots of work. I'm currently working on the GUI, but I don't have too much free time, you must understand.

I confirm that latest aMule (d157fe8 [origin/master] Updated to include also x86_64 binary for MAC OS X 10.15.x Catalina) works quite stable with the latest wx (c4af8be615 [origin/master] wxIsPlatform64Bit: don't launch uname needlessly).

The idea is to use Boost.Asio for networking:

./configure --enable-amulecmd --enable-amule-gui --enable-wxcas --enable-geoip --with-gnu-ld --enable-shared --disable-upnp --with-wxshared --with-wxdebug --with-boost

Libraries aMule will use to build:
wxWidgets 3.1.4 (gtk3,debug,shared)
boost 1.71
crypto++ 8.2 (in /usr)
libintl system
libGeoIP system
zlib 1.2.11

Some changes are needed for flags like wxALIGN_CENTER_VERTICAL, wxALIGN_CENTER_HORIZONTAL, etc. in src/muuli_wdr.cpp and src/amuleDlg.cpp, otherwise aMule crashes with assertion like:

"Assertion '!(flags & wxALIGN_CENTRE_VERTICAL)' failed. Vertical alignment flags are ignored in vertical sizers"

And there are as well some asserts on statistics page:

Assertion failed: ./src/gtk/bitmap.cpp:Draw:1354: Assertion '"IsOk()"' failed. invalid bitmap
Backtrace follows:
[3] wxOnAssert(char const*, int, char const*, char const*, char const*) in /home/max/opt/lib/libwx_baseu-3.1.so.4[0x7fd5d26e685e]
[4] wxBitmap::Draw(_cairo*, int, int, bool, wxColour const*, wxColour const*) const in /home/max/opt/lib/libwx_gtk3u_core-3.1.so.4[0x7fd5d2c5221a]
[5] ?? in /home/max/opt/lib/libwx_gtk3u_core-3.1.so.4[0x7fd5d2c5d3b1]
[6] ?? in /home/max/sources/amule/src/amule[0x55595c37e052]
[7] ?? in /home/max/sources/amule/src/amule[0x55595c390e0b]
[8] wxAppConsoleBase::HandleEvent(wxEvtHandler*, void (wxEvtHandler::*)(wxEvent&), wxEvent&) const in /home/max/opt/lib/libwx_baseu-3.1.so.4[0x7fd5d26e4b18

@sc0w
Copy link
Member

@sc0w sc0w commented May 12, 2020

I have tested with this change:

cf63429

and amule seems to work fine here building with libwxgtk3.0-gtk3-dev in debian

@sandrotosi latest stable version 2.3.2 has released 4 years ago, and we have a lot of security fixes in git master, maybe do you like to try latest git master with libwxgtk3.0-gtk3-dev and package it for debian?

@sandrotosi
Copy link

@sandrotosi sandrotosi commented May 31, 2020

@sc0w same exact crash with the commit you mentioned

@sergiomb2
Copy link

@sergiomb2 sergiomb2 commented May 31, 2020

I got lot of complains here [1] after start using wxwidgets 3.0 (2.8 was remove from distro)

https://bugzilla.rpmfusion.org/show_bug.cgi?id=5197

after compile with git master and boost support the bug was marked as fixed

@sandrotosi
Copy link

@sandrotosi sandrotosi commented May 31, 2020

yep, much better with a snapshot from master

@Vollstrecker
Copy link
Collaborator

@Vollstrecker Vollstrecker commented May 31, 2020

@sandrotosi Did you manage to compile with boost on recent version? While looking into all that ubuntu20.04 stuff, I just saw that asio is now header-only, too, so boost-system isn't pulled in as dep. From cmake I know our code works with that, but the autotools stuff fails miserably.

@sandrotosi
Copy link

@sandrotosi sandrotosi commented May 31, 2020

Debian still uses boost1.67 and i was able to build against it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

8 participants