I have played a bit with the scriptbindings.cpp with GCC 4.1 on Fedora development system and I have found that with the following patch I can compile the file. Couldn't be something wrong on the excluded lines? The problem with non-existent Push appears on line 337, so I have tried to exclude this line and some following and this is the result.
--- scriptbindings.cpp.orig 2006-08-06 12:56:11.000000000 +0200
+++ scriptbindings.cpp 2006-08-06 13:01:39.000000000 +0200
@@ -334,6 +334,7 @@
func(&CompileOptionsBase::SetLibDirs, "SetLibDirs").
func(&CompileOptionsBase::SetCommandsBeforeBuild, "SetCommandsBeforeBuild").
func(&CompileOptionsBase::SetCommandsAfterBuild, "SetCommandsAfterBuild").
+#if 0
func(&CompileOptionsBase::GetLinkerOptions, "GetLinkerOptions").
func(&CompileOptionsBase::GetLinkLibs, "GetLinkLibs").
func(&CompileOptionsBase::GetCompilerOptions, "GetCompilerOptions").
@@ -342,6 +343,7 @@
func(&CompileOptionsBase::GetLibDirs, "GetLibDirs").
func(&CompileOptionsBase::GetCommandsBeforeBuild, "GetCommandsBeforeBuild").
func(&CompileOptionsBase::GetCommandsAfterBuild, "GetCommandsAfterBuild").
+#endif
func(&CompileOptionsBase::GetModified, "GetModified").
func(&CompileOptionsBase::SetModified, "SetModified").
func(&CompileOptionsBase::AddLinkerOption, "AddLinkerOption").