GNU bug report logs - #59967
Fix missing -fPIC parameter when compiling tree-sitter module

Previous Next

Package: emacs;

Reported by: lux <lx <at> shellcodes.org>

Date: Sun, 11 Dec 2022 15:37:02 UTC

Severity: normal

Done: Yuan Fu <casouri <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: lux <lx <at> shellcodes.org>
Subject: bug#59967: closed (Re: bug#59967: Fix missing -fPIC parameter
 when compiling  tree-sitter module)
Date: Mon, 12 Dec 2022 22:43:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#59967: Fix missing -fPIC parameter when compiling tree-sitter module

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 59967 <at> debbugs.gnu.org.

-- 
59967: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=59967
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Yuan Fu <casouri <at> gmail.com>
To: lx <at> shellcodes.org
Cc: 59967-done <at> debbugs.gnu.org
Subject: Re: bug#59967: Fix missing -fPIC parameter when compiling 
 tree-sitter module
Date: Mon, 12 Dec 2022 14:42:20 -0800
lux <lx <at> shellcodes.org> writes:

> GCC in Fedora Linux does not use --enable-default-pie by default, so
> I will encounter the following errors when running the build.sh:
>
>
> $ ./build.sh c     
> Building c
> /usr/bin/ld: parser.o: relocation R_X86_64_32S against `.rodata' can
> not be used when making a shared object; recompile with -fPIC
> /usr/bin/ld: failed to set dynamic section sizes: bad value collect2:
> error: ld returned 1 exit status cp: cannot stat 'libtree-sitter-c.so':
> No such file or directory
>
> Following are my gcc configure information:
>
> $ gcc -v
> Using built-in specs.
> COLLECT_GCC=gcc
> COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/12/lto-wrapper
> OFFLOAD_TARGET_NAMES=nvptx-none
> OFFLOAD_TARGET_DEFAULT=1
> Target: x86_64-redhat-linux
> Configured with: ../configure --enable-bootstrap
> --enable-languages=c,c++,fortran,objc,obj-c++,ada,go,d,lto
> --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info
> --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared
> --enable-threads=posix --enable-checking=release --enable-multilib
> --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions
> --enable-gnu-unique-object --enable-linker-build-id
> --with-gcc-major-version-only --enable-libstdcxx-backtrace
> --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array
> --with-isl=/builddir/build/BUILD/gcc-12.2.1-20221121/obj-x86_64-redhat-linux/isl-install
> --enable-offload-targets=nvptx-none --without-cuda-driver
> --enable-offload-defaulted --enable-gnu-indirect-function --enable-cet
> --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux
> --with-build-config=bootstrap-lto --enable-link-serialization=1 Thread
> model: posix Supported LTO compression algorithms: zlib zstd gcc
> version 12.2.1 20221121 (Red Hat 12.2.1-4) (GCC) 
>
> I added -fPIC option in build.sh.

Ah, yes, thank you! I applied the patch.

Yuan

[Message part 3 (message/rfc822, inline)]
From: lux <lx <at> shellcodes.org>
To: "bug-gnu-emacs <at> gnu.org" <bug-gnu-emacs <at> gnu.org>
Subject: Fix missing -fPIC parameter when compiling tree-sitter module
Date: Sun, 11 Dec 2022 23:35:53 +0800
[Message part 4 (text/plain, inline)]
GCC in Fedora Linux does not use --enable-default-pie by default, so
I will encounter the following errors when running the build.sh:


$ ./build.sh c     
Building c
/usr/bin/ld: parser.o: relocation R_X86_64_32S against `.rodata' can
not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: failed to set dynamic section sizes: bad value collect2:
error: ld returned 1 exit status cp: cannot stat 'libtree-sitter-c.so':
No such file or directory

Following are my gcc configure information:

$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/12/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-redhat-linux
Configured with: ../configure --enable-bootstrap
--enable-languages=c,c++,fortran,objc,obj-c++,ada,go,d,lto
--prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info
--with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared
--enable-threads=posix --enable-checking=release --enable-multilib
--with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions
--enable-gnu-unique-object --enable-linker-build-id
--with-gcc-major-version-only --enable-libstdcxx-backtrace
--with-linker-hash-style=gnu --enable-plugin --enable-initfini-array
--with-isl=/builddir/build/BUILD/gcc-12.2.1-20221121/obj-x86_64-redhat-linux/isl-install
--enable-offload-targets=nvptx-none --without-cuda-driver
--enable-offload-defaulted --enable-gnu-indirect-function --enable-cet
--with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux
--with-build-config=bootstrap-lto --enable-link-serialization=1 Thread
model: posix Supported LTO compression algorithms: zlib zstd gcc
version 12.2.1 20221121 (Red Hat 12.2.1-4) (GCC) 

I added -fPIC option in build.sh.

[0001-admin-notes-tree-sitter-build-module-build.sh-Add-fP.patch (text/x-patch, attachment)]

This bug report was last modified 2 years and 242 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.