编译时最好不要用make -j,这样容易造成依赖冲突,也就是线程2需要编译好的A文件,而负责编译A文件的线程2还没完成,因此线程2编译失败。总之这种基于玄学的多线程命令还是少用为好。
不管你cpu几核,还是老老实实用make命令比较好。当然也可以一开始使用-j,说不定运气好可以一遍过。也可以第一遍用make -j6 -k,这样-k就能够让编译出现问题时不中断,直到程序完全编译完成。第二遍就能减少很多依赖问题,这样重复几遍就能完成全部编译任务。
当然Nvidia官方还是建议用单线程更安全一些
编译时最好不要用make -j,这样容易造成依赖冲突,也就是线程2需要编译好的A文件,而负责编译A文件的线程2还没完成,因此线程2编译失败。总之这种基于玄学的多线程命令还是少用为好。
不管你cpu几核,还是老老实实用make命令比较好。当然也可以一开始使用-j,说不定运气好可以一遍过。也可以第一遍用make -j6 -k,这样-k就能够让编译出现问题时不中断,直到程序完全编译完成。第二遍就能减少很多依赖问题,这样重复几遍就能完成全部编译任务。
当然Nvidia官方还是建议用单线程更安全一些