caffe深度学习【十二】编译错误:caffe.proto:1:1: Interpreting non ascii codepoint 239.

问题:

今天想换senet来训练,需要添加一个层,然后重新编译caffe

https://github.com/hujie-frank/SENet

当我改了caffe.proto文件后,准备重新make编译caffe时,出现如下问题:

文字版如下:

PROTOC src/caffe/proto/caffe.proto
caffe.proto:1:1: Interpreting non ascii codepoint 239.
caffe.proto:1:1: Expected top-level statement (e.g. "message").
caffe.proto:1:2: Interpreting non ascii codepoint 187.
caffe.proto:1:3: Interpreting non ascii codepoint 191.
Makefile:638: recipe for target '.build_release/src/caffe/proto/caffe.pb.cc' failed
make: *** [.build_release/src/caffe/proto/caffe.pb.cc] Error 1

原因:

用文本编辑器打开了文件后,文本编辑器在caffe.proto文件的开头静默插入字节顺序标记。

错误消息暗示文件中的前三个字节是357  273  277,或者EF BB BF,这是UTF-8字节顺序标记:

用Vim打开文件

sudo vim caffe.proto

看不出有什么问题:

但是在执行caffe.proto文件目录下执行

head -1 caffe.proto | od -c

会出现下图的情况,我们可以看到文本开头静默插入357  273  277 三个字符:

解决方法:

1.Vim打开caffe.proto文件

sudo vim caffe.proto

2.消除多出的字符

在vim中输入

:set nobomb

先输入冒号

然后再输入set nobomb

3.保存并退出

在vim中输入

:wq

即可保存退出vim

4.重新编译caffe

回到caffe目录下

输入

make clean
make all
make pycaffe

编译成功,问题解决!!!

猜你喜欢

转载自blog.csdn.net/qq_38451119/article/details/81980292