Eclipse Plugin for CUDA and QT development

I finally transfered code that I made with eclipse to another pc… the problem was that the driver and toolkit running on the later were of a previous version, so libraries etc were not in place and therefore it didn’t work. Given the circumstances I believe the result was as expected…

Hello,

There is no wrong compiling but when building project everything is compiled even if there is nothing to do and when cleaning:

**** Clean-only build of configuration release for project GPUKernel ****

make clean

rm ./Initialisation.d ./LineBlockGPUCWMatrixKernel.d ./LineBlockGPUCWMatrixKernelTexX.d ./cu_Initialisation.o ./cu_LineBlockGPUCWMatrixKernel.o ./cu_LineBlockGPUCWMatrixKernelTexX.o libGPUKernel.a

rm: cannot remove `./Initialisation.d’: No such file or directory

rm: cannot remove `./LineBlockGPUCWMatrixKernel.d’: No such file or directory

rm: cannot remove `./LineBlockGPUCWMatrixKernelTexX.d’: No such file or directory

make: [clean] Error 1 (ignored)

A+

Thomas

Thank you for a this great package.

I was happily going through all the steps to compile and run my program.
Everything was going fine (with all the unavoidable hick-ups for a first try with a program) until I started to run my program from the workbench.

I am using Linux.

Then I opended a console and ran the program without problem from the console.
From the workbench, there seems to be no way to get it to run.
Then I search the net for answers : the culprit is the fscanf function which for some reason does not work with eclipse. The earlyest mention of this problem I could find was in 2003, 7 years ago and no resolution to this problem. This I can live with by using a separate console. But for the debugger, it would be usefull to use the workbench with all the features of the debugger available.
I have tried all the settings which were mentionned in the various messages to no avail.
Is there something new that you know that I can try?

I just installed the Helios Eclipse release with the CUDA Toolchain.
Everything works except this fscanf problem.
Is it possible to set both input and output terminals to be Linux consoles?

Finally managed to get it to work as an “external tools”. It took me a while to get all the pieces in place though.
The next part is to get the debugger to operate the same way and maybe the cuda-gdb also.

Hello Thomas,

I found the bug and fixed it. The new version of the plugin should be available in the next days.

Daniel

Hello,

what’s exactly the problem with fscanf? I could only find problems of the formatting of console output when using scanf together with printf. The eclipse console simply doesn’t flush stdout automatically as the linux console does. So output is messed up sometimes if you do not flush it manually.

Could you please give me some details?

Thanks,

Daniel

This type of code does not work under eclipse

[codebox]FILE *openfile;

openfile = fopen (BFname, “r”);

        	  status = fscanf (openfile, " %g %g  %g %g %g %g", &dum1, &dum2, &dum3,  &B1, &B2, &B3);

  fclose(openfile);

[/codebox]

Eclipse does not give an error but just terminate. The debug console show the same terminate message without any line number where the error is. I had to manually insert printf messages until I located the faulty behaviour.

The data file is in the work directory where the program is.

I got the program to run only when I use the external tool setting.

At first thanx a lot for developing such a plugin…really very useful…CUDA + QT…congratulations for the work and comin up with such an application

I tested this code and can confirm, that this doesn’t work in eclipse but in the linux console.

But I think this doesn’t have anything to do with our plugin, does it? This is a general eclipse problem. Perhaps you could submit it as a bug to the eclipse project. Aside from that, it would be interesting to hear what’s the exact cause of this problem.

Thanks, good to hear!

Daniel

Thank you for the test.
Yes, it is a general eclipse problem, but what is it good for if the debugger cannot be run when such a call is present?
You must have seen also that no error message was given and the program just terminate.
Most of the bug submitted on the eclipse forums were about sscan function. To date, no solution has been found. It looks like a fundamental issue regarding the buffer usage in eclipse and it cannot be solve using the present eclipse design.
And that is too bad.

Hi,
I wonder if with my Eclipse (or discussed plugin) is something wrong.
When I create new (empty) C++ project with CUDA Toolchain with QT, I can’t just compile it until I add some needed library names to Properties > C/C++ Build > Settings > Tool settings > C++ Linker (I mean -lQtCore, -lQtGui, -L/usr/lib, etc.) and include paths to Paths and Symbols in C/C++ General. Is everything allright or something should be added automatically?

Best regards,
Thom

Hello Thom,

everything’s fine. Adding manually some include and library paths is a normal procedure. If you use some further functionality, which is not included in the above librarys, you will have to add even more.

Daniel

Thanks for your reply!

Best regards,

Thom.

I am trying to install this cuda eclipse plug in and I get the following error:

An error occurred while collecting items to be installed

session context was:(profile=epp.package.cpp, phase=org.eclipse.equinox.internal.p2.engine.phases.Collect, operand=, action=).

No repository found containing: osgi.bundle,ai3.toolchain.cuda_qt,2.0.0.201007071524

No repository found containing: org.eclipse.update.feature,CUDA_QT_Toolchains_Feature,1.0.0.

201007071524

Any insights would b appreicated. I am using the following eclipse:

Eclipse IDE for C/C++ Developers

Version: Helios Release

Build id: 20100617-1415

© Copyright Eclipse contributors and others 2000, 2010. All rights reserved.

Visit http://eclipse.org/

This product includes software developed by the

Apache Software Foundation http://apache.org/

the content assist in the cu files seems to be missing. ( cdt 7.0, eclipse version 20100617-1415 ). is there a way to switch it on ?

the content assist in the cu files seems to be missing. ( cdt 7.0, eclipse version 20100617-1415 ). is there a way to switch it on ?

I have a problem with getting running any project created with cuda wizard. I am trying to create a simple project, but there is always a linker error.

The problem resides (i think so) in the generated makefile. Hear is a part of Makefile:

Tool invocations

cuda_hw1: $(OBJS) $(USER_OBJS)
@echo ‘Building target: $@’
@echo ‘Invoking: C++ Linker’
g++ -o"cuda_hw1" $(OBJS) $(USER_OBJS) $(LIBS)
@echo ‘Finished building target: $@’
@echo ’ ’

In the fives line the isn’t a space between -o and “cuda_hw1”. This lead to an error while linking process:
Invoking: C++ Linker
g++ -o"cuda_hw1" ./src/hw2.o
ld: unknown option: -ocuda_hw1

I haven’t found anybody, who have had a similar problem.
Systemdetails:
Snow Leopard, Mac: it forced to start in the 32-Bit-Mode
Eclipse Helios 32 bit version
gcc version 4.2.1

Best regards.

I have a problem with getting running any project created with cuda wizard. I am trying to create a simple project, but there is always a linker error.

The problem resides (i think so) in the generated makefile. Hear is a part of Makefile:

Tool invocations

cuda_hw1: $(OBJS) $(USER_OBJS)
@echo ‘Building target: $@’
@echo ‘Invoking: C++ Linker’
g++ -o"cuda_hw1" $(OBJS) $(USER_OBJS) $(LIBS)
@echo ‘Finished building target: $@’
@echo ’ ’

In the fives line the isn’t a space between -o and “cuda_hw1”. This lead to an error while linking process:
Invoking: C++ Linker
g++ -o"cuda_hw1" ./src/hw2.o
ld: unknown option: -ocuda_hw1

I haven’t found anybody, who have had a similar problem.
Systemdetails:
Snow Leopard, Mac: it forced to start in the 32-Bit-Mode
Eclipse Helios 32 bit version
gcc version 4.2.1

Best regards.

Hi,
Congratulations for the plugin! It’s a good work.
But I did not manage to have the outline and the auto completion working. Is it normal?
If it is a missing development, since the code is open, I propose to help in adding this feature.
How can we help?
kind regards,
Stephane.