我正在尝试 Nand2Tetris 课程,并且已经到了想要使用硬件模拟器运行和测试 hdl 文件的地步。我下载了软件套装,按照以下说明运行:
# I had a dangling symlink issue at the beginning
# and the full path was apparently the way to solve it
chmod +x ~/.../nand2tetris/tools/HardwareSimulator.sh
我尝试使用以下命令运行脚本:
./HardwareSimulator.sh
并收到以下错误:
Exception in thread "main" java.lang.UnsatisfiedLinkError: Can't load library: /usr/lib/jvm/java-17-openjdk-amd64/lib/libawt_xawt.so
at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2393)
at java.base/java.lang.Runtime.load0(Runtime.java:755)
at java.base/java.lang.System.load(System.java:1953)
at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:384)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:228)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:170)
at java.base/jdk.internal.loader.NativeLibraries.findFromPaths(NativeLibraries.java:311)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:281)
at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2398)
at java.base/java.lang.Runtime.loadLibrary0(Runtime.java:818)
at java.base/java.lang.System.loadLibrary(System.java:1989)
at java.desktop/java.awt.Toolkit$2.run(Toolkit.java:1392)
at java.desktop/java.awt.Toolkit$2.run(Toolkit.java:1390)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
at java.desktop/java.awt.Toolkit.loadLibraries(Toolkit.java:1389)
at java.desktop/java.awt.Toolkit.initStatic(Toolkit.java:1427)
at java.desktop/java.awt.Toolkit.<clinit>(Toolkit.java:1401)
at java.desktop/java.awt.Component.<clinit>(Component.java:624)
at HardwareSimulatorMain.main(Unknown Source)
我不明白似乎是什么问题以及为什么它(Unknown Source)
在最后陈述。
在网上寻找解决方案时,我看到这篇文章中的 openjdk 可能有问题。我也找到了这篇文章,但它对我也没有多大帮助。
我是一个相对较新的 Linux 用户,目前在 pop OS 上。
我真的很想得到一些帮助,因为我不确定我应该怎么做才能解决问题以及如何继续课程
提前致谢。