Guten Tag, ich wollte GHDL nuzen um mir etwas VHDL beizubringen. Leider bekomme ich folgende Fehlermeldung: > C:\Users\tims\Desktop\half adder>ghdl -a ha.vhdl > C:\eda\ghdl\bin\ghdl.exe: installation problem: gcc not found Im Internet wurde ich nicht fündig. Kann mir jemand helfen und sagen was da schief läuft? Beste Grüße Tim.
GHDL uebersetzt deinen VHDL Code in C/C++ Code, welcher dann kompiliert und ausgefuehrt wird. Ohne einen entsprechenden Compiler (in diesem Fall der GCC) funktioniert das nicht. Ich verwende GHDL nur unter Linux, da ist in den grossen Distributionen GHDL enthalten. Ebenfalls gute Erfahrungen habe ich mit dem Docker Image ghdl/ext:vunit gemacht. Da ist noch VUnit dabei, was ich ziemlich praktisch finde. :-)
ghdl gibt es in zwei "Geschmacksrichtungen": einer (interpretierten) "mcode"-Version und einer Version, die (mit C/C++-Code als Zwischenschritt) ein Binärprogramm erzeugt. Letztere braucht den entsprechenden Compiler, die mcode-Version (die auch so deutlich schneller ist, als die "Lite"-Versionen von modelsim) kommt ohne aus.
Der Vollstaendigkeit halber mal noch ein Verweis auf: https://ghdl.readthedocs.io/en/latest/building/Building.html
Schau mal nach, ob Du eine komplette GCC-Installation hast. Ich habe das hier unter Linux aber die Verzeichnisstruktur unter Windows sollte ähnlich aussehen:
1 | $ ll /usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/ |
2 | insgesamt 166496 |
3 | drwxr-xr-x 4 root root 4096 23. Apr 12:12 32 |
4 | drwxr-xr-x 2 root root 36864 23. Apr 12:12 adainclude |
5 | drwxr-xr-x 2 root root 20480 23. Apr 12:12 adalib |
6 | -rwxr-xr-x 1 root root 98824 17. Apr 10:12 buildid |
7 | -rwxr-xr-x 1 root root 26001056 17. Apr 10:12 cc1 |
8 | -rwxr-xr-x 1 root root 27450560 17. Apr 10:12 cc1plus |
9 | -rwxr-xr-x 1 root root 668824 17. Apr 10:12 cgo |
10 | -rwxr-xr-x 1 root root 601824 17. Apr 10:12 collect2 |
11 | -rw-r--r-- 1 root root 2616 17. Apr 10:12 crtbegin.o |
12 | -rw-r--r-- 1 root root 2920 17. Apr 10:12 crtbeginS.o |
13 | -rw-r--r-- 1 root root 3136 17. Apr 10:12 crtbeginT.o |
14 | -rw-r--r-- 1 root root 1336 17. Apr 10:12 crtend.o |
15 | -rw-r--r-- 1 root root 1336 17. Apr 10:12 crtendS.o |
16 | -rw-r--r-- 1 root root 3920 17. Apr 10:12 crtfastmath.o |
17 | -rw-r--r-- 1 root root 3480 17. Apr 10:12 crtprec32.o |
18 | -rw-r--r-- 1 root root 3488 17. Apr 10:12 crtprec64.o |
19 | -rw-r--r-- 1 root root 3480 17. Apr 10:12 crtprec80.o |
20 | -rwxr-xr-x 1 root root 27588048 20. Apr 13:20 ghdl1 |
21 | -rwxr-xr-x 1 root root 30624960 17. Apr 10:12 gnat1 |
22 | -rwxr-xr-x 1 root root 27290944 17. Apr 10:12 go1 |
23 | drwxr-xr-x 3 root root 4096 23. Apr 12:12 include |
24 | drwxr-xr-x 2 root root 4096 23. Apr 12:12 include-fixed |
25 | drwxr-xr-x 3 root root 4096 23. Apr 12:12 install-tools |
26 | -rw-r--r-- 1 root root 3087102 17. Apr 10:12 libgcc.a |
27 | ... |
Die Dateien cc1, cc1plus, ghdl1, usw. sind die eigentlichen Compiler. GHDL ist übrigens kein Precompiler der C/C++ generiert, sondern ein Compiler-Frontend für GCC.
P.S. schrieb: > Die Dateien cc1, cc1plus, ghdl1, usw. sind die eigentlichen Compiler. > GHDL ist übrigens kein Precompiler der C/C++ generiert, sondern ein > Compiler-Frontend für GCC. Ah, merci. Dann ist das was ich oben schrieb Quatsch. Das erklaert auch warum Code Coverage mit gcov funktioniert.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.