Archived

This forum has been archived. Please start a new discussion on GitHub.

Cannot patch protobuf.patch

OS: Windows XP
ICE: 3.3.0

I have a problem about how to patch the protobuf.patch file?


1.I have extracted the Ice source distribution into C:\Ice-3.3.0
2.The patch is located in C:\protobuf.patch
3.The patch utility is in my PATH


# Change to the Ice source directory:

> cd \Ice-3.3.0

# Apply the patch:

> patch -p0 --binary < C:\protobuf.patch


But patching seems not succeed
The following is the response:

..........
bash-3.2$ !patch
patch.exe -p0 --binary < C:/protobuf.patch
(Stripping trailing CRs from patch.)
patching file ./cpp/demo/Ice/protobuf/Client.cpp
(Stripping trailing CRs from patch.)
patching file ./cpp/demo/Ice/protobuf/config.client
(Stripping trailing CRs from patch.)
patching file ./cpp/demo/Ice/protobuf/config.server
(Stripping trailing CRs from patch.)
patching file ./cpp/demo/Ice/protobuf/.depend
(Stripping trailing CRs from patch.)
patching file ./cpp/demo/Ice/protobuf/Hello.ice
(Stripping trailing CRs from patch.)
patching file ./cpp/demo/Ice/protobuf/HelloI.cpp
(Stripping trailing CRs from patch.)
patching file ./cpp/demo/Ice/protobuf/HelloI.h
(Stripping trailing CRs from patch.)
patching file ./cpp/demo/Ice/protobuf/Makefile
(Stripping trailing CRs from patch.)
patching file ./cpp/demo/Ice/protobuf/Makefile.mak
(Stripping trailing CRs from patch.)
patching file ./cpp/demo/Ice/protobuf/Person.proto
(Stripping trailing CRs from patch.)
patching file ./cpp/demo/Ice/protobuf/README
(Stripping trailing CRs from patch.)
patching file ./cpp/demo/Ice/protobuf/Server.cpp
(Stripping trailing CRs from patch.)
can't find file to patch at input line 588
Perhaps you used the wrong -p or --strip option?

The text leading up to this was:
|diff -c -r -N ../Ice-3.3.0/cpp/include/Slice/CPlusPlusUtil.h ./cpp/include/Slic
e/CPlusPlusUtil.h
|*** ../Ice-3.3.0/cpp/include/Slice/CPlusPlusUtil.h 2008-05-17 01:24:00.0000
00000 +0800
|--- ./cpp/include/Slice/CPlusPlusUtil.h 2008-07-19 03:29:13.000000000 +0
800
File to patch:
...........

And i have converted the protobuf.patch file to a DOS file.

Thanks in advance!

Comments

  • matthew
    matthew NL, Canada
    What patch utility are you using?
  • matthew wrote: »
    What patch utility are you using?

    I download from
    Patch for Windows

    patch.exe -v:
    patch 2.5.9
    Copyright (C) 1988 Larry Wall
    Copyright (C) 2003 Free Software Foundation, Inc.

    This program comes with NO WARRANTY, to the extent permitted by law.
    You may redistribute copies of this program
    under the terms of the GNU General Public License.
    For more information about these matters, see the file named COPYING.

    written by Larry Wall and Paul Eggert
  • matthew
    matthew NL, Canada
    I'm not sure what you are doing wrong, but I just tried this utility and as long as the .patch file is converted to DOS mode it worked fine for me. If the mode of the file is not converted, I ended up with an assert when running the patch utility.

    Here is what I did:
    - Unzip Ice-3.3.0.zip
    - Converted the patch file to dos mode.
    - In the Ice-3.3.0 directory:
    C:\Users\matthew\test\Ice-3.3.0>..\patch\bin\patch.exe -p0 < ..\protobuf.patch
    patching file ./cpp/demo/Ice/protobuf/Client.cpp
    patching file ./cpp/demo/Ice/protobuf/config.client
    patching file ./cpp/demo/Ice/protobuf/config.server
    patching file ./cpp/demo/Ice/protobuf/.depend
    patching file ./cpp/demo/Ice/protobuf/Hello.ice
    patching file ./cpp/demo/Ice/protobuf/HelloI.cpp
    patching file ./cpp/demo/Ice/protobuf/HelloI.h
    patching file ./cpp/demo/Ice/protobuf/Makefile
    patching file ./cpp/demo/Ice/protobuf/Makefile.mak
    patching file ./cpp/demo/Ice/protobuf/Person.proto
    patching file ./cpp/demo/Ice/protobuf/README
    patching file ./cpp/demo/Ice/protobuf/Server.cpp
    patching file ./cpp/include/Slice/CPlusPlusUtil.h
    patching file ./cpp/include/Slice/JavaUtil.h
    patching file ./cpp/src/Slice/CPlusPlusUtil.cpp
    patching file ./cpp/src/Slice/JavaUtil.cpp
    patching file ./cpp/src/Slice/PythonUtil.cpp
    patching file ./cpp/src/slice2cpp/Gen.cpp
    patching file ./java/demo/Ice/protobuf/ant/ProtocTask.java
    patching file ./java/demo/Ice/protobuf/build.xml
    patching file ./java/demo/Ice/protobuf/Client.java
    patching file ./java/demo/Ice/protobuf/config.client
    patching file ./java/demo/Ice/protobuf/config.server
    patching file ./java/demo/Ice/protobuf/Hello.ice
    patching file ./java/demo/Ice/protobuf/HelloI.java
    patching file ./java/demo/Ice/protobuf/Person.proto
    patching file ./java/demo/Ice/protobuf/README
    patching file ./java/demo/Ice/protobuf/Server.java
    patching file ./py/demo/Ice/protobuf/Client.py
    patching file ./py/demo/Ice/protobuf/config.client
    patching file ./py/demo/Ice/protobuf/config.server
    patching file ./py/demo/Ice/protobuf/Hello.ice
    patching file ./py/demo/Ice/protobuf/Person.proto
    patching file ./py/demo/Ice/protobuf/README
    patching file ./py/demo/Ice/protobuf/Server.py
    patching file ./py/modules/IcePy/Init.cpp
    patching file ./py/modules/IcePy/Types.cpp
    patching file ./py/modules/IcePy/Types.h