首先说一下我的基本目的,之前服务器中毒了,所以重新配环境,然后用Clion本地写服务器上的代码。
这里有很多坑,我一一说,首先是这个cuda的安装问题,cuda和gcc之间是有一个版本对应的问题的,因此配环境的时候最好是二者适配的,这里官方文档可查其对应关系,也有很多博客有,我就不赘述了,如果都是适配的,后面就不用踩坑了,但是,如果你的cuda版本是10,而g++和gcc的版本是9(因为我这里直接都是apt install nvidia-cuda-toolkit,gdb也类似)因此这里还需要调整gcc和g++的版本,这简单,你可以apt install gcc-8(g++-8)分别解决,然后通过在 /usr/bin目录下改gcc的链接从而解决问题。
上面是版本的问题,第二个问题是,此时你可能会发现本机上的Clion提示找不到iostream头文件,整个c++语法上貌似都不支持了,但是实际上在服务器上和CLion里面都能build并且run,但是IDE就是给你报错,提示你找不到头文件,这里用c的头文件并不报错并且有代码提示,重新研究一下,发现CLion有个remote文件夹(CLion会在这里找对应的头文件,具体的路径为C:\Users\***\AppData\Local\JetBrains\CLion2020.2\.remote\******\********\usr\include),我发现这里的c++里面只有9,并没有8和7,然后我又去服务器上看了下,对应版本的都有,为什么没有同步这里,这一块具体为什么我不太清楚(我觉得这里得仔细研究一下CLion远程部署的时候,到底是如何同步服务器上的一下库的),暂时我的解决办法是把服务器那一套对应的include啥的物理拷贝到本机的这个文件夹下(直接物理超度),这时候就没问题了。