From: Thejakiran katikala <katikalathejakiran@elear.solutions>
To: musl@lists.openwall.com
Cc: ashish <ashish@elear.solutions>, manav <manav@elear.solutions>
Subject: [musl] How to deliver a portable shared object using musl
Date: Tue, 18 Jan 2022 15:28:54 +0530 [thread overview]
Message-ID: <649a02c95992ea76251370ceeaa3a1cb@elear.solutions> (raw)
[-- Attachment #1: Type: text/plain, Size: 1386 bytes --]
Hi Team,
I know that using musl-libc I can deliver a portable executable.
Extending this concept, I am trying to deliver a portable shared object
across various linux distros and architectures. I essentially want to
reduce the number of combinations I currently have to deal with, e.g.:
Mylib.so linked against glibC across ARM and x86 architectures
Mylib.so linked against musl-libc across ARM and x86 architectures
Mylib.so linked against uClibC across ARM and x86 architectures
To reduce the number of deliverables, I wanted to squash musl-libC into
Mylib.so and suppress all the conflicting symbols with glibc/uClibC,
etc..
So conceptually MyLib.so carries a copy of musl-libC such that I don't
have any external dependencies on the system where a 3rd party developer
could write his application on top of my library.
For e.g. he could create an executable by compiling and linking on
Ubuntu x64_64: main.c + MyLib.so.x86_64 + glibC.so.x86_64
Is the above possible? Can MyLib.so.x86_64 with musl-libc squashed into
it with all symbols suppressed to avoid linker conflicts, work in a
program that also links to glibC? Can musl-libc co-exist with glibC OR
would there be some run-time conflicts around threads/malloc, etc.?
Is there anyway to achieve the above? Appreciate your insights.
Note: i would like to be Cc'd to receive back your replies
Thanks,
-Theja
[-- Attachment #2: Type: text/html, Size: 1849 bytes --]
next reply other threads:[~2022-01-18 11:49 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-18 9:58 Thejakiran katikala [this message]
2022-01-18 15:11 ` Rich Felker
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=649a02c95992ea76251370ceeaa3a1cb@elear.solutions \
--to=katikalathejakiran@elear.solutions \
--cc=ashish@elear.solutions \
--cc=manav@elear.solutions \
--cc=musl@lists.openwall.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/musl/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).