ibex-team / ibex-lib

IBEX is a C++ library for constraint processing over real numbers.
http://ibex-team.github.io/ibex-lib/
GNU Lesser General Public License v3.0
67 stars 51 forks source link

Error linking ESBMC w/ old cpp frontend and IBEX: `multiple definition of slow` #531

Open fbrausse opened 1 year ago

fbrausse commented 1 year ago

See also https://github.com/esbmc/esbmc/issues/1110.

The error is

/usr/lib/gcc/x86_64-pc-linux-gnu/12/../../../../x86_64-pc-linux-gnu/bin/ld: /home/kane/scorch/esbmc-sysroot/tmp/ibex-lib/build/prefix/lib/ibex/3rd/libultim.a(usncs.o): in function `slow':
usncs.c:(.text+0x0): multiple definition of `slow'; src/ansi-c/cpp/libansiccpp.a(cpp.c.o):/home/kane/scorch/esbmc/src/ansi-c/cpp/cpp.c:97: first defined here

I consider this an IBEX issue (as well as one of ESBMC), since the symbol slow is not prefixed by (either) package's default prefix.