-
Notifications
You must be signed in to change notification settings - Fork 1
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
cargo install parquet2json
failure on Ubuntu
#19
Comments
Missing
|
cargo install parquet2json
failure on Amazon Linuxcargo install parquet2json
failure on Ubuntu
|
Attempting to build/install from source: git clone https://github.com/jupiter/parquet2json
cd parquet2json
# ✅ OK, includes an output line `Compiling openssl-sys v0.9.87`
cargo check
# ✅ Also OK, also says `Compiling openssl-sys v0.9.87`
cargo build
# ❌ fails, same `rm: Permission denied` error as above,
# Also: "error: failed to run custom build command for `openssl-sys v0.9.93`"
cargo install --path . Full output is >1300 lines, here it is in a gist. Not sure why the Also can't
|
I'm able to curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | bash -s -- -y
. .bashrc
sudo apt-get update -y
sudo apt-get install -y gcc make perl
cargo install parquet2json
parquet2json --version
# parquet2json 2.0.2 I guess some state got messed up on my previous VM, no idea what might have happened. I'll just move to a new VM, if I can repro it again I'll follow up here, closing for now. |
Thanks for sharing. Might be useful to someone in future. I initially tried to not have an openssl dependency and we should maybe look into Rust-only alternatives again. |
I debugged it in ryan-williams/parquet2json-install-error:
Here's a Dockerfile that repros the issue: FROM ubuntu
# Install Rust (and a few apt packages needed to build parquet2json and its dependencies)
ENV PATH="/root/.cargo/bin:${PATH}"
RUN apt-get update \
&& apt-get install -y curl gcc perl make \
&& curl https://sh.rustup.rs -sSf | bash -s -- -y
WORKDIR /root
# Putting a directory with basename `rm` on `$PATH` (by its absolute path) breaks `openssl-sys`
# build inside `cargo install parquet2json` below
ENV dir=/root/a/b/c
RUN mkdir -p $dir/rm
ENV PATH="$dir:${PATH}"
RUN cargo install parquet2json Here's a GHA workflow: name: Repro "cargo install parquet2json" failure
on:
push:
jobs:
repro:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- run: |
# Putting a directory with basename `rm` on `$PATH` breaks `openssl-sys` build inside `cargo install parquet2json` below
dir=$PWD/a/b/c
mkdir -p $dir/rm
export PATH="$dir:$PATH"
cargo install parquet2json |
explain dir name, based on jupiter/parquet2json#19 (comment)
cargo install parquet2json
Seems that something is failing while building the
openssl-sys
create.Update: I was missing
make
.sudo apt-get install -y make
let it get further, though it's still failing. See below.This is on an EC2 instance, AMI
ami-007855ac798b5175e
, "ubuntu/images/hvm-ssd/ubuntu-jammy-22.04-amd64-server-20230325". Will keep digging… maybe I did something previously on this VM that is causing an issue, but it's not clear to me from the output what the issue could be.rustup show
uname -a # Linux ip-172-31-51-13 6.2.0-1013-aws #13~22.04.1-Ubuntu SMP Fri Sep 8 17:29:56 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
The text was updated successfully, but these errors were encountered: