[ 
https://issues.apache.org/jira/browse/ARROW-5440?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16864145#comment-16864145
 ] 

Tenzin Rigden edited comment on ARROW-5440 at 6/14/19 2:39 PM:
---------------------------------------------------------------

Hello,

As [~jstoneham] mentioned, the issue is that the compiled binary is dynamically 
linking this libstd library meaning you have to have rust/rustup or that libstd 
library installed on the machine you're running the parquet binary on. I'm 
pretty sure the libstd should be statically linked like it usually is.

On our project which has many other dependencies, when we include the parquet 
crate, we get the 
{code:java}
libstd-44988553032616b2.so => not found{code}
issue, but if we remove it, that dependency goes away.[^serde_json_test.tar.gz]

I attached a simple serde_json test code as an example that also doesn't have 
the libstd dependency
{code:java}
[centos@_ serde_json_test]$ ldd target/release/serde_json_test

linux-vdso.so.1 =>  (0x00007ffdc35c6000)

libdl.so.2 => /lib64/libdl.so.2 (0x00007f5780cb3000)

librt.so.1 => /lib64/librt.so.1 (0x00007f5780aab000)

libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f578088f000)

libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f5780679000)

libc.so.6 => /lib64/libc.so.6 (0x00007f57802ac000)

/lib64/ld-linux-x86-64.so.2 (0x00007f5781102000){code}
 

 

It's possible it's a parquet dependency that's causing this issue.

Thanks


was (Author: rigden33):
Hello,

As [~jstoneham] mentioned, the issue is that the compiled binary is dynamically 
linking this libstd library meaning you have to have rust/rustup or that libstd 
library installed on the machine you're running the parquet binary on. I'm 
pretty sure the libstd should be statically linked like it usually is.

On our project which has many other dependencies, when we include the parquet 
crate, we get the 
{code:java}
libstd-44988553032616b2.so => not found{code}
{{}}
 issue, but if we remove it, that dependency goes away.[^serde_json_test.tar.gz]

I attached a simple serde_json test code as an example that also doesn't have 
the libstd dependency
{code:java}
[centos@_ serde_json_test]$ ldd target/release/serde_json_test

linux-vdso.so.1 =>  (0x00007ffdc35c6000)

libdl.so.2 => /lib64/libdl.so.2 (0x00007f5780cb3000)

librt.so.1 => /lib64/librt.so.1 (0x00007f5780aab000)

libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f578088f000)

libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f5780679000)

libc.so.6 => /lib64/libc.so.6 (0x00007f57802ac000)

/lib64/ld-linux-x86-64.so.2 (0x00007f5781102000){code}
 

 

It's possible it's a parquet dependency that's causing this issue.

Thanks

> [Rust][Parquet] Rust Parquet requiring libstd-xxx.so dependency on centos
> -------------------------------------------------------------------------
>
>                 Key: ARROW-5440
>                 URL: https://issues.apache.org/jira/browse/ARROW-5440
>             Project: Apache Arrow
>          Issue Type: Bug
>          Components: Rust
>         Environment: CentOS Linux release 7.6.1810 (Core) 
>            Reporter: Tenzin Rigden
>            Priority: Major
>         Attachments: parquet-test-libstd.tar.gz, serde_json_test.tar.gz
>
>
> Hello,
> In the rust parquet implementation ([https://github.com/sunchao/parquet-rs]) 
> on centos, the binary created has a `libstd-hash.so` shared library 
> dependency that is causing issues since it's a shared library found in the 
> rustup directory. This `libstd-hash.so` dependency isn't there on any other 
> rust binaries I've made before. This dependency means that I can't run this 
> binary anywhere where rustup isn't installed with that exact libstd library.
> This is not an issue on Mac.
> I've attached the rust files and here is the command line output below.
> {code:java|title=cli-output|borderStyle=solid}
> [centos@_ parquet-test]$ cat /etc/centos-release
> CentOS Linux release 7.6.1810 (Core)
> [centos@_ parquet-test]$ rustc --version
> rustc 1.36.0-nightly (e70d5386d 2019-05-27)
> [centos@_ parquet-test]$ ldd target/release/parquet-test
> linux-vdso.so.1 =>  (0x00007ffd02fee000)
> libstd-44988553032616b2.so => not found
> librt.so.1 => /lib64/librt.so.1 (0x00007f6ecd209000)
> libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f6eccfed000)
> libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f6eccdd7000)
> libc.so.6 => /lib64/libc.so.6 (0x00007f6ecca0a000)
> libm.so.6 => /lib64/libm.so.6 (0x00007f6ecc708000)
> /lib64/ld-linux-x86-64.so.2 (0x00007f6ecd8b1000)
> [centos@_ parquet-test]$ ls -l 
> ~/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/libstd-44988553032616b2.so
> -rw-r--r--. 1 centos centos 5623568 May 27 21:46 
> /home/centos/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/libstd-44988553032616b2.so
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to