cutil.h error

I’m trying to add .cu file to existing project and I have a lot of errors, such as:

c:\documents and settings\all users\application data\nvidia corporation\nvidia gpu computing sdk\c\common\inc\cutil.h(106) : error C2143: syntax error : missing '{' before '__stdcall'

1>c:\documents and settings\all users\application data\nvidia corporation\nvidia gpu computing sdk\c\common\inc\cutil.h(108) : error C2146: syntax error : missing ')' before identifier 'verbose'

1>c:\documents and settings\all users\application data\nvidia corporation\nvidia gpu computing sdk\c\common\inc\cutil.h(108) : error C2081: 'bool' : name in formal parameter list illegal

1>c:\documents and settings\all users\application data\nvidia corporation\nvidia gpu computing sdk\c\common\inc\cutil.h(108) : error C2061: syntax error : identifier 'verbose'

1>c:\documents and settings\all users\application data\nvidia corporation\nvidia gpu computing sdk\c\common\inc\cutil.h(108) : error C2059: syntax error : ';'

...

...

I use VS 2005.

My project has 2 files.

Main test.c has code:

#include <stdio.h>

#include "string.h"

// Required to include CUDA vector types

#include <vector_types.h>

#include "cutil_inline.h"

extern "C" void cu_inf(void);

int main(int argc, char *argv[])

{

	cu_inf();

	return 0;

}

The second file .cu:

// includes, system

#include <stdlib.h>

#include <stdio.h>

#include <string.h>

#include <math.h>

#include <iostream>

#include <windows.h>

// includes, project

#include <cutil_inline.h>

//

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

// declaration, forward

extern "C" void cu_inf()

{

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

	// Получение параметров видеокарты

	int			deviceCount;

	cudaDeviceProp devProp;

	cudaGetDeviceCount ( &deviceCount );

	printf ( "Found %d devices\n", deviceCount );

	for ( int device = 0; device < deviceCount; device++ )

	{

		cudaGetDeviceProperties ( &devProp, device );

		printf ( "Device %d\n", device );

		printf ( "Compute capability	 : %d.%d\n", devProp.major, devProp.minor );

		printf ( "Name				   : %s\n", devProp.name );

		printf ( "Total Global Memory	: %d\n", devProp.totalGlobalMem );

		printf ( "Shared memory per block: %d\n", devProp.sharedMemPerBlock );

		printf ( "Registers per block	: %d\n", devProp.regsPerBlock );

		printf ( "Warp size			  : %d\n", devProp.warpSize );

		printf ( "Max threads per block  : %d\n", devProp.maxThreadsPerBlock );

		printf ( "Total constant memory  : %d\n", devProp.totalConstMem );

		printf ( "\n");

		printf ( "Clock frequency (kHz)  : %d\n", devProp.clockRate );

		printf ( "Max grid size		  : %d\n", devProp.maxGridSize );

		printf ( "Max block size		 : %d\n", devProp.maxThreadsDim );

		printf ( "Number of multiprocessors: %d\n", devProp.multiProcessorCount );

	}

}

Where is error?

I’ve changed code, and now it works:

#include <stdio.h>

#include "string.h"

// Required to include CUDA vector types

#include <vector_types.h>

int main(int argc, char *argv[])

{

	cu_inf();

	return 0;

}

Hi timber

I got the same problem.

What you have done to make it work.

Thanks
Hus

You have to link the directory to cutil.h and cutil_inline.h in the cuda rules (right click project, properties) section at the bottom, not the general c.

How can I link these files?