Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

firtool GLIBC issue #1690

Open
3 tasks done
jaisw7 opened this issue Jan 27, 2024 · 0 comments
Open
3 tasks done

firtool GLIBC issue #1690

jaisw7 opened this issue Jan 27, 2024 · 0 comments
Labels
bug Something isn't working

Comments

@jaisw7
Copy link

jaisw7 commented Jan 27, 2024

Background Work

FireSim Version and Hash

1.18.0-0-g535dcdc29

OS Setup

Linux ip-192-168-1-182.ec2.internal 3.10.0-1160.81.1.el7.x86_64 #1 SMP Fri Dec 16 17:29:43 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
LSB Version:    :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description:    CentOS Linux release 7.9.2009 (Core)
Release:        7.9.2009
Codename:       Core

Other Setup

Followed the guide on page to create an EC2 instance with FPGA Developer AMI - 1.12.2-40257ab5-6688-4c95-97d1-e251a40fd1fc FPGA.

Current Behavior

cd ~/firesim/target-design/chipyard/sims/xcelium
make CONFIG=TutorialSha3BlackBoxConfig
firtool \
        --format=fir \
        --export-module-hierarchy \
        --verify-each=true \
        --warn-on-unprocessed-annotations \
        --disable-annotation-classless \
        --disable-annotation-unknown \
        --mlir-timing \
        --lowering-options=emittedLineLength=2048,noAlwaysComb,disallowLocalVariables,verifLabels,locationInfoStyle=wrapInAtSquareBracket \
        --repl-seq-mem \
        --repl-seq-mem-file=/home/centos/firesim/target-design/chipyard/sims/xcelium/generated-src/chipyard.harness.TestHarness.TutorialSha3BlackBoxConfig/chipyard.harness.TestHarness.TutorialSha3BlackBoxConfig.mems.conf \
        --annotation-file=/home/centos/firesim/target-design/chipyard/sims/xcelium/generated-src/chipyard.harness.TestHarness.TutorialSha3BlackBoxConfig/chipyard.harness.TestHarness.TutorialSha3BlackBoxConfig.sfc.anno.json \
        --split-verilog \
        -o /home/centos/firesim/target-design/chipyard/sims/xcelium/generated-src/chipyard.harness.TestHarness.TutorialSha3BlackBoxConfig/gen-collateral \
        /home/centos/firesim/target-design/chipyard/sims/xcelium/generated-src/chipyard.harness.TestHarness.TutorialSha3BlackBoxConfig/chipyard.harness.TestHarness.TutorialSha3BlackBoxConfig.sfc.fir
firtool: /lib64/libc.so.6: version `GLIBC_2.18' not found (required by /home/centos/firesim/.conda-env/riscv-tools/lib/libMLIRSupport.so)
firtool: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by /home/centos/firesim/.conda-env/riscv-tools/lib/libLLVMSupport.so)
firtool: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by /home/centos/firesim/.conda-env/riscv-tools/lib/libLLVMAnalysis.so)
firtool: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by /home/centos/firesim/.conda-env/riscv-tools/lib/libLLVMProfileData.so

I believe circt was included as a sub-module in the recent release. firtool requires higher versions of GLIBC which is not supported on these AMIs.

centos@ip-192-168-1-182:~/firesim$ ldd --version
ldd (GNU libc) 2.17
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.

Two solutions:

  • Bump the version of GLIBC in the AMI
  • Build circt from scratch during firesim installation (which will require building MLIR and LLVM)

Expected Behavior

firtool should function on Amazon-Linux 2 FPGA instances.

Other Information

No response

@jaisw7 jaisw7 added the bug Something isn't working label Jan 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant