Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

install error #24

Open
digoal opened this issue Jan 12, 2024 · 2 comments
Open

install error #24

digoal opened this issue Jan 12, 2024 · 2 comments

Comments

@digoal
Copy link

digoal commented Jan 12, 2024

cd /tmp
git clone --depth 1 -b apache-arrow-12.0.0 https://github.com/apache/arrow.git  
cd /tmp/arrow/cpp  
mkdir build-release  
cd /tmp/arrow/cpp/build-release  
cmake -DARROW_DEPENDENCY_SOURCE=BUNDLED ..  
make -j4  
make install  

cd /tmp
apt-get install -y libcurl4-openssl-dev uuid-dev libpulse-dev  
git clone --depth 1 -b 1.11.91 https://github.com/aws/aws-sdk-cpp  
cd /tmp/aws-sdk-cpp  
git submodule update --init --recursive --depth 1  
mkdir build  
cd /tmp/aws-sdk-cpp/build  
cmake .. -DCMAKE_BUILD_TYPE=Release -DBUILD_ONLY="s3;core"  
make -j4  
make install  

error at:

cd /tmp
git clone --depth 1 -b v1.1.0 https://github.com/pgspider/parquet_s3_fdw  
cd /tmp/parquet_s3_fdw  
USE_PGXS=1 make  
g++ -Wall -Wpointer-arith -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wformat-security -fno-strict-aliasing -fwrapv -moutline-atomics -g -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -std=c++17 -O3 -fPIC -Wno-register -D_GLIBCXX_USE_CXX11_ABI=0 -I. -I./ -I/usr/include/postgresql/14/server -I/usr/include/postgresql/internal  -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2   -c -o src/reader.o src/reader.cpp
In file included from /usr/include/parquet/metadata.h:29,
                 from /usr/include/parquet/file_reader.h:27,
                 from /usr/include/parquet/arrow/reader.h:26,
                 from src/reader.cpp:19:
/usr/include/parquet/platform.h:90:37: error: ‘CodecOptions’ in namespace ‘arrow::util’ does not name a type
   90 | using CodecOptions = ::arrow::util::CodecOptions;
      |                                     ^~~~~~~~~~~~
In file included from /usr/include/parquet/schema.h:32,
                 from /usr/include/parquet/encryption/encryption.h:26,
                 from /usr/include/parquet/properties.h:30,
                 from /usr/include/parquet/metadata.h:30,
                 from /usr/include/parquet/file_reader.h:27,
                 from /usr/include/parquet/arrow/reader.h:26,
                 from src/reader.cpp:19:
/usr/include/parquet/types.h:490:39: error: ‘CodecOptions’ does not name a type
  490 |                                 const CodecOptions& codec_options);
      |                                       ^~~~~~~~~~~~
In file included from /usr/include/parquet/metadata.h:30,
                 from /usr/include/parquet/file_reader.h:27,
                 from /usr/include/parquet/arrow/reader.h:26,
                 from src/reader.cpp:19:
/usr/include/parquet/properties.h:181:48: error: ‘CodecOptions’ was not declared in this scope
  181 |   void set_codec_options(const std::shared_ptr<CodecOptions>& codec_options) {
      |                                                ^~~~~~~~~~~~
/usr/include/parquet/properties.h:181:60: error: template argument 1 is invalid
  181 |   void set_codec_options(const std::shared_ptr<CodecOptions>& codec_options) {
      |                                                            ^
/usr/include/parquet/properties.h:206:25: error: ‘CodecOptions’ was not declared in this scope
  206 |   const std::shared_ptr<CodecOptions>& codec_options() const { return codec_options_; }
      |                         ^~~~~~~~~~~~
/usr/include/parquet/properties.h:206:37: error: template argument 1 is invalid
  206 |   const std::shared_ptr<CodecOptions>& codec_options() const { return codec_options_; }
      |                                     ^
/usr/include/parquet/properties.h:216:19: error: ‘CodecOptions’ was not declared in this scope; did you mean ‘codec_options’?
  216 |   std::shared_ptr<CodecOptions> codec_options_;
      |                   ^~~~~~~~~~~~
      |                   codec_options
/usr/include/parquet/properties.h:216:31: error: template argument 1 is invalid
  216 |   std::shared_ptr<CodecOptions> codec_options_;
      |                               ^
/usr/include/parquet/properties.h: In member function ‘void parquet::ColumnProperties::set_compression_level(int)’:
/usr/include/parquet/properties.h:176:41: error: ‘CodecOptions’ was not declared in this scope; did you mean ‘codec_options’?
  176 |       codec_options_ = std::make_shared<CodecOptions>();
      |                                         ^~~~~~~~~~~~
      |                                         codec_options
/usr/include/parquet/properties.h:176:55: error: no matching function for call to ‘make_shared<<expression error> >()’
  176 |       codec_options_ = std::make_shared<CodecOptions>();
      |                                                       ^
In file included from /usr/include/c++/10/memory:84,
                 from /usr/local/include/arrow/array/array_base.h:22,
                 from /usr/local/include/arrow/array.h:41,
                 from /usr/local/include/arrow/api.h:22,
                 from src/reader.cpp:16:
/usr/include/c++/10/bits/shared_ptr.h:872:5: note: candidate: ‘template<class _Tp, class ... _Args> std::shared_ptr<_Tp> std::make_shared(_Args&& ...)’
  872 |     make_shared(_Args&&... __args)
      |     ^~~~~~~~~~~
/usr/include/c++/10/bits/shared_ptr.h:872:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/parquet/metadata.h:30,
                 from /usr/include/parquet/file_reader.h:27,
                 from /usr/include/parquet/arrow/reader.h:26,
                 from src/reader.cpp:19:
/usr/include/parquet/properties.h:176:55: error: template argument 1 is invalid
  176 |       codec_options_ = std::make_shared<CodecOptions>();
      |                                                       ^
/usr/include/parquet/properties.h:178:19: error: base operand of ‘->’ is not a pointer
  178 |     codec_options_->compression_level = compression_level;
      |                   ^~
/usr/include/parquet/properties.h: In member function ‘int parquet::ColumnProperties::compression_level() const’:
/usr/include/parquet/properties.h:203:26: error: base operand of ‘->’ is not a pointer
  203 |     return codec_options_->compression_level;
      |                          ^~
/usr/include/parquet/properties.h: At global scope:
/usr/include/parquet/properties.h:480:46: error: ‘CodecOptions’ is not a member of ‘arrow::util’
  480 |         const std::shared_ptr<::arrow::util::CodecOptions>& codec_options) {
      |                                              ^~~~~~~~~~~~
/usr/include/parquet/properties.h:480:58: error: template argument 1 is invalid
  480 |         const std::shared_ptr<::arrow::util::CodecOptions>& codec_options) {
      |                                                          ^
/usr/include/parquet/properties.h:489:46: error: ‘CodecOptions’ is not a member of ‘arrow::util’
  489 |         const std::shared_ptr<::arrow::util::CodecOptions>& codec_options) {
      |                                              ^~~~~~~~~~~~
/usr/include/parquet/properties.h:489:58: error: template argument 1 is invalid
  489 |         const std::shared_ptr<::arrow::util::CodecOptions>& codec_options) {
      |                                                          ^
/usr/include/parquet/properties.h:498:46: error: ‘CodecOptions’ is not a member of ‘arrow::util’
  498 |         const std::shared_ptr<::arrow::util::CodecOptions>& codec_options) {
      |                                              ^~~~~~~~~~~~
/usr/include/parquet/properties.h:498:58: error: template argument 1 is invalid
  498 |         const std::shared_ptr<::arrow::util::CodecOptions>& codec_options) {
      |                                                          ^
/usr/include/parquet/properties.h:688:53: error: ‘CodecOptions’ was not declared in this scope; did you mean ‘codec_options’?
  688 |     std::unordered_map<std::string, std::shared_ptr<CodecOptions>> codec_options_;
      |                                                     ^~~~~~~~~~~~
      |                                                     codec_options
/usr/include/parquet/properties.h:688:53: error: template argument 1 is invalid
/usr/include/parquet/properties.h:688:65: error: template argument 2 is invalid
  688 |     std::unordered_map<std::string, std::shared_ptr<CodecOptions>> codec_options_;
      |                                                                 ^~
/usr/include/parquet/properties.h:688:65: error: template argument 5 is invalid
/usr/include/parquet/properties.h:751:25: error: ‘CodecOptions’ was not declared in this scope
  751 |   const std::shared_ptr<CodecOptions> codec_options(
      |                         ^~~~~~~~~~~~
/usr/include/parquet/properties.h:751:37: error: template argument 1 is invalid
  751 |   const std::shared_ptr<CodecOptions> codec_options(
      |                                     ^
/usr/include/parquet/properties.h: In member function ‘parquet::WriterProperties::Builder* parquet::WriterProperties::Builder::compression_level(const string&, int)’:
/usr/include/parquet/properties.h:451:26: error: no match for ‘operator[]’ (operand types are ‘int’ and ‘const string’ {aka ‘const std::basic_string<char>’})
  451 |       if (!codec_options_[path]) {
      |                          ^
/usr/include/parquet/properties.h:452:23: error: no match for ‘operator[]’ (operand types are ‘int’ and ‘const string’ {aka ‘const std::basic_string<char>’})
  452 |         codec_options_[path] = std::make_shared<CodecOptions>();
      |                       ^
/usr/include/parquet/properties.h:452:49: error: ‘CodecOptions’ was not declared in this scope; did you mean ‘codec_options’?
  452 |         codec_options_[path] = std::make_shared<CodecOptions>();
      |                                                 ^~~~~~~~~~~~
      |                                                 codec_options
/usr/include/parquet/properties.h:452:63: error: no matching function for call to ‘make_shared<<expression error> >()’
  452 |         codec_options_[path] = std::make_shared<CodecOptions>();
      |                                                               ^
In file included from /usr/include/c++/10/memory:84,
                 from /usr/local/include/arrow/array/array_base.h:22,
                 from /usr/local/include/arrow/array.h:41,
                 from /usr/local/include/arrow/api.h:22,
                 from src/reader.cpp:16:
/usr/include/c++/10/bits/shared_ptr.h:872:5: note: candidate: ‘template<class _Tp, class ... _Args> std::shared_ptr<_Tp> std::make_shared(_Args&& ...)’
  872 |     make_shared(_Args&&... __args)
      |     ^~~~~~~~~~~
/usr/include/c++/10/bits/shared_ptr.h:872:5: note:   template argument deduction/substitution failed:
In file included from /usr/include/parquet/metadata.h:30,
                 from /usr/include/parquet/file_reader.h:27,
                 from /usr/include/parquet/arrow/reader.h:26,
                 from src/reader.cpp:19:
/usr/include/parquet/properties.h:452:63: error: template argument 1 is invalid
  452 |         codec_options_[path] = std::make_shared<CodecOptions>();
      |                                                               ^
/usr/include/parquet/properties.h:454:21: error: no match for ‘operator[]’ (operand types are ‘int’ and ‘const string’ {aka ‘const std::basic_string<char>’})
  454 |       codec_options_[path]->compression_level = compression_level;
      |                     ^
/usr/include/parquet/properties.h: In member function ‘parquet::WriterProperties::Builder* parquet::WriterProperties::Builder::codec_options(const string&, const int&)’:
/usr/include/parquet/properties.h:490:21: error: no match for ‘operator[]’ (operand types are ‘int’ and ‘const string’ {aka ‘const std::basic_string<char>’})
  490 |       codec_options_[path] = codec_options;
      |                     ^
/usr/include/parquet/properties.h: In member function ‘std::shared_ptr<parquet::WriterProperties> parquet::WriterProperties::Builder::build()’:
/usr/include/parquet/properties.h:650:31: error: ‘begin’ was not declared in this scope; did you mean ‘std::begin’?
  650 |       for (const auto& item : codec_options_)
      |                               ^~~~~~~~~~~~~~
      |                               std::begin
In file included from /usr/include/c++/10/list:62,
                 from src/reader.cpp:14:
/usr/include/c++/10/bits/range_access.h:108:37: note: ‘std::begin’ declared here
  108 |   template<typename _Tp> const _Tp* begin(const valarray<_Tp>&);
      |                                     ^~~~~
In file included from /usr/include/parquet/metadata.h:30,
                 from /usr/include/parquet/file_reader.h:27,
                 from /usr/include/parquet/arrow/reader.h:26,
                 from src/reader.cpp:19:
/usr/include/parquet/properties.h:650:31: error: ‘end’ was not declared in this scope; did you mean ‘std::end’?
  650 |       for (const auto& item : codec_options_)
      |                               ^~~~~~~~~~~~~~
      |                               std::end
In file included from /usr/include/c++/10/list:62,
                 from src/reader.cpp:14:
/usr/include/c++/10/bits/range_access.h:110:37: note: ‘std::end’ declared here
  110 |   template<typename _Tp> const _Tp* end(const valarray<_Tp>&);
      |                                     ^~~
make: *** [<builtin>: src/reader.o] Error 1
@guillermovil
Copy link

Did you solve it? I got an error too, another error in the same step of the installation.

@lamdn1409
Copy link

lamdn1409 commented Nov 5, 2024

@digoal @guillermovil

I can build parquet_s3_fdw with the following steps on Rocky Linux 8.
I confirmed with cmake 3.26.3 and gcc 11.0.

  1. Build AWS SDK:
$git clone https://github.com/aws/aws-sdk-cpp
$cd aws-sdk-cpp 
$git checkout -b 1.11.91 refs/tags/1.11.91
$git submodule update --init --recursive
$cmake -H. -Bbuild -DBUILD_ONLY="config;transfer;identity-management;cognito-identity;sts;s3;core" -DENABLE_TESTING=OFF -DBUILD_SHARED_LIBS=ON

$make -C build
$sudo make -C build install
  1. Build Arrow support parquet library
$ git clone https://github.com/apache/arrow.git
$ cd arrow
$ git checkout -b apache-arrow-12.0.0 refs/tags/apache-arrow-12.0.0
$ git submodule update --init --recursive
$ cd cpp
 
$ cmake -H. -Bbuild -DARROW_PARQUET=ON -DARROW_S3=ON -DBUILD_SHARED_LIBS=ON
$ make -C build
$ sudo make -C build install
  1. Build parquet_s3_fdw
$git clone https://github.com/pgspider/parquet_s3_fdw 
$cd parquet_s3_fdw  
$git checkout v1.1.0
$USE_PGXS=1 make  

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants