/R-29~1.0/ 和 /R-2.9.0/ 其实是一样的。因为“R-2.9.0”带有两个“.”,被windows认为不符合8.3的短文件名规范,所以在存储8.3短文件名时,取了“0”作为扩展名,而前面部分去掉“.”后追加“~1”作为文件名,从而形成了“R-29~1.0”。
这里出的错误,其实是因为“Rgraphviz.dll”模块还依赖的其他几个DLL(libcdt-4.dll等)没有被打入Rgraphviz的升级包中,系统找不到它们才提示的错误。
尝试了一通后,得出结论:
1、4楼给出的水木清华的解决方案思路是正确的,要使用Rgraphviz,需要先安装graphviz,以确保需要用到的graphviz的dll都存在;并且在安装完后需要设置系统路径,把graphviz的bin目录(如C:\Program Files\Graphviz2.20\bin)加到PATH中;
2、但该贴子已经不能解决问题,他提供的链接下载的graphviz-2.16.exe,并没有当前 Rgraphviz 所需要的那几个DLL;
3、在
http://www.graphviz.org/ 上下载的最新版(graphviz-2.22.2),虽然DLL存在,但 libgvc 的版本已经更高,所以当前 Rgraphviz 也无法使用;
4、最后,通过
http://www.graphviz.org/pub/graphviz/stable/windows/graphviz-2.20.3.1.msi 下载到的2.20.3版本,安装后,经过测试可以使用。
唉~~真不知道 Rgraphviz 的开发者是怎么想的,既然依赖了另一个软件,为什么不考虑其不同版本和升级的问题。把所需要库文件全部打包到自己的安装包里也行啊。看来不管在哪,软件开发人员都一样,总喜欢留下一堆麻烦给用户,好充分体现自己的价值。