enferex/GOAT-Plugs

Using munger fails

romanianstrife opened this issue · 1 comments

cc1: error: cannot load plugin ./GOAT-Plugs/munger/munger.so
./GOAT-Plugs/munger/munger.so: undefined symbol: _ZN8opt_pass4gateEv
GNU C17 (Ubuntu 8.3.0-6ubuntu1~18.04.1) version 8.3.0 (x86_64-linux-gnu)
compiled by GNU C version 8.3.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version isl-0.19-GMP

I compiled munger with gcc-4.9 and tried to use with gcc-8

Is this possible? Any workarounds?

The error message you reported above is from gcc-8, which I have never ported these plugins to. munger was last updated for building with gcc-4.9. You mentioned that

I compiled munger with gcc-4.9 and tried to use with gcc-8

You should run these plugins with the same version of the compiler that were used to build the plugins.

What I am seeing is that the opt_pass_gate routine has not been mangled, and the linker is expecting a mangled version. The provided make.inc does use a c++ compiler when building munger. I'm not sure what gcc-8 expects, and the build dependencies might have changed between 4.9 and 8.