Hello, i want to ask questions about creating my own project.
For example, let’s consider the “template” project.
I would like to know what is the difference between “template.vc.proj” and “template.sol”. In fact what are their functions ? How are they linked ?
Besides i can’t change the name of the file “template.vc.proj”, as if i change its name, “template.sol” can’t be open.
More precisely, what should i do in order to create a new project without copying the project “template”. I mean i want to start a new project from nothing (exept the sdk and the toolkit of course). Someone can help me ?
Maybe its a good idea to look at the variables that are set in the template. Like library path linker variables etc… I don’t know that for sure because it was a very long time ago that I did something with VS. But just copy all those paths then you know it will work. and you can start doing your thing.
Its not very bad. But yes it can be frustrating if your code is not working because you missed some semi-colon or comma in the project-options. The cuda rule step in one of the posts on the Windows XP(?) forum could be helpful too.
Generally what I do is -
Create a new VS project as usual.
Add the code file for the cuda code.
Rename it with the .cu extension
Add the custom build step rules (I have copy-pasted the rule in a txt file where I copy it from into the new file).
Change the name of the file in the rule. (I generally call my file cudaCode.cu, so I can skip this step)
Write the cuda kernels in a separate file that I include in the cudacode.cu
Set the cuda kernel file to not be included in the build.
Include the cuda libraries in the Additional Libraries in the Project Properties > Linker > Input
Add paths to the Additional Libraries in Project Properties > Linker > General
Add paths for Additional Include Directories in Project Properties > C/C++
Disclaimer:
Author has only worked with small-medium sized projects. Author is not sure if this would be a manageable way to work with huge projects with a large number of kernels and corresponding host code.