gcc 4.4 support anytime soon?
  1 / 2    
I've just installed Fedora 11 on one of my development machines (x84_64), along with the 185.18.14 drivers and the Cuda 2.2 toolkits and sdks. Unfortunately, most of the example targets in the sdk fail because of an error:

/usr/local/cuda/bin/../include/math_functions.h:404: error: inline function ‘int __signbit(double)’ cannot be declared weak
/usr/local/cuda/bin/../include/math_functions.h:409: error: inline function ‘int __signbitf(float)’ cannot be declared weak

Fedora 11 comes with gcc 4.4, which I think is the problem - I actually installed the Fedora 10 versions of the toolkit & SDK because those appeared to be the most recent.

I understand from a forum post back in March 30, 2009 in these forums that GCC 4.4 is not supported yet. Can I get some information about plans to support the newer compiler? I'd be happy to help out with testing, etc.

Thanks for your help,
Jason
I've just installed Fedora 11 on one of my development machines (x84_64), along with the 185.18.14 drivers and the Cuda 2.2 toolkits and sdks. Unfortunately, most of the example targets in the sdk fail because of an error:



/usr/local/cuda/bin/../include/math_functions.h:404: error: inline function ‘int __signbit(double)’ cannot be declared weak

/usr/local/cuda/bin/../include/math_functions.h:409: error: inline function ‘int __signbitf(float)’ cannot be declared weak



Fedora 11 comes with gcc 4.4, which I think is the problem - I actually installed the Fedora 10 versions of the toolkit & SDK because those appeared to be the most recent.



I understand from a forum post back in March 30, 2009 in these forums that GCC 4.4 is not supported yet. Can I get some information about plans to support the newer compiler? I'd be happy to help out with testing, etc.



Thanks for your help,

Jason

#1
Posted 06/12/2009 01:56 AM   
It took us a while to support gcc 4.3, so I imagine gcc 4.4 will take a while too. (the idea that people would deploy on gcc 4.4 right now boggles me a little)
It took us a while to support gcc 4.3, so I imagine gcc 4.4 will take a while too. (the idea that people would deploy on gcc 4.4 right now boggles me a little)

#2
Posted 06/12/2009 02:51 AM   
[quote name='jasonsewall' post='551594' date='Jun 11 2009, 06:56 PM']I've just installed Fedora 11 on one of my development machines (x84_64), along with the 185.18.14 drivers and the Cuda 2.2 toolkits and sdks. Unfortunately, most of the example targets in the sdk fail because of an error:

/usr/local/cuda/bin/../include/math_functions.h:404: error: inline function ‘int __signbit(double)’ cannot be declared weak
/usr/local/cuda/bin/../include/math_functions.h:409: error: inline function ‘int __signbitf(float)’ cannot be declared weak

Fedora 11 comes with gcc 4.4, which I think is the problem - I actually installed the Fedora 10 versions of the toolkit & SDK because those appeared to be the most recent.

I understand from a forum post back in March 30, 2009 in these forums that GCC 4.4 is not supported yet. Can I get some information about plans to support the newer compiler? I'd be happy to help out with testing, etc.

Thanks for your help,
Jason[/quote]

Fedora 11 will be supported two releases from now (not in the next release).
[quote name='jasonsewall' post='551594' date='Jun 11 2009, 06:56 PM']I've just installed Fedora 11 on one of my development machines (x84_64), along with the 185.18.14 drivers and the Cuda 2.2 toolkits and sdks. Unfortunately, most of the example targets in the sdk fail because of an error:



/usr/local/cuda/bin/../include/math_functions.h:404: error: inline function ‘int __signbit(double)’ cannot be declared weak

/usr/local/cuda/bin/../include/math_functions.h:409: error: inline function ‘int __signbitf(float)’ cannot be declared weak



Fedora 11 comes with gcc 4.4, which I think is the problem - I actually installed the Fedora 10 versions of the toolkit & SDK because those appeared to be the most recent.



I understand from a forum post back in March 30, 2009 in these forums that GCC 4.4 is not supported yet. Can I get some information about plans to support the newer compiler? I'd be happy to help out with testing, etc.



Thanks for your help,

Jason



Fedora 11 will be supported two releases from now (not in the next release).

#3
Posted 06/12/2009 01:43 PM   
[quote name='netllama' post='551731' date='Jun 12 2009, 01:43 PM']Fedora 11 will be supported two releases from now (not in the next release).[/quote]
Using the nvcc's --compiler-bindir option and compat-gcc-34 package, it is possible to build the SDK. But the cuda device detection always fail. Is it the expected result on fedora 11 or a problem with my configuration?

Regards.
[quote name='netllama' post='551731' date='Jun 12 2009, 01:43 PM']Fedora 11 will be supported two releases from now (not in the next release).

Using the nvcc's --compiler-bindir option and compat-gcc-34 package, it is possible to build the SDK. But the cuda device detection always fail. Is it the expected result on fedora 11 or a problem with my configuration?



Regards.

#4
Posted 06/12/2009 10:18 PM   
[quote name='hubris.nemesis' post='551845' date='Jun 12 2009, 03:18 PM']Using the nvcc's --compiler-bindir option and compat-gcc-34 package, it is possible to build the SDK. But the cuda device detection always fail. Is it the expected result on fedora 11 or a problem with my configuration?

Regards.[/quote]

While Fedora 11 has not received any official testing with CUDA, it seems unlikely that device detection would fail if the driver were correctly installed. I'm guessing that something more fundamental isn't setup correctly on your system. Generating and attaching an nvidia-bug-report.log.gz would be helpful.
[quote name='hubris.nemesis' post='551845' date='Jun 12 2009, 03:18 PM']Using the nvcc's --compiler-bindir option and compat-gcc-34 package, it is possible to build the SDK. But the cuda device detection always fail. Is it the expected result on fedora 11 or a problem with my configuration?



Regards.



While Fedora 11 has not received any official testing with CUDA, it seems unlikely that device detection would fail if the driver were correctly installed. I'm guessing that something more fundamental isn't setup correctly on your system. Generating and attaching an nvidia-bug-report.log.gz would be helpful.

#5
Posted 06/12/2009 10:21 PM   
[quote name='tmurray' post='551603' date='Jun 11 2009, 10:51 PM']It took us a while to support gcc 4.3, so I imagine gcc 4.4 will take a while too. (the idea that people would deploy on gcc 4.4 right now boggles me a little)[/quote]

Someone's got to test it out :)
[quote name='tmurray' post='551603' date='Jun 11 2009, 10:51 PM']It took us a while to support gcc 4.3, so I imagine gcc 4.4 will take a while too. (the idea that people would deploy on gcc 4.4 right now boggles me a little)



Someone's got to test it out :)

#6
Posted 06/12/2009 10:38 PM   
[quote name='jasonsewall' post='551856' date='Jun 12 2009, 06:38 PM']Someone's got to test it out :)[/quote]

Anyway, I built gcc 4.3.3 (which takes a while, BTW) and coered nvcc to use it, and everything works fine. I don't need to use any gcc 4.4 features right now, especially in my CUDA programs...

Jason
[quote name='jasonsewall' post='551856' date='Jun 12 2009, 06:38 PM']Someone's got to test it out :)



Anyway, I built gcc 4.3.3 (which takes a while, BTW) and coered nvcc to use it, and everything works fine. I don't need to use any gcc 4.4 features right now, especially in my CUDA programs...



Jason

#7
Posted 06/13/2009 04:45 AM   
[quote name='netllama' post='551846' date='Jun 12 2009, 10:21 PM']While Fedora 11 has not received any official testing with CUDA, it seems unlikely that device detection would fail if the driver were correctly installed. I'm guessing that something more fundamental isn't setup correctly on your system. Generating and attaching an nvidia-bug-report.log.gz would be helpful.[/quote]
Ok, thank you. Here it is. I use drivers from the rpmfusion repository and cudatoolkit2.1. Launching ./deviceQuery returns:
cudaSafeCall() Runtime API error in file <deviceQuery.cu>, line 59 : feature is not yet implemented.
I have tried with cuda2.2 and rpmfusion testing which has 185 drivers and this program returns emulation only device.
[quote name='netllama' post='551846' date='Jun 12 2009, 10:21 PM']While Fedora 11 has not received any official testing with CUDA, it seems unlikely that device detection would fail if the driver were correctly installed. I'm guessing that something more fundamental isn't setup correctly on your system. Generating and attaching an nvidia-bug-report.log.gz would be helpful.

Ok, thank you. Here it is. I use drivers from the rpmfusion repository and cudatoolkit2.1. Launching ./deviceQuery returns:

cudaSafeCall() Runtime API error in file <deviceQuery.cu>, line 59 : feature is not yet implemented.

I have tried with cuda2.2 and rpmfusion testing which has 185 drivers and this program returns emulation only device.

#8
Posted 06/13/2009 01:45 PM   
[quote name='hubris.nemesis' post='552040' date='Jun 13 2009, 01:45 PM']Ok, thank you. Here it is. I use drivers from the rpmfusion repository and cudatoolkit2.1. Launching ./deviceQuery returns:
cudaSafeCall() Runtime API error in file <deviceQuery.cu>, line 59 : feature is not yet implemented.
I have tried with cuda2.2 and rpmfusion testing which has 185 drivers and this program returns emulation only device.[/quote]
After investigation, cudart try to dlopen libcuda.so but because I didn't install xorg-x11-drv-nvidia-devel.x86_64 (which provides libcuda.so) it gives me this strange error. Maybe a more obvious error message could be used.
It leads to another question: cudart is looking for libcuda.so which is the name used at linking time (by convention) whereas libcuda.so.1 is the runtime library name. Maybe it should use libcuda.so.1? (and thus being compatible with rpmfusion packaging standards)

I'm not an expert in library naming, so I may miss something.

Thank you for your help anyway!
[quote name='hubris.nemesis' post='552040' date='Jun 13 2009, 01:45 PM']Ok, thank you. Here it is. I use drivers from the rpmfusion repository and cudatoolkit2.1. Launching ./deviceQuery returns:

cudaSafeCall() Runtime API error in file <deviceQuery.cu>, line 59 : feature is not yet implemented.

I have tried with cuda2.2 and rpmfusion testing which has 185 drivers and this program returns emulation only device.

After investigation, cudart try to dlopen libcuda.so but because I didn't install xorg-x11-drv-nvidia-devel.x86_64 (which provides libcuda.so) it gives me this strange error. Maybe a more obvious error message could be used.

It leads to another question: cudart is looking for libcuda.so which is the name used at linking time (by convention) whereas libcuda.so.1 is the runtime library name. Maybe it should use libcuda.so.1? (and thus being compatible with rpmfusion packaging standards)



I'm not an expert in library naming, so I may miss something.



Thank you for your help anyway!

#9
Posted 06/13/2009 08:54 PM   
[quote name='hubris.nemesis' post='552150' date='Jun 13 2009, 01:54 PM']After investigation, cudart try to dlopen libcuda.so but because I didn't install xorg-x11-drv-nvidia-devel.x86_64 (which provides libcuda.so) it gives me this strange error. Maybe a more obvious error message could be used.
It leads to another question: cudart is looking for libcuda.so which is the name used at linking time (by convention) whereas libcuda.so.1 is the runtime library name. Maybe it should use libcuda.so.1? (and thus being compatible with rpmfusion packaging standards)

I'm not an expert in library naming, so I may miss something.

Thank you for your help anyway![/quote]

libcuda is the actual CUDA driver. If you're opting not to use the official NVIDIA driver package (which provides all the drivers), then you're at the whim of how the 3rd party packagers choose to put things together.
[quote name='hubris.nemesis' post='552150' date='Jun 13 2009, 01:54 PM']After investigation, cudart try to dlopen libcuda.so but because I didn't install xorg-x11-drv-nvidia-devel.x86_64 (which provides libcuda.so) it gives me this strange error. Maybe a more obvious error message could be used.

It leads to another question: cudart is looking for libcuda.so which is the name used at linking time (by convention) whereas libcuda.so.1 is the runtime library name. Maybe it should use libcuda.so.1? (and thus being compatible with rpmfusion packaging standards)



I'm not an expert in library naming, so I may miss something.



Thank you for your help anyway!



libcuda is the actual CUDA driver. If you're opting not to use the official NVIDIA driver package (which provides all the drivers), then you're at the whim of how the 3rd party packagers choose to put things together.

#10
Posted 06/14/2009 03:25 PM   
[quote name='netllama' post='552469' date='Jun 14 2009, 11:25 AM']libcuda is the actual CUDA driver. If you're opting not to use the official NVIDIA driver package (which provides all the drivers), then you're at the whim of how the 3rd party packagers choose to put things together.[/quote]

Yeah I found that the version in Fusion wasn't new enough to be supported by the latest Cuda toolkit - I installed the newest drivers from the nvidia website and it works fine (with gcc 4.3)
[quote name='netllama' post='552469' date='Jun 14 2009, 11:25 AM']libcuda is the actual CUDA driver. If you're opting not to use the official NVIDIA driver package (which provides all the drivers), then you're at the whim of how the 3rd party packagers choose to put things together.



Yeah I found that the version in Fusion wasn't new enough to be supported by the latest Cuda toolkit - I installed the newest drivers from the nvidia website and it works fine (with gcc 4.3)

#11
Posted 06/15/2009 01:43 PM   
[quote name='hubris.nemesis' post='551845' date='Jun 13 2009, 12:18 AM']Using the nvcc's --compiler-bindir option and compat-gcc-34 package, it is possible to build the SDK. But the cuda device detection always fail. Is it the expected result on fedora 11 or a problem with my configuration?[/quote]

Hi,
can you tell me how to do that? I am trying to compile the SDK with F11 but I am missing something...

Thanks,
GiP
[quote name='hubris.nemesis' post='551845' date='Jun 13 2009, 12:18 AM']Using the nvcc's --compiler-bindir option and compat-gcc-34 package, it is possible to build the SDK. But the cuda device detection always fail. Is it the expected result on fedora 11 or a problem with my configuration?



Hi,

can you tell me how to do that? I am trying to compile the SDK with F11 but I am missing something...



Thanks,

GiP

#12
Posted 06/18/2009 02:49 PM   
To compile the sample-projects on F11 w/gcc34 you can change the VIDIA_CUDA_SDK/common/common.mk lines:
CXX := g++34
CC := gcc34
LINK := g++34 -fPIC
and
NVCCFLAGS := --compiler-bindir /tmp

Then create a symbolic link in /tmp:
ln -s /usr/bin/gcc34 gcc

Remember to fetch the freeglut packages

Regards
Lars Ole Belhage
To compile the sample-projects on F11 w/gcc34 you can change the VIDIA_CUDA_SDK/common/common.mk lines:

CXX := g++34

CC := gcc34

LINK := g++34 -fPIC

and

NVCCFLAGS := --compiler-bindir /tmp



Then create a symbolic link in /tmp:

ln -s /usr/bin/gcc34 gcc



Remember to fetch the freeglut packages



Regards

Lars Ole Belhage

#13
Posted 06/21/2009 08:55 AM   
[quote name='Belhage' post='555518' date='Jun 21 2009, 10:55 AM']To compile the sample-projects on F11 w/gcc34 you can change the VIDIA_CUDA_SDK/common/common.mk lines:
CXX := g++34
CC := gcc34
LINK := g++34 -fPIC
and
NVCCFLAGS := --compiler-bindir /tmp

Then create a symbolic link in /tmp:
ln -s /usr/bin/gcc34 gcc

Remember to fetch the freeglut packages

Regards
Lars Ole Belhage[/quote]


Thanks , I'll try that.

GiP
[quote name='Belhage' post='555518' date='Jun 21 2009, 10:55 AM']To compile the sample-projects on F11 w/gcc34 you can change the VIDIA_CUDA_SDK/common/common.mk lines:

CXX := g++34

CC := gcc34

LINK := g++34 -fPIC

and

NVCCFLAGS := --compiler-bindir /tmp



Then create a symbolic link in /tmp:

ln -s /usr/bin/gcc34 gcc



Remember to fetch the freeglut packages



Regards

Lars Ole Belhage





Thanks , I'll try that.



GiP

#14
Posted 06/22/2009 10:35 AM   
I will like to know how is the support for gcc 4.4 going, since at the CUDA Getting started guide says:
[quote]Currently, CUDA development tools support gcc version 3.4 as well as versions 4.x.[/quote]

but I am getting an error that seems created by using 4.4
[code]/usr/include/c++/4.4/ext/atomicity.h(50): error: identifier "__sync_fetch_and_add" is undefined[/code]

Thanks!
I will like to know how is the support for gcc 4.4 going, since at the CUDA Getting started guide says:

Currently, CUDA development tools support gcc version 3.4 as well as versions 4.x.




but I am getting an error that seems created by using 4.4

/usr/include/c++/4.4/ext/atomicity.h(50): error: identifier "__sync_fetch_and_add" is undefined




Thanks!

#15
Posted 10/23/2009 10:42 PM   
  1 / 2    
Scroll To Top