Kernel does not work if compiled with -lcufft

Here is a simple code that i compile with

nvcc -deviceemu -o code -O3 code.cu --compiler-options -fno-inline -I./NVIDIA_GPU_Computing_SDK/C/common/inc -I.
// includes, system

#include <stdlib.h>

#include <stdio.h>

#include <string.h>

// includes, project

#include <cutil.h>

__global__ void helloWorld( )

{

	// Synchronize to make sure data is loaded

	__syncthreads();

	// printf only works in Emulation mode, you must comment out all

	// printfs this when running on actual GPU.

	printf("Hello World! I am a thread with BlockID: {%d, %d}, ThreadID: {%d, %d, %d}\n",

	blockIdx.x, blockIdx.y, threadIdx.x, threadIdx.y, threadIdx.z);

	// Synchronize to make sure that the preceding

	// computation is done before loading data for

	// the next iteration

	__syncthreads();

}

////////////////////////////////////////////////////////////////////////////////

// Program main

////////////////////////////////////////////////////////////////////////////////

void myfunc()

{

	// setup execution parameters

	dim3 threads( 1, 2, 2 );

	dim3 grid( 2, 2 );

	// execute the kernel

	helloWorld<<< grid, threads >>>( );

}

int main(int argc, char** argv)

{

	CUT_DEVICE_INIT(argc, argv);

	myfunc();

	return EXIT_SUCCESS;

}

and i get the following output:

Hello World! I am a thread with BlockID: {0, 0}, ThreadID: {0, 0, 0}

Hello World! I am a thread with BlockID: {0, 0}, ThreadID: {0, 1, 0}

Hello World! I am a thread with BlockID: {0, 0}, ThreadID: {0, 0, 1}

Hello World! I am a thread with BlockID: {0, 0}, ThreadID: {0, 1, 1}

Hello World! I am a thread with BlockID: {1, 0}, ThreadID: {0, 0, 0}

Hello World! I am a thread with BlockID: {1, 0}, ThreadID: {0, 1, 0}

Hello World! I am a thread with BlockID: {1, 0}, ThreadID: {0, 0, 1}

Hello World! I am a thread with BlockID: {1, 0}, ThreadID: {0, 1, 1}

Hello World! I am a thread with BlockID: {0, 1}, ThreadID: {0, 0, 0}

Hello World! I am a thread with BlockID: {0, 1}, ThreadID: {0, 1, 0}

Hello World! I am a thread with BlockID: {0, 1}, ThreadID: {0, 0, 1}

Hello World! I am a thread with BlockID: {0, 1}, ThreadID: {0, 1, 1}

Hello World! I am a thread with BlockID: {1, 1}, ThreadID: {0, 0, 0}

Hello World! I am a thread with BlockID: {1, 1}, ThreadID: {0, 1, 0}

Hello World! I am a thread with BlockID: {1, 1}, ThreadID: {0, 0, 1}

Hello World! I am a thread with BlockID: {1, 1}, ThreadID: {0, 1, 1}

then i compile it again but I add the cufft library:

nvcc -deviceemu -o code -O3 code.cu --compiler-options -fno-inline -I./NVIDIA_GPU_Computing_SDK/C/common/inc -I. -lcufft

When I execute ./code, I get nothing! (!)

Can someone explain me?

Thanks.

I have to use -lcufftemu and not -lcufft in emulation mode!