Summary: | dev-lang/sassc-3.5.0 - ld: /usr/lib/libsass.a(sass.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | David Abbott (RETIRED) <dabbott> |
Component: | Current packages | Assignee: | Virgil Dupras (RETIRED) <vdupras> |
Status: | RESOLVED WORKSFORME | ||
Severity: | normal | ||
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
emerge --info
build.log emerge -pqv |
Description
David Abbott (RETIRED)
![]() Created attachment 576200 [details]
emerge --info
Created attachment 576202 [details]
build.log
Created attachment 576204 [details]
emerge -pqv
I got it to install by using static-libs [ebuild U *] dev-libs/libsass-9999:0/1::gentoo [3.5.2:0/1::gentoo] USE="static-libs*" ABI_X86="32 (64) (-x32)" 0 KiB I have troubles reproducing. Isn't this only a case of a profile having recently changed to -fPIC without having rebuilt libsass? Do you still get the problem if you put your use flags as they were and recompile? Recompiled libsass [ebuild R *] dev-libs/libsass-9999:0/1::gentoo USE="-static-libs" ABI_X86="32 (64) (-x32)" 0 KiB now failed with; make -j7 make all-am make[1]: Entering directory '/var/tmp/portage/dev-lang/sassc-9999/work/sassc-9999' x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I./include -I. -Wall -O2 -O2 -march=native -O2 -pipe -c -o sassc.o sassc.c /bin/sh ./libtool --tag=CXX --mode=link x86_64-pc-linux-gnu-g++ -Wall -O2 -std=c++0x -O2 -march=native -O2 -pipe -Wall -O2 -std=c++0x -Wl,-O1 -Wl,--as-needed -o sassc sassc.o -lsass -ldl libtool: link: x86_64-pc-linux-gnu-g++ -Wall -O2 -std=c++0x -O2 -march=native -O2 -pipe -Wall -O2 -std=c++0x -Wl,-O1 -o sassc sassc.o -Wl,--as-needed /usr/lib/libsass.a -ldl x86_64-pc-linux-gnu-g++: error: /usr/lib/libsass.a: No such file or directory make[1]: *** [GNUmakefile:487: sassc] Error 1 make[1]: Leaving directory '/var/tmp/portage/dev-lang/sassc-9999/work/sassc-9999' make: *** [GNUmakefile:381: all] Error 2 * ERROR: dev-lang/sassc-9999::gentoo failed (compile phase): Recompiled libsass [ebuild R *] dev-libs/libsass-9999:0/1::gentoo USE="static-libs" ABI_X86="32 (64) (-x32)" 0 KiB qlist libsass /usr/lib32/pkgconfig/libsass.pc /usr/lib32/libsass.so.1 /usr/lib32/libsass.so /usr/lib32/libsass.so.1.0.0 /usr/lib32/libsass.a /usr/include/sass/base.h /usr/include/sass/values.h /usr/include/sass/version.h /usr/include/sass/context.h /usr/include/sass/functions.h /usr/include/sass.h /usr/include/sass2scss.h /usr/lib64/pkgconfig/libsass.pc /usr/lib64/libsass.so.1 /usr/lib64/libsass.so /usr/lib64/libsass.so.1.0.0 /usr/lib64/libsass.a sassc installed fine I don't understand why you end up with "/usr/lib/libsass.a" in your link command in the build log. I don't have much experience with building static libraries in gentoo, but I don't see what in your emerge --info gets you this. In my tests, it links with -lsass. |