← Back to team overview

cuneiform team mailing list archive

Build issues with binutil 2.19

 

The problem is that there are different definitions of a variable with the same
name. ld from binutils 2.19 will fail if there are different definitions with
different sizes. Here are the source files and the collision with different
libraries.

rcm.c:
- libevn32.so: evfulln, segment_pool, lpool
- librbal.so: nIncline
- librcutp.so: ForRaster3, MemForCutPointsTwo, MemForCutPoints
- librling.so: alphabet
- libdif.so: nIncline

dm2.c:
- librbal.so: broken_ii

Try `cmake -DCMAKE_EXE_LINKER_FLAGS="-Wl,--warn-common -Wl,--warn-constructors -Wl,--warn-multiple-gp -Wl,--warn-shared-textrel -Wl,--warn-unresolved-symbols"`
To get more informations on current problems.

There are two ways to prevent such problems:
- Rename variable/function which create such collision
- only export needed variables/functions/classes/....

The first one is a little to hard, but the latter one should be easy to do since
cuneiform was a windows program and has nearly everything which is needed inside
globus.h. Some parts of the source must be changed because decissions made for
the build system, but nothing too dramatic.

Best regards,
	Sven Eckelmann



Follow ups