Shared vs Static (please read)

Jesse Keating jkeating at j2solutions.net
Thu Dec 15 23:54:49 UTC 2005


On Thu, 2005-12-15 at 23:48 +0000, Peter Jr. Quiring wrote:
> I'm a C++ programmer that is porting from Windows to the Linux world.  So 
> far things are great.  I've recently tried to use the -static option with 
> gcc to generate binaries that are more portable, and so far it works.  The 
> only problem is that in FC5 the static libs are being removed (libjpeg-devel 
> - see ticket # 145971).  I understand that Shared libraries save space and 
> this is good for software that is bundled with the OS, but for third party 
> vendors, static would be a more ideal solution.  I own my own company with 
> one product available for Windows (currently it's my bread and butter).  I 
> don't have the resources available (just me) to release a Linux based 
> solution for every major distro out there such as the Wine project does (fyi 
> : I've contributed to that project - a few lines).  The size of these 
> libraries is not that much, my system only has 30MBs of static libs, 
> compared to the 3GB disc image size.
> I tried to move a binary built on FC5 to a FC4 system and of course it 
> didn't work (openssl version mismatch).  So by removing static libs Fedora 
> will be hurting the little guys (like me).   I also know that some functions 
> (like dlopen()) currently do not work in static mode, but some of my apps 
> don't need this functionality.  I've written my own DNS client, so the 
> gethostaddr() etc functions I don't need.  Does anyone know if it would be 
> possible to use most libraries as static and maybe just use the shared 
> version of dl, or glibc?

I don't know much about C++ compiling, but from a company standpoint,
why can't you publish your software in source form, then do some builds
for your targetted supported OSs, such as Fedora.  If it is in source
form, and uses dynamic linking, then folks that want your software in
other distributions can rebuild it themselves?  Better yet, pair up with
a Fedora Extras maintainer so that your source gets built by the
maintainer and pushed into Extras for all to use.  Upstream doe source,
distros compile it.

-- 
Jesse Keating RHCE      (geek.j2solutions.net)
Fedora Legacy Team      (www.fedoralegacy.org)
GPG Public Key          (geek.j2solutions.net/jkeating.j2solutions.pub)
 
Was I helpful?  Let others know:
 http://svcs.affero.net/rm.php?r=jkeating




More information about the fedora-devel-list mailing list