вернул определение статических переменных в хедер и попробовал собрать через хкод. я и не удивился особо.
версия gcc 4.2.1 (i686-apple-darwin10-gcc-4.2.1).
Build QD2CharRenamer of project QD2CharRenamer with configuration Debug
Ld build/QD2CharRenamer.build/Debug/QD2CharRenamer.build/Objects-normal/i386/QD2CharRenamer normal i386
cd /Developer/Projects/Qt/QD2CharRenamer
setenv MACOSX_DEPLOYMENT_TARGET 10.4
/Developer/usr/bin/g++-4.2 -arch i386 -isysroot /Developer/SDKs/MacOSX10.5.sdk -L/Developer/Projects/Qt/QD2CharRenamer/build/Debug -L/Developer/Qt-4.7.2/lib -L/Developer/Qt-4.7.2/lib -F/Developer/Projects/Qt/QD2CharRenamer/build/Debug -filelist /Developer/Projects/Qt/QD2CharRenamer/build/QD2CharRenamer.build/Debug/QD2CharRenamer.build/Objects-normal/i386/QD2CharRenamer.LinkFileList -mmacosx-version-min=10.4 -headerpad_max_install_names -L/Developer/Qt-4.7.2/lib -F/Developer/Qt-4.7.2/lib -L/Developer/Qt-4.7.2/lib -F/Developer/Qt-4.7.2/lib -framework QtGui -framework QtCore -o /Developer/Projects/Qt/QD2CharRenamer/build/QD2CharRenamer.build/Debug/QD2CharRenamer.build/Objects-normal/i386/QD2CharRenamer
Undefined symbols:
"QD2CharRenamer::newNameOffset", referenced from:
__ZN14QD2CharRenamer13newNameOffsetE$non_lazy_ptr in qd2charrenamer.o
(maybe you meant: __ZN14QD2CharRenamer13newNameOffsetE$non_lazy_ptr)
"QD2CharRenamer::oldNameOffset", referenced from:
__ZN14QD2CharRenamer13oldNameOffsetE$non_lazy_ptr in qd2charrenamer.o
(maybe you meant: __ZN14QD2CharRenamer13oldNameOffsetE$non_lazy_ptr)
ld: symbol(s) not found
collect2: ld returned 1 exit status
Ld build/QD2CharRenamer.build/Debug/QD2CharRenamer.build/Objects-normal/ppc/QD2CharRenamer normal ppc
cd /Developer/Projects/Qt/QD2CharRenamer
setenv MACOSX_DEPLOYMENT_TARGET 10.4
/Developer/usr/bin/g++-4.2 -arch ppc -isysroot /Developer/SDKs/MacOSX10.5.sdk -L/Developer/Projects/Qt/QD2CharRenamer/build/Debug -L/Developer/Qt-4.7.2/lib -L/Developer/Qt-4.7.2/lib -F/Developer/Projects/Qt/QD2CharRenamer/build/Debug -filelist /Developer/Projects/Qt/QD2CharRenamer/build/QD2CharRenamer.build/Debug/QD2CharRenamer.build/Objects-normal/ppc/QD2CharRenamer.LinkFileList -mmacosx-version-min=10.4 -headerpad_max_install_names -L/Developer/Qt-4.7.2/lib -F/Developer/Qt-4.7.2/lib -L/Developer/Qt-4.7.2/lib -F/Developer/Qt-4.7.2/lib -framework QtGui -framework QtCore -o /Developer/Projects/Qt/QD2CharRenamer/build/QD2CharRenamer.build/Debug/QD2CharRenamer.build/Objects-normal/ppc/QD2CharRenamer
Undefined symbols:
"QD2CharRenamer::newNameOffset", referenced from:
__ZN14QD2CharRenamer13newNameOffsetE$non_lazy_ptr in qd2charrenamer.o
(maybe you meant: __ZN14QD2CharRenamer13newNameOffsetE$non_lazy_ptr)
"QD2CharRenamer::oldNameOffset", referenced from:
__ZN14QD2CharRenamer13oldNameOffsetE$non_lazy_ptr in qd2charrenamer.o
(maybe you meant: __ZN14QD2CharRenamer13oldNameOffsetE$non_lazy_ptr)
ld: symbol(s) not found
collect2: ld returned 1 exit status