mailing list of musl libc
 help / color / mirror / code / Atom feed
From: Chunlin Zhu <simon_0214@hotmail.com>
To: "musl@lists.openwall.com" <musl@lists.openwall.com>
Subject: Re: [musl] Failed to build musl 1.2.2 by using clang cross compiler
Date: Sat, 30 Oct 2021 03:46:12 +0000	[thread overview]
Message-ID: <SY4P282MB351773CDD8AF58D5460A013FE1889@SY4P282MB3517.AUSP282.PROD.OUTLOOK.COM> (raw)
In-Reply-To: <SY4P282MB351793A2953D7F4A4292E015E1839@SY4P282MB3517.AUSP282.PROD.OUTLOOK.COM>


[-- Attachment #1.1: Type: text/plain, Size: 3180 bytes --]

Hello,

On my computer I have built and install the llvm toolchain from the source code by using the below configuration, the llvm lib is installed in the /usr/local/lib folder.
cmake -S llvm -B build -G "Unix Makefiles" -DLLVM_ENABLE_PROJECTS="clang;clang-tools-extra;libcxx;libcxxabi;compiler-rt;lld" -DCMAKE_BUILD_TYPE=Release -DLLVM_TARGETS_TO_BUILD="ARM;X86;AArch64"

And I am trying to build musl libc 1.2.2 for aarch64 by using llvm/clang, and I use the below configure:
./configure CC=clang --target=aarch64 CFLAGS="-v --target=aarch64 --rtlib=compiler-rt" AR=/usr/local/bin/llvm-ar RANLIB=/usr/local/bin/llvm-ranlib LIBCC=-lcompiler_rt --syslibdir=/usr/local/lib

It report the error as below:
[cid:ef74a00d-14e8-4a0a-b304-d1d3f4cb73f7]

And I find the compile phase is OK, the problem occurs during the link phase, I don't understand why finally gcc is invoked.
[cid:904980bd-5393-439f-b7a6-6735617f6c5b]

By the way, the below configure works on my computer:

./configure CC=clang

make -j4


Best Regards,
Simo
________________________________
发件人: Zhu Chunlin <simon_0214@hotmail.com>
发送时间: 2021年10月25日 21:26
收件人: musl@lists.openwall.com <musl@lists.openwall.com>
抄送: nullplan@gmx.net <nullplan@gmx.net>
主题: 回复: [musl] Failed to build musl 1.2.2 by using clang cross compiler

Hello Jeff,

Thanks! But when I update the config as you suggest:

AR=/usr/local/bin/llvm-ar \
RANLIB=/usr/local/bin/llvm-ranlib \
CC=/usr/local/bin/clang \
CFLAGS="--rtlib=compiler-rt --target=aarch64" \
ASFLAGS="-Wa,--noexecstack" \
LDFLAGS="-Wl,-fuse-ld=/usr/local/bin/ld.lld --rtlib=compiler-rt --target=aarch64" \
LIBCC=-lcompiler_rt \
./configure --target=aarch64 \
&& make

It still reports the error as below:
[cid:919d9698-56e2-49d2-85c5-8b12ac33e65f]

Another question, if I want to use LLVM tool chain instead of GCC, how should I config? Acutally I don't understand why there is gcc error, because I have specify to use clang and ld.lld.

Thanks,
Simon
________________________________
发件人: Jeffrey Walton <noloader@gmail.com>
发送时间: 2021年10月25日 16:44
收件人: musl@lists.openwall.com <musl@lists.openwall.com>
抄送: nullplan@gmx.net <nullplan@gmx.net>
主题: Re: [musl] Failed to build musl 1.2.2 by using clang cross compiler



On Mon, Oct 25, 2021 at 1:04 AM Zhu Chunlin <simon_0214@hotmail.com<mailto:simon_0214@hotmail.com>> wrote:
Hello Markus,

Thanks!

AR=/usr/local/bin/llvm-ar \
RANLIB=/usr/local/bin/llvm-ranlib \
CC=/usr/local/bin/clang \
CFLAGS="-fuse-ld=/usr/local/bin/ld.lld --rtlib=compiler-rt --target=aarch64" \
LIBCC=-lcompiler_rt \
./configure --target=aarch64 \
&& make

But when I use the above config, it reports the below error, but I don't understand why there are gcc error, I have explict specify to use clang and ld.lld
[cid:17cb69be492cb971f161]

-fuse-ld=/usr/local/bin/ld.lld is a LDFLAG. Since you are using GCC to drive link, set:

    LDFLAGS = "-Wl,-fuse-ld=/usr/local/bin/ld.lld "
--rtlib=compiler-rt and --target=aarch64may need to go into LDFLAGS, too.

--noexecstack is a ASFLAG. Use:

    ASFLAGS = "-Wa,--noexecstack"

Jeff

[-- Attachment #1.2: Type: text/html, Size: 11345 bytes --]

[-- Attachment #2: image.png --]
[-- Type: image/png, Size: 44398 bytes --]

[-- Attachment #3: image.png --]
[-- Type: image/png, Size: 15169 bytes --]

[-- Attachment #4: image.png --]
[-- Type: image/png, Size: 15169 bytes --]

[-- Attachment #5: image.png --]
[-- Type: image/png, Size: 236690 bytes --]

  reply	other threads:[~2021-10-30  3:46 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-24  3:34 Zhu Chunlin
2021-10-24 14:22 ` Markus Wichmann
2021-10-25  5:03   ` 回复: " Zhu Chunlin
2021-10-25  8:44     ` Jeffrey Walton
2021-10-25 13:26       ` 回复: " Zhu Chunlin
2021-10-30  3:46         ` Chunlin Zhu [this message]
2021-10-30  4:25           ` Jeffrey Walton
2021-10-30 10:53             ` Chunlin Zhu

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=SY4P282MB351773CDD8AF58D5460A013FE1889@SY4P282MB3517.AUSP282.PROD.OUTLOOK.COM \
    --to=simon_0214@hotmail.com \
    --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).