ghdl / docker

Scripts to build and use docker images including GHDL
40 stars 10 forks source link

Add local CC symlink to GHDL/GCC installation in ghdl:run images #43

Closed abyszuk closed 2 years ago

abyszuk commented 2 years ago

There is some strange dependency between GCC version used for building code and GCC version used for linking if this code is built with code coverage enabled. Looks like the safest bet is to use the same GCC version for both, but GCC version used by GHDL (installed in /usr/local/) had a missing cc -> gcc symlink. This caused /usr/local/bin/gcc to be called by GHDL for compilation, but /usr/bin/cc (a symlink to /usr/bin/gcc) for linking, thus breaking code coverage.

Fixes #42

abyszuk commented 2 years ago

I think this can be put on hold until we get feedback from https://github.com/ghdl/ghdl/issues/1882

abyszuk commented 2 years ago

OK, so the feedback is that we should indeed fix Docker images only. I've updated the PR to properly address this issue. It looks like the root of the problem starts in ghdl:run images.

umarcor commented 2 years ago

@abyszuk, I'm sorry about the delay on getting to this last month.

According to your findings, gcc is properly found and used. The problem is finding cc. Hence, I specified CC=gcc to partially roll-back the modification that produced this issue: https://github.com/ghdl/ghdl/issues/1882#issuecomment-932728616. I find that to be less invasive than creating a symlink. Nonetheless, I am open to your opinion on this.

abyszuk commented 2 years ago

Hi, thanks for looking into this!

Nah, I think your solution is equally good, and also consistent with what's done for Windows tests. You can discard this PR, I don't mind :-)