Code Monkey home page Code Monkey logo

Comments (25)

dslm4515 avatar dslm4515 commented on June 12, 2024 2

is this issue related to build llvm in llvmtools?

For LLVM 12, I just fine while building. See #12 (comment)

Now moving to chroot steps. I'll report if an issue appeared.

Before you were contributing, i was working on LLVM12 branch...lol, but i was stuck on libcxx of llvmtools (by now, you, and others already fixed that). I thought i'd work on master (llvm11) to have it updated with latest software versions of June 18th 2021.

Hopefully, no GCC dependencies for llvmtools!

from cmlfs.

owl4ce avatar owl4ce commented on June 12, 2024 1

I use GNU Make for LLVM, so mostly never install ninja (and less dependencies) until entering chroot (meson).

Good point. I like ninja for the clean text output... although, make can do that too.

Make is pretty common and less dependencies, i'd likely switch from ninja to make

Right, Ninja can show the total of source code and not showing the enter-close directory like Make.

from cmlfs.

dslm4515 avatar dslm4515 commented on June 12, 2024 1

I use GNU Make for LLVM, so mostly never install ninja (and less dependencies) until entering chroot (meson). I'm prefer Samurai.

May I ask. What packages that requires meson?

Samurai looks good. I do hate how ninja is either built with python or cmake. I may replace ninja with samurai in both CMLFS and MLFS.

For CMLFS, meson is not used. It is built so that a CMLFS system can build packages that use meson as their build system.... I forgot the original reason meson was added to LFS.

from cmlfs.

owl4ce avatar owl4ce commented on June 12, 2024 1

In LFS Appendix, meson is used when building Systemd.

from cmlfs.

dslm4515 avatar dslm4515 commented on June 12, 2024 1

Try this
https://github.com/zlib-ng/zlib-ng

I noticed hasn't been updated for a while. I suppose i'll switch to zlib-ng, just like how i dropped pkg-config for pkgconf

from cmlfs.

dslm4515 avatar dslm4515 commented on June 12, 2024

Added -DLLVM_TABLEGEN=/cgnutools/bin/llvm-tblgen to cmake command. Not sure if this will cause llvm binaries to have GCC dependencies.

So far build has surpassed 220 built targets!

from cmlfs.

andzai1995 avatar andzai1995 commented on June 12, 2024

Added -DLLVM_TABLEGEN=/cgnutools/bin/llvm-tblgen to cmake command. Not sure if this will cause llvm binaries to have GCC dependencies.

So far build has surpassed 220 built targets!

Could you add a file "../files/libunwind-llvm12/compact_unwind_encoding.h" for libunwind in BMLFS repo, because I want to try build llvm 12 and catch errors, too?

from cmlfs.

dslm4515 avatar dslm4515 commented on June 12, 2024

Added -DLLVM_TABLEGEN=/cgnutools/bin/llvm-tblgen to cmake command. Not sure if this will cause llvm binaries to have GCC dependencies.
So far build has surpassed 220 built targets!

Could you add a file "../files/libunwind-llvm12/compact_unwind_encoding.h" for libunwind in BMLFS repo, because I want to try build llvm 12 and catch errors, too?

I actually have llvm12 working for bmlfs. Let me check which branch...

from cmlfs.

dslm4515 avatar dslm4515 commented on June 12, 2024

Ops. I forgot to extract the missing header from libunwind! Sorry. Misread

from cmlfs.

andzai1995 avatar andzai1995 commented on June 12, 2024

There is some code in file build-scripts/llvm12.build:

# Fix missing header for lld, https://bugs.llvm.org/show_bug.cgi?id=49228
mkdir -pv tools/lld/include/mach-o
cp -v ../files/libunwind-llvm12/compact_unwind_encoding.h tools/lld/include/mach-o

When I cloned BMLFS repo, this file is absent.

from cmlfs.

dslm4515 avatar dslm4515 commented on June 12, 2024

There is some code in file build-scripts/llvm12.build:

# Fix missing header for lld, https://bugs.llvm.org/show_bug.cgi?id=49228
mkdir -pv tools/lld/include/mach-o
cp -v ../files/libunwind-llvm12/compact_unwind_encoding.h tools/lld/include/mach-o

When I cloned BMLFS repo, this file is absent.

Sorry. I’ll upload it

from cmlfs.

andzai1995 avatar andzai1995 commented on June 12, 2024

There is some code in file build-scripts/llvm12.build:

# Fix missing header for lld, https://bugs.llvm.org/show_bug.cgi?id=49228
mkdir -pv tools/lld/include/mach-o
cp -v ../files/libunwind-llvm12/compact_unwind_encoding.h tools/lld/include/mach-o

When I cloned BMLFS repo, this file is absent.

Sorry. I’ll upload it

It is the same file like in $LLVMSRC/projects/libunwind/include/mach-o? Or this file is different?

it’s the same

from cmlfs.

dslm4515 avatar dslm4515 commented on June 12, 2024

I’ve uploaded the file to master branch of BMLFS

from cmlfs.

dslm4515 avatar dslm4515 commented on June 12, 2024

Now clang-tblgen is not built....

[1752/3316] Building StmtDataCollectors.inc...
FAILED: tools/clang/include/clang/AST/StmtDataCollectors.inc 
cd /mnt/cmlfs/sources/llvm/build && /mnt/cmlfs/sources/llvm/build/bin/clang-tblgen -gen-clang-data-collectors -I /mnt/cmlfs/sources/llvm/tools/clang/include/clang/AST -I /mnt/cmlfs/sources/llvm/tools/clang/include -I /mnt/cmlfs/sources/llvm/build/tools/clang/include -I /mnt/cmlfs/sources/llvm/build/include -I /mnt/cmlfs/sources/llvm/include /mnt/cmlfs/sources/llvm/tools/clang/include/clang/AST/StmtDataCollectors.td --write-if-changed -o tools/clang/include/clang/AST/StmtDataCollectors.inc -d tools/clang/include/clang/AST/StmtDataCollectors.inc.d
/bin/sh: /mnt/cmlfs/sources/llvm/build/bin/clang-tblgen: No such file or directory
[1753/3316] Building CXX object tools/ver...selistorder.dir/verify-uselistorder.cpp.o
ninja: build stopped: subcommand failed.

from cmlfs.

owl4ce avatar owl4ce commented on June 12, 2024

There is some code in file build-scripts/llvm12.build:

# Fix missing header for lld, https://bugs.llvm.org/show_bug.cgi?id=49228
mkdir -pv tools/lld/include/mach-o
cp -v ../files/libunwind-llvm12/compact_unwind_encoding.h tools/lld/include/mach-o

When I cloned BMLFS repo, this file is absent.

no need

from cmlfs.

dslm4515 avatar dslm4515 commented on June 12, 2024

Now clang-tblgen is not built....

[1752/3316] Building StmtDataCollectors.inc...
FAILED: tools/clang/include/clang/AST/StmtDataCollectors.inc 
cd /mnt/cmlfs/sources/llvm/build && /mnt/cmlfs/sources/llvm/build/bin/clang-tblgen -gen-clang-data-collectors -I /mnt/cmlfs/sources/llvm/tools/clang/include/clang/AST -I /mnt/cmlfs/sources/llvm/tools/clang/include -I /mnt/cmlfs/sources/llvm/build/tools/clang/include -I /mnt/cmlfs/sources/llvm/build/include -I /mnt/cmlfs/sources/llvm/include /mnt/cmlfs/sources/llvm/tools/clang/include/clang/AST/StmtDataCollectors.td --write-if-changed -o tools/clang/include/clang/AST/StmtDataCollectors.inc -d tools/clang/include/clang/AST/StmtDataCollectors.inc.d
/bin/sh: /mnt/cmlfs/sources/llvm/build/bin/clang-tblgen: No such file or directory
[1753/3316] Building CXX object tools/ver...selistorder.dir/verify-uselistorder.cpp.o
ninja: build stopped: subcommand failed.

clang-tblgen is built but cannot execute...due to libraries not loading from llvmtools/lib:

$ LD_LIBRARY_PATH=/llvmtools/lib ldd   build/bin/clang-tblgen 
        /lib/ld-musl-x86_64.so.1 (0x7f75911d9000)
        libexecinfo.so.1 => /llvmtools/lib/libexecinfo.so.1 (0x7f7591038000)
        libc++.so.1 => /llvmtools/lib/libc++.so.1 (0x7f7590f6d000)
        libc++abi.so.1 => /llvmtools/lib/libc++abi.so.1 (0x7f7590f10000)
        libunwind.so.1 => /llvmtools/lib/libunwind.so.1 (0x7f7590efd000)
        libc.so => /lib/ld-musl-x86_64.so.1 (0x7f75911d9000)

perhaps, I should have added LD_LIBRARY_PATH=/llvmtools/lib:/cgnutools/lib:/usr/lib:/lib when compiling? Maybe llvm-tblgen would have been built too?

from cmlfs.

owl4ce avatar owl4ce commented on June 12, 2024

is this issue related to build llvm in llvmtools?

from cmlfs.

owl4ce avatar owl4ce commented on June 12, 2024

is this issue related to build llvm in llvmtools?

For LLVM 12, I just fine while building. See #12 (comment)

Now moving to chroot steps. I'll report if an issue appeared.

from cmlfs.

dslm4515 avatar dslm4515 commented on June 12, 2024

is this issue related to build llvm in llvmtools?

yes for llvm11 (master). First build fails after 4mins for llvm-tblgen not built or unable to execute. So i reconfigured with using llvm-tblgen from cgnutools. Build progresses for 58mins then fails on unable to execute built clang-tblgen

from cmlfs.

owl4ce avatar owl4ce commented on June 12, 2024

I use GNU Make for LLVM, so mostly never install ninja (and less dependencies) until entering chroot (meson). I prefer Samurai.

May I ask. What packages that requires meson?

from cmlfs.

dslm4515 avatar dslm4515 commented on June 12, 2024

I use GNU Make for LLVM, so mostly never install ninja (and less dependencies) until entering chroot (meson).

Good point. I like ninja for the clean text output... although, make can do that too.

Make is pretty common and less dependencies, i'd likely switch from ninja to make

from cmlfs.

owl4ce avatar owl4ce commented on June 12, 2024

For CMLFS, meson is not used. It is built so that a CMLFS system can build packages that use meson as their build system.... I forgot the original reason meson was added to LFS.

I think so!

from cmlfs.

owl4ce avatar owl4ce commented on June 12, 2024

Try this, and don't forget to enable --zlib-compat.
https://github.com/zlib-ng/zlib-ng

from cmlfs.

owl4ce avatar owl4ce commented on June 12, 2024

And maybe pigz instead of gzip, but pigz requires zlib (zlib-ng works too). Cons: pigz doesn't have wrapper script such as for grep (zgrep). Can be installed for both, gzip just for wrapper script if needed 😄 lol

from cmlfs.

dslm4515 avatar dslm4515 commented on June 12, 2024

I'm closing this as I don't think anyone will want to build LLVM-11 for CMLFS.

from cmlfs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.