cygwin必碰问题:No such file or directory

来源:互联网 发布:php实现一致性hash 编辑:程序博客网 时间:2024/05/17 18:03

 欢迎转载!转载时请注明出处:http://write.blog.csdn.net/postedit/8195159

真是为这个问题纠结了我一两天,查了各种资料,根据网上资料,和我现在的结论是一样的...路径映射的问题..

就拿我最近在研究Google Protocol Buffer,需要用cygwin编译一个.proto的后缀helloworld.proto文件

helloworld.proto的目录:C:\Users\Potter\Documents\work\Protocol Buffer\protobuf-2.4.1\src(放在我的这个目录下)

我们直接打开cygwin,然后我利用如下命令来编译他。如下:

我用红线画出来的路径确实是正确的,用cd  也是可以直接cd进去的,为什么就是提示No such file or directory 呢?

如果你看得仔细的话,会发现我上图中,还框出了一个Potter@Potter-PC ~没错,就是这个地方的问题,cygwin需要我们输入的是相对路径...

如果补全路径就是这样的了:/home/Potter/cygdrive/c/Users/Potter/Documents/work/Protocol\ Buffer/protobuf-2.4.1/src/  就是这样了

其实前面这/home/Potter就是我们的cygwin模拟的linux的根目录了...

说了这么久,那我们怎么直接用呢? 

解决方法一:

 cd 到helloworld.proto 的根目录  然后运行:

没有提示,基本上就是编译成功了...

没有搞错,万一我包含的文件,不是这个目录下怎么办?

解决方法二:

将其包含的文件和要编译的文件放在同一个磁盘总可以吧~  如果是在不同的磁盘,那样引用我暂时也不知道cygwin 是怎么写的了,知道的朋友请告诉我,感谢~

输入方式如下图:

ok  生成成功~     其实方法二和方法一是一样的,只是我想说明的是,先cd到同盘符的根目录,如我这里的c盘...然后在这样写,就方便编写编译了~ 

 

疑问:cygwin引用不同的磁盘是如何输入的,有知道的朋友请告诉我喔~  感谢了

 

 好了,明天早上我还要去爬山呢~   得养一下精神了,睡了~  呵呵~

 

感谢大家阅览我的博文,希望也能看到大家留下的脚印...呵呵!
如果讲述得有误,或者不对的地方,还望各位指出!

 

 

原创粉丝点击