Uploaded image for project: 'Thrift'
  1. Thrift
  2. THRIFT-2066

'make install' does not install two headers required for C++ bindings

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 0.9.1
    • Build Process
    • None
    • $: uname -a
      Linux bob 3.2.0-44-generic #69-Ubuntu SMP Thu May 16 17:35:01 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

      $: g++ --version
      g++ (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3

      $: thrift --version
      Thrift version 1.0.0-dev

    • Patch Available

    Description

      First day with Thrift here.

      I built thrift from the git repository and installed into a non-standard path.

      $: git log -1
      commit a1b5728ee6791d2c75d7e0c33315e88b23fd712a
      Author: Konrad Grochowski <hcorg@minions.org.pl>
      Date: Sat Jun 22 22:10:23 2013 +0200

      THRIFT-2039 config.h --> thrift-config.h

      Signed-off-by: Roger Meier <roger@apache.org>

      $: ./bootstrap.sh
      $: JAVA_PREFIX=/home/lsuresh/local-bin/ ./configure --prefix=/home/lsuresh/local-bin --without-python
      $: make install -j9

      When trying to build a simple thrift based example:

      $: g++ -DHAVE_INTTYPES_H -DHAVE_NETINET_IN_H -Wall -I/home/lsuresh/local-bin/include/ -I/home/lsuresh/local-bin/include/thrift/ *.cpp -L/home/lsuresh/local-bin/lib -lthrift -o something

      /home/lsuresh/local-bin/include/thrift/ *.cpp -L/home/lsuresh/local-bin/lib -lthrift -o something
      In file included from simple_protocol_types.h:10:0,
      from simple_protocol_constants.h:10,
      from simple_protocol_constants.cpp:7:
      /home/lsuresh/local-bin/include/thrift/Thrift.h:23:45: fatal error: thrift/transport/PlatformSocket.h: No such file or directory
      compilation terminated.
      In file included from /home/lsuresh/local-bin/include/thrift/transport/TTransport.h:23:0,
      from /home/lsuresh/local-bin/include/thrift/protocol/TProtocol.h:23,
      from /home/lsuresh/local-bin/include/thrift/TProcessor.h:24,
      from /home/lsuresh/local-bin/include/thrift/TDispatchProcessor.h:22,
      from SimpleProtocol.h:10,
      from SimpleProtocol.cpp:7:
      /home/lsuresh/local-bin/include/thrift/Thrift.h:23:45: fatal error: thrift/transport/PlatformSocket.h: No such file or directory
      compilation terminated.
      In file included from /home/lsuresh/local-bin/include/thrift/transport/TTransport.h:23:0,
      from /home/lsuresh/local-bin/include/thrift/protocol/TProtocol.h:23,
      from /home/lsuresh/local-bin/include/thrift/TProcessor.h:24,
      from /home/lsuresh/local-bin/include/thrift/TDispatchProcessor.h:22,
      from SimpleProtocol.h:10,
      from SimpleProtocol_server.skeleton.cpp:4:
      /home/lsuresh/local-bin/include/thrift/Thrift.h:23:45: fatal error: thrift/transport/PlatformSocket.h: No such file or directory
      compilation terminated.
      In file included from simple_protocol_types.h:10:0,
      from simple_protocol_types.cpp:7:
      /home/lsuresh/local-bin/include/thrift/Thrift.h:23:45: fatal error: thrift/transport/PlatformSocket.h: No such file or directory
      compilation terminated.

      Seems like PlatformSocket.h isn't being copied over during the make install phase. Subsequently, there's a thrift-config.h that needs moving too.

      Patch attached.

      Attachments

        1. thrift-cpp-build-fail-fix.patch
          1.0 kB
          Lalith Suresh

        Activity

          People

            Unassigned Unassigned
            lsuresh Lalith Suresh
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: