Hi,
while compiling SDK code samples in NVIDIA_GPU_Computing_SDK/C/src, I got the following error
make[1]: Leaving directory /home/bouhadef/NVIDIA_GPU_Computing_SDK/C/src/simpleStreams' make -C src/Interval/ make[1]: Entering directory /home/bouhadef/NVIDIA_GPU_Computing_SDK/C/src/Interval’
In file included from interval.cu:32:0:
cpu_interval.h:19:0: warning: “__USE_ISOC99” redefined
/usr/include/features.h:265:0: note: this is the location of the previous definition
/usr/lib/gcc/x86_64-redhat-linux/4.5.1/…/…/…/…/include/c++/4.5.1/iomanip(64): error: expected an expression
/usr/lib/gcc/x86_64-redhat-linux/4.5.1/…/…/…/…/include/c++/4.5.1/iomanip(94): error: expected an expression
/usr/lib/gcc/x86_64-redhat-linux/4.5.1/…/…/…/…/include/c++/4.5.1/iomanip(125): error: expected an expression
/usr/lib/gcc/x86_64-redhat-linux/4.5.1/…/…/…/…/include/c++/4.5.1/iomanip(193): error: expected an expression
/usr/lib/gcc/x86_64-redhat-linux/4.5.1/…/…/…/…/include/c++/4.5.1/iomanip(223): error: expected an expression
5 errors detected in the compilation of “/tmp/tmpxft_00002158_00000000-6_interval.compute_20.cpp1.ii”.
make[1]: *** [obj/x86_64/release/interval.cu_13.o] Error 2
make[1]: Leaving directory `/home/bouhadef/NVIDIA_GPU_Computing_SDK/C/src/Interval’
make: *** [src/Interval/Makefile.ph_build] Error 2
The compilation problem is because you are using gcc 4.5, which isn’t supported with nvcc. Downgrade the compiler to fix that. The driver/runtime mismatch error usually means you have an older driver version installed somewhere. Have a look at whether there are multiple libcuda.so instances installed anywhere. If there are not, check that the driver and SDK versions are compatible.
###############################################################################
#
# Copyright 1993-2010 NVIDIA Corporation. All rights reserved.
#
# NOTICE TO USER:
#
# This source code is subject to NVIDIA ownership rights under U.S. and
# international Copyright laws.
#
# NVIDIA MAKES NO REPRESENTATION ABOUT THE SUITABILITY OF THIS SOURCE
# CODE FOR ANY PURPOSE. IT IS PROVIDED "AS IS" WITHOUT EXPRESS OR
# IMPLIED WARRANTY OF ANY KIND. NVIDIA DISCLAIMS ALL WARRANTIES WITH
# REGARD TO THIS SOURCE CODE, INCLUDING ALL IMPLIED WARRANTIES OF
# MERCHANTABILITY, NONINFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE.
# IN NO EVENT SHALL NVIDIA BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL,
# OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
# OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE
# OR PERFORMANCE OF THIS SOURCE CODE.
#
# U.S. Government End Users. This source code is a "commercial item" as
# that term is defined at 48 C.F.R. 2.101 (OCT 1995), consisting of
# "commercial computer software" and "commercial computer software
# documentation" as such terms are used in 48 C.F.R. 12.212 (SEPT 1995)
# and is provided to the U.S. Government only as a commercial end item.
# Consistent with 48 C.F.R.12.212 and 48 C.F.R. 227.7202-1 through
# 227.7202-4 (JUNE 1995), all U.S. Government End Users acquire the
# source code with only those rights set forth herein.
#
###############################################################################
#
# GPU Computing SDK (CUDA C)
#
###############################################################################
ifeq ($(emu), 1)
PROJECTS := $(shell find src -name Makefile | xargs grep -L 'USEDRVAPI' | xargs grep -L 'USENEWINTEROP' )
PROJECTS := $(shell find src -name Makefile | xargs grep -L 'USEDRVAPI' | xargs grep -L 'USENEWINTEROP' | grep -v "FunctionPointers\|Interval\|SobelFilter" )
else
PROJECTS := $(shell find src -name Makefile)
PROJECTS := $(shell find src -name Makefile | grep -v "FunctionPointers\|Interval\|SobelFilter" )
endif
%.ph_build : lib/libcutil.so lib/libparamgl.so lib/librendercheckgl.so shared/libshrutil.so
make -C $(dir $*) $(MAKECMDGOALS)
%.ph_clean :
make -C $(dir $*) clean $(USE_DEVICE)
%.ph_clobber :
make -C $(dir $*) clobber $(USE_DEVICE)
all: $(addsuffix .ph_build,$(PROJECTS))
@echo "Finished building all"
lib/libcutil.so:
@make -C common
lib/libparamgl.so:
@make -C common -f Makefile_paramgl
lib/librendercheckgl.so:
@make -C common -f Makefile_rendercheckgl
shared/libshrutil.so:
@make -C ../shared/
tidy:
@find * | egrep "#" | xargs rm -f
@find * | egrep "\~" | xargs rm -f
clean: tidy $(addsuffix .ph_clean,$(PROJECTS))
@make -C common clean
clobber: clean $(addsuffix .ph_clobber,$(PROJECTS))
@make -C common clobber
Thank you for the help
I downgrade gcc-4.5 to gcc-4.3 and the compiler works with some worrings. But I also find out that, one of my GPUs has problem for this reason I was not able to run my programs.
for this reason I get this error
$ ./deviceQuery
./deviceQuery Starting…
CUDA Device Query (Runtime API) version (CUDART static linking)
cudaGetDeviceCount FAILED CUDA Driver and Runtime version may be mismatched.