I've run into a linker error when building with IBM XLC++
in a directory whose name contains a comma (see below).
The problem is that we're passing the absolute pathname
of $BUILDDIR/lib to the linker via the -Wl compiler driver
option. This option uses the comma to separate individual
arguments from one another. I don't know if it's worth
trying to deal with this or not but I thought I'd mention
it in case someone else runs into the same problem or in
case Andrew has an idea for how to fix it.
Martin
$ nice gmake BUILDMODE=shared,debug
BUILDDIR=/build/sebor/tmp/stdcxx-vacpp-7.0-shared,debug
GNUmakefile:289: "CONFIG not specified, using vacpp.config"
expr: 0402-050 Syntax error.
creating BUILDDIR=/build/sebor/tmp/stdcxx-vacpp-7.0-shared,debug
generating /build/sebor/tmp/stdcxx-vacpp-7.0-shared,debug/makefile.in
from /amd/devco/sebor/stdcxx/etc/config/vacpp.config
expr: 0402-050 Syntax error.
gmake[1]: Entering directory
`/build/sebor/tmp/stdcxx-vacpp-7.0-shared,debug'
gmake[2]: Entering directory
`/build/sebor/tmp/stdcxx-vacpp-7.0-shared,debug/include'
gmake config
gmake[3]: Entering directory
`/build/sebor/tmp/stdcxx-vacpp-7.0-shared,debug/include'
configuring for xlCcore- on aix-5.3
checking if the compiler is sane ok (invoked with xlCcore)
checking if the linker is sane ok (invoked with xlCcore)
...
gmake[2]: Entering directory
`/build/sebor/tmp/stdcxx-vacpp-7.0-shared,debug/examples'
xlCcore -c -I/amd/devco/sebor/stdcxx/include/ansi -D_RWSTDDEBUG
-D_RWSTD_USE_CONFIG -I/amd/devco/sebor/stdcxx/include
-I/build/sebor/tmp/stdcxx-vacpp-7.0-shared,debug/include
-I/amd/devco/sebor/stdcxx/examples/include -g
-qtemplateregistry=accumulate.ti
/amd/devco/sebor/stdcxx/examples/manual/accumulate.cpp
xlCcore accumulate.o -o accumulate
-I/amd/devco/sebor/stdcxx/include/ansi -D_RWSTDDEBUG
-D_RWSTD_USE_CONFIG -liconv -brtl
-L/build/sebor/tmp/stdcxx-vacpp-7.0-shared,debug/lib -lstd
-Wl,-bsvr4,-R/build/sebor/tmp/stdcxx-vacpp-7.0-shared,debug/lib -lm
-qtemplateregistry=accumulate.ti
ld: 0706-005 Cannot find or open file: debug/lib
ld:open(): A file or directory in the path name does not exist.
gmake[2]: *** [accumulate] Error 255
gmake[2]: Leaving directory
`/build/sebor/tmp/stdcxx-vacpp-7.0-shared,debug/examples'
gmake[1]: [examples] Error 2 (ignored)