error with projects alignedtypes and reduction strange errors

/ncs # make -C projects/alignedTypes/
make: Entering directory /root/ncs/projects/alignedTypes' alignedTypes.cu: In function ‘void runTest(int)’: alignedTypes.cu:220: error: ‘testKernel1’ was not declared in this scope make: *** [obj/release/alignedTypes.cu.o] Error 255 make: Leaving directory /root/ncs/projects/alignedTypes’

same for reduction

/ncs # make -C projects/reduction/
make: Entering directory /root/ncs/projects/reduction' reduction_kernel.cu: In function ‘void reduce_sm10(int, int, int, int, T*, T*)’: reduction_kernel.cu:335: error: ‘reduce0_sm10’ was not declared in this scope reduction_kernel.cu:338: error: ‘reduce1_sm10’ was not declared in this scope reduction_kernel.cu:341: error: ‘reduce2_sm10’ was not declared in this scope reduction_kernel.cu:344: error: ‘reduce3_sm10’ was not declared in this scope reduction_kernel.cu:347: error: ‘reduce4_sm10’ was not declared in this scope make: *** [obj/release/reduction_kernel_sm10.cu.o] Error 255 make: Leaving directory /root/ncs/projects/reduction’

my system : linux 11.1 32bit
cuda : 2.1

actually i dont uderstand the whole code
but they diclare
a template gloabl void Testkernel(…)

then they make an other template and try to use testKernel…

template void runTest(int packedElementSize){
const int totalMemSizeAligned = iAlignDown(MEM_SIZE, sizeof(TData));
const int numElements = iDivDown(MEM_SIZE, sizeof(TData));

//Clean output buffer before current test
CUDA_SAFE_CALL( cudaMemset(d_odata, 0, MEM_SIZE) );
//Run test
CUDA_SAFE_CALL( cudaThreadSynchronize() );
CUT_SAFE_CALL( cutResetTimer(hTimer) );
CUT_SAFE_CALL( cutStartTimer(hTimer) );

int i=0;
for( i = 0; i < NUM_ITERATIONS; i++){

    testKernel<<<64, 256>>>(                                                                        <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< what happens here? ???  this is where the error comes from 
        (TData *)d_odata,
        (TData *)d_idata,
        numElements
    );
    CUT_CHECK_ERROR("testKernel() execution failed\n");
}
CUDA_SAFE_CALL( cudaThreadSynchronize() );
CUT_SAFE_CALL( cutStopTimer(hTimer) );
double gpuTime = cutGetTimerValue(hTimer) / NUM_ITERATIONS;
printf(