News:

Accounts with zero posts and zero activity during the last months will be deleted periodically to fight SPAM!

Main Menu

A way to make an All-in-one install package for linux?

Started by MP2E, December 16, 2007, 03:15:44 AM

Previous topic - Next topic

MP2E

Is there a way to include a wxWidgets Library into a linux installer to be able to run Code::Blocks without installing wxWidgets on the user's machine?

JGM

Quote from: MP2E on December 16, 2007, 03:15:44 AM
Is there a way to include a wxWidgets Library into a linux installer to be able to run Code::Blocks without installing wxWidgets on the user's machine?

Maybe compiling codeblocks statically to wxWidgets, but the binary would be huge. Also you can check http://autopackage.org/ and share your experience if you have any success installing in multiple linux distros.

stahta01

Quote from: JGM on December 16, 2007, 02:39:50 PM
Quote from: MP2E on December 16, 2007, 03:15:44 AM
Is there a way to include a wxWidgets Library into a linux installer to be able to run Code::Blocks without installing wxWidgets on the user's machine?

Maybe compiling codeblocks statically to wxWidgets, but the binary would be huge. Also you can check http://autopackage.org/ and share your experience if you have any success installing in multiple linux distros.

FYI: The design of Code::Blocks requires wxWidgets to be Shared. The Code::Blocks plugins need to use the same Shared wxWidgets. So, you would have to do the plugins in a static method also to do wxWidgets static

Tim S
C Programmer working to learn more about C++.
On Windows 10 64 bit and Windows 11 64 bit.
--
When in doubt, read the CB WiKi FAQ. [url="http://wiki.codeblocks.org"]http://wiki.codeblocks.org[/url]

thomas

Quote from: stahta01 on December 16, 2007, 03:25:36 PMFYI: The design of Code::Blocks requires wxWidgets to be Shared. The Code::Blocks plugins need to use the same Shared wxWidgets. So, you would have to do the plugins in a static method also to do wxWidgets static
Can you explain what exactly requires wxWidgets to be a shared library?
It just so happens that we use it as shared library because it's the easiest thing to manage, and results in much less total executable size. Also, wxWidgets can be a real pain to use as shared library.
However, I don't see why it should be impossible by design to build with static libs if someone absolutely wants to do that (for whatever reason).
"We should forget about small efficiencies, say about 97% of the time: Premature quotation is the root of public humiliation."

stahta01

#4
Quote from: thomas on December 16, 2007, 07:32:35 PM
Quote from: stahta01 on December 16, 2007, 03:25:36 PMFYI: The design of Code::Blocks requires wxWidgets to be Shared. The Code::Blocks plugins need to use the same Shared wxWidgets. So, you would have to do the plugins in a static method also to do wxWidgets static
Can you explain what exactly requires wxWidgets to be a shared library?
It just so happens that we use it as shared library because it's the easiest thing to manage, and results in much less total executable size. Also, wxWidgets can be a real pain to use as shared library.
However, I don't see why it should be impossible by design to build with static libs if someone absolutely wants to do that (for whatever reason).

I was assuming that the Plugins and the SDK needs to link to the same wxWidgets for the plugins to work right. Are you saying that this is not required?

They could use multiple static wxWidgets and things would work right?

Tim S

PS: I am going to try it under windows, but it won't mean much for Linux if it fails under windows because Linux has slightly better linking and other OS support.

I gave up wxScintilla, as DLL build, has linking issues against static wxWidgets.


C Programmer working to learn more about C++.
On Windows 10 64 bit and Windows 11 64 bit.
--
When in doubt, read the CB WiKi FAQ. [url="http://wiki.codeblocks.org"]http://wiki.codeblocks.org[/url]