Skip to content

relocation R_X86_64_32 against `.rodata' can not be used when making a shared object #3

@JeanMertz

Description

@JeanMertz

Thank you for this crate, and the json-query project.

I've been working with the crate recently, and things are working wonderfully. I'm using the bundled feature of json-query to support statically linking to the required libjq dependency.

This worked on macOS, and also in an "alpine" based container, but I've since pushed my code changes and it seems that Travis is having some issues.

Travis is running the Ubuntu Xenial release and it's throwing the following error:

  = note: /usr/bin/ld: /home/travis/build/blendle/automaat/target/debug/deps/libjq_sys-e398fc3ed0925020.rlib(execute.o):
relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; 
recompile with -fPIC
          /home/travis/build/blendle/automaat/target/debug/deps/libjq_sys-e398fc3ed0925020.rlib: error adding symbols: Bad value
          collect2: error: ld returned 1 exit status

The build is publicly available here.

I've cleared the Travis cache, but the problem did not go away. The compiler is pretty clear with the recompile with -fPIC message, but I'm not quite sure how or where to pass those flags (or if it would even solve the problem).

Do you have any pointers that I could follow to debug this problem? Thanks!

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions