From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.3 required=5.0 tests=MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 6028 invoked from network); 31 Mar 2021 16:16:08 -0000 Received: from mother.openwall.net (195.42.179.200) by inbox.vuxu.org with ESMTPUTF8; 31 Mar 2021 16:16:08 -0000 Received: (qmail 7268 invoked by uid 550); 31 Mar 2021 16:16:05 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Reply-To: musl@lists.openwall.com Received: (qmail 7250 invoked from network); 31 Mar 2021 16:16:05 -0000 Date: Wed, 31 Mar 2021 12:15:53 -0400 From: Rich Felker To: Thierry Gayet Cc: musl@lists.openwall.com Message-ID: <20210331161552.GG25400@brightrain.aerifal.cx> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Subject: Re: [musl] missing symbol from musl libc On Wed, Mar 31, 2021 at 05:36:38PM +0200, Thierry Gayet wrote: > Hi, > > I use musl within alpine. > > in this environment I have an open source package based on Chromium (in C / > C ++) which needs to be recompiled. > > The compilation step goes well but at the link step, the linker cannot find > certain symbols from the libc: > hread_getattr_np@GLIBC_2.2.5' > /usr/lib/gcc/x86_64-alpine-linux-musl/10.2.1/../../../../x86_64-alpine-linux-musl/bin/ld: > .../third_party/cef/cef_binary_75.0.6+g90ecd35+chromium-75.0.3770.80_linux64/Release/libcef.so: > undefined reference to `snd_pcm_sw_params_set_avail_min@ALSA_0.9' > /usr/lib/gcc/x86_64-alpine-linux-musl/10.2.1/../../../../x86_64-alpine-linux-musl/bin/ld: > .../third_party/cef/cef_binary_75.0.6+g90ecd35+chromium-75.0.3770.80_linux64/Release/libcef.so: > undefined reference to `mbsrtowcs@GLIBC_2.2.5' > ... I'm not 100% sure because everything around the Chromium build process is so obfuscated and contrary to reasonable build practices, but it looks like you just have a binary library someone shipped that was linked against glibc, and that's using glibc symbol versioning. For both of those reasons it's very unlikely to be suitable to link with musl. If you can build it from source, for a musl-based target, I would expect the problems to go away. Rich