quickfix 1.13.3 (latest), Linux
I have encountered problems trying to compile both 32- and 64-bit versions of the code.
UnitTest++ included with the library has these lines in its makefile:
CXXFLAGS ?= -g -Wall -W -Winline -ansi
LDFLAGS ?=
meaning it will pick up the compiler and the linker flags from the environment if provided or will use the ones in its own makefile if not.
quickfix's main makefile (or makefile.in used to produce it) does not export variables (.NOEXPORT:) citing their big number as the reason whereas makefile's in subdirectories have the compiler and the linker flags hard-coded by ./configure. The end result is that switches like -m32 or -m64 do not get passed to UnitTest++ and so linking fails unless the settings happen to coincide.
Adding 'export' to the two variables in the main makefile.in
...
export CXXFLAGS = @CXXFLAGS@
...
export LDFLAGS = @LDFLAGS@
...
fixes the problem but hopefully something better and permanent may be made available.
Compiling UnitTest++ as part of quickfix with a different set of compiler and linker switches requires prior 'make clean'. Code in other subdirectories is recompiled automatically in this case.