Uploaded image for project: 'Parquet'
  1. Parquet
  2. PARQUET-1420

[C++] Thrift-generated symbols not exported in DLL

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • parquet-cpp

    Description

      Thirft-generated symbols don't have any PARQUET_EXPORT-like annotation, so they are not reachable from the Parquet DLL. In turn this makes it impossible to link Parquet unit tests with the Parquet DLL (instead of the Parquet static lib). I'm not sure it can impact other applications.

      Example linking error:

      column_writer-test.cc.obj : error LNK2019: unresolved external symbol "public: v
      irtual unsigned int __cdecl parquet::format::Statistics::read(class apache::thri
      ft::protocol::TProtocol *)" (?read@Statistics@format@parquet@@UEAAIPEAVTProtocol
      @protocol@thrift@apache@@@Z) referenced in function "[thunk]:public: virtual uns
      igned int __cdecl parquet::format::Statistics::read`vtordisp{4294967292,0}' (cla
      ss apache::thrift::protocol::TProtocol *)" (?read@Statistics@format@parquet@@$4P
      PPPPPPM@A@EAAIPEAVTProtocol@protocol@thrift@apache@@@Z)
      

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              apitrou Antoine Pitrou
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated: