Transfer WxWidgets applications to another PC

Do you have a question about makefiles, a compiler or IDE you are using and need to know how to set it up for wxWidgets or why it doesn't compile but other IDE's do ? Post your questions here.
Post Reply
tap1956
Earned a small fee
Earned a small fee
Posts: 11
Joined: Thu Mar 05, 2020 8:05 pm

Transfer WxWidgets applications to another PC

Post by tap1956 » Tue May 05, 2020 7:04 pm

I made a WxWidgets project on Lbuntu 64 bit using CodeLite. Then I transferred the compiled release version of the program to Ubuntu without WxWidgets and CodeLite installed. I received a message that libwx_gtk3u_unofficial3_xrc-3.1.so.3 is missing. I placed the missing file from Lubuntu next to the executable file - I get the same message. The following questions arose:
1. Is it possible to compile the executable file in CodeLite so that it can be transferred to any Linux computer without transferring the libraries?
2. If this cannot be done, then which libraries need to be transferred to another computer and where should they be copied?
clTestGuiLin.zip
(8.41 KiB) Downloaded 12 times

DavidHart
Site Admin
Site Admin
Posts: 3988
Joined: Thu Jan 12, 2006 6:23 pm
Location: IoW, UK

Re: Transfer WxWidgets applications to another PC

Post by DavidHart » Tue May 05, 2020 7:41 pm

Hi,

This sort of question is frequently-asked when using Linux. The 'problem' is that linux distros prefer to distribute small binaries, and they are small because they don't contain the system libs on which they depend (unlike Windows where, iiuc, a program is usually statically-linked to lots of libs, making a large binary containing lots of duplicate libs).

So how does a distro like lubuntu solve the problem you've encountered? By creating a package (for debian-derived distros like *ubuntu it's a deb) that contains information about the dependent libs. When you 'apt install' a deb, that information is read by apt and you are prompted to install those dependencies. Incidentally, this also avoids your next problem: had you tried to install your program in a different version of lubuntu, it might well not have run even if you supplied all the ibwx_*_unofficial3* libs, due to ABI incompatibility with system libs.

Your solutions include the standard one of creating a deb; or creating a (Windows-like) bundle e.g. a Snap, or an AppImage, or...

Regards,

David

tap1956
Earned a small fee
Earned a small fee
Posts: 11
Joined: Thu Mar 05, 2020 8:05 pm

Re: Transfer WxWidgets applications to another PC

Post by tap1956 » Tue May 05, 2020 8:04 pm

Unfortunately, in CodeLight, I did not find the opportunity to create a debian package. I just recently started working in Linux. Tell me, please, how to make a Debian package my program for installation on another PC?

DavidHart
Site Admin
Site Admin
Posts: 3988
Joined: Thu Jan 12, 2006 6:23 pm
Location: IoW, UK

Re: Transfer WxWidgets applications to another PC

Post by DavidHart » Tue May 05, 2020 9:23 pm

That's not a thing that CodeLite, or I suspect any other IDE, will do for you. And describing how to make a deb isn't at all simple.

However there is a lot of available information, which you can easily find using your favourite search engine...

tap1956
Earned a small fee
Earned a small fee
Posts: 11
Joined: Thu Mar 05, 2020 8:05 pm

Re: Transfer WxWidgets applications to another PC

Post by tap1956 » Wed May 06, 2020 1:56 pm

Thanks for answers. Clear.

Post Reply