Hi all, I have issues in compilation on debian jessie (8): /usr/lib/x86_64-linux-gnu/crti.o : unrecognized relocation (0x2a) in section `.init' Linux version 3.16.0-8-amd64 ([email protected]) (gcc version 4.9.2 (Debian 4.9.2-10+deb8u2) ) #1 SMP Debian 3.16.64-2 (2019-04-01) binutils 2.25-5+deb8u1 libgcc1:amd64 1:4.9.2-10+deb8u2 libc6:amd64 2.22-3 Can you please help me how can i fix that?
Have you used Interner Search Engines with that error line? If that does not help: What is it you are compiling? what command gives that error? what was done before that command?
Dear Taleman, First of all thank you for your answer. Yes, I've searched to this error line. I believe the most related was this: https://stackoverflow.com/questions/46058050/unable-to-compile-unrecognized-relocation But unfortunately I was not able to find the solution in my case sofar. Usually I find the solution to my problem on the Internet, but this time I struggle with it for days without the solution and that's why I asked for help. What is it you are compiling? I would like to install an additional PHP 7.3.5 with the help of this documentation: https://www.howtoforge.com/tutorial/how-to-install-php-7.1-on-debian-8-jessie/ I installed addional PHP version later but my system went wrong somewhere because I can not do it this time. what command gives that error? I went through the steps and I have problem with this command: ./configure --prefix=/opt/php-7.3.5 --with-pdo-pgsql --with-zlib-dir --with-freetype-dir --enable-mbstring --with-libxml-dir=/usr --enable-soap --enable-calendar --with-curl --with-mcrypt --with-zlib --with-gd --with-pgsql --disable-rpath --enable-inline-optimization --with-bz2 --with-zlib --enable-sockets --enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex --enable-exif --enable-bcmath --with-mhash --enable-zip --with-pcre-regex --with-pdo-mysql --with-mysqli --with-mysql-sock=/var/run/mysqld/mysqld.sock --with-jpeg-dir=/usr --with-png-dir=/usr --enable-gd-native-ttf --with-openssl --with-fpm-user=www-data --with-fpm-group=www-data --with-libdir=/lib/x86_64-linux-gnu --enable-ftp --with-imap --with-imap-ssl --with-kerberos --with-gettext --with-xmlrpc --with-xsl --enable-opcache --enable-fpm Error message #1: configure: WARNING: unrecognized options: --with-mcrypt, --enable-gd-native-ttf checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for a sed that does not truncate output... /bin/sed checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking target system type... x86_64-pc-linux-gnu checking for cc... cc checking whether the C compiler works... no configure: error: in `/usr/local/src/php7-build/php-7.3.5': configure: error: C compiler cannot create executables See `config.log' for more details Then I tried without --with-mcrypt and --enable-gd-native-ttf options Error message #2: checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for a sed that does not truncate output... /bin/sed checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking target system type... x86_64-pc-linux-gnu checking for cc... cc checking whether the C compiler works... no configure: error: in `/usr/local/src/php7-build/php-7.3.5': configure: error: C compiler cannot create executables See `config.log' for more details In config.log I see these lines (full config.log attached): /usr/bin/ld.bfd.real: /usr/lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu/crti.o: unrecognized relocation (0x2a) in section `.init' /usr/bin/ld.bfd.real: final link failed: Bad value collect2: error: ld returned 1 exit status what was done before that command? I've upgraded an old Debian wheezy to jessie with the help of this documentation: https://www.howtoforge.com/tutorial/how-to-upgrade-debian-wheezy-to-jessie-stable-release/ I have the same error message with apt-get upgrade. I got this error message: # apt-get upgrade Reading package lists... Done Building dependency tree Reading state information... Done Calculating upgrade... Done 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1 not fully installed or removed. After this operation, 0 B of additional disk space will be used. Do you want to continue? [Y/n] Setting up sa-compile (3.4.2-0+deb8u1) ... Running sa-compile (may take a long time) /usr/bin/ld.bfd.real: /usr/lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu/crti.o: unrecognized relocation (0x2a) in section `.init' /usr/bin/ld.bfd.real: final link failed: Bad value collect2: error: ld returned 1 exit status make: *** [blib/arch/auto/Mail/SpamAssassin/CompiledRegexps/body_0/body_0.so] Error 1 command 'make PREFIX=/tmp/.spamassassin13399Rc76O3tmp/ignored INSTALLSITEARCH=/var/lib/spamassassin/compiled/5.020/3.004002 >>/tmp/.spamassassin13399Rc76O3tmp/log' failed: exit 2 dpkg: error processing package sa-compile (--configure): subprocess installed post-installation script returned error exit status 25 Errors were encountered while processing: sa-compile E: Sub-process /usr/bin/dpkg returned an error code (1) Thank you for your help in advance, zion
I've just see that maybe I should need to send this question to the Installation/Configuration forum under ISPConfig. Please, move it to that forum if needed, but I'm not sure if it's ISPConfig installation related question or not. Thank you for your understanding.
If you have problems compiling PHP, use the already compiled packages provided by Ondrej Sury, member of Debian PHP maintainers group. There are Jessie versions also: https://packages.sury.org/php/dists/jessie/ From what I remember, mcrypt was removed after PHP 7.1, so that may be why our compilation fails. But I'm not sure, I have given up on compiling PHP since I trust Onder Sury more than my skills with PHP. There is tutorial: https://www.howtoforge.com/tutorial...fig-3-from-debian-packages-on-debian-8-and-9/
Thank you! This is perfect workaround for the additional PHP version. But as you can see above I have the same error message with apt-get upgrade for sa-compile (3.4.2-0+deb8u1), so the problem is not only when I try to compile PHP. # apt-get upgrade Reading package lists... Done Building dependency tree Reading state information... Done Calculating upgrade... Done 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1 not fully installed or removed. After this operation, 0 B of additional disk space will be used. Do you want to continue? [Y/n] Setting up sa-compile (3.4.2-0+deb8u1) ... Running sa-compile (may take a long time) /usr/bin/ld.bfd.real: /usr/lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu/crti.o: unrecognized relocation (0x2a) in section `.init' /usr/bin/ld.bfd.real: final link failed: Bad value collect2: error: ld returned 1 exit status make: *** [blib/arch/auto/Mail/SpamAssassin/CompiledRegexps/body_0/body_0.so] Error 1 command 'make PREFIX=/tmp/.spamassassin13399Rc76O3tmp/ignored INSTALLSITEARCH=/var/lib/spamassassin/compiled/5.020/3.004002 >>/tmp/.spamassassin13399Rc76O3tmp/log' failed: exit 2 dpkg: error processing package sa-compile (--configure): subprocess installed post-installation script returned error exit status 25 Errors were encountered while processing: sa-compile E: Sub-process /usr/bin/dpkg returned an error code (1)Do you know where should I start to debug this error?
What shows Code: apt-cache policy sa-compile cat /etc/apt/sources.list ls -lh /etc/apt/sources.list.d/ for i in $( ls /etc/apt/sources.list.d/*.list ) ; do echo $i ; cat $i ; done
These commands show: apt-cache policy sa-compile Code: sa-compile: Installed: 3.4.2-0+deb8u1 Candidate: 3.4.2-0+deb8u1 Version table: *** 3.4.2-0+deb8u1 0 500 http://security.debian.org/ jessie/updates/main amd64 Packages 100 /var/lib/dpkg/status 3.4.0-6 0 500 http://ftp.de.debian.org/debian/ jessie/main amd64 Packages 3.4.0-2~bpo70+1 0 100 http://archive.debian.org/debian/ wheezy-backports/main amd64 Packages cat /etc/apt/sources.list Code: ####################################################################################### # Hetzner APT-Mirror # deb http://mirror.hetzner.de/debian/packages wheezy main contrib non-free # deb http://mirror.hetzner.de/debian/security wheezy/updates main contrib non-free ####################################################################################### # # https://www.howtoforge.com/tutorial/how-to-upgrade-debian-wheezy-to-jessie-stable-release/ deb http://ftp.de.debian.org/debian/ jessie main contrib non-free deb-src http://ftp.de.debian.org/debian/ jessie main contrib non-free #deb http://httpredir.debian.org/debian jessie-updates main contrib non-free #deb-src http://httpredir.debian.org/debian jessie-updates main contrib non-free deb http://security.debian.org/ jessie/updates main contrib non-free deb-src http://security.debian.org/ jessie/updates main contrib non-free ls -lh /etc/apt/sources.list.d/ Code: total 24K -rw-r--r-- 1 root root 108 Mar 4 12:52 nodesource.list -rw-r--r-- 1 root root 108 Mar 4 12:52 nodesource.list.save -rw-r--r-- 1 root root 47 May 27 15:35 php.list -rw-r--r-- 1 root root 59 May 25 10:55 wheezy-backports.list -rw-r--r-- 1 root root 56 Mar 4 12:52 wheezy-backports.list.save for i in $( ls /etc/apt/sources.list.d/*.list ) ; do echo $i ; cat $i ; done Code: /etc/apt/sources.list.d/nodesource.list deb https://deb.nodesource.com/node_5.x wheezy main deb-src https://deb.nodesource.com/node_5.x wheezy main /etc/apt/sources.list.d/php.list deb https://packages.sury.org/php/ jessie main /etc/apt/sources.list.d/wheezy-backports.list deb http://archive.debian.org/debian wheezy-backports main
Remove file /etc/apt/sources.list.d/wheezy-backports.list now that you are running Jessie. And the nodesource.list uses wheezy repo, so it should be configured for jessie or be removed. As your compiles fail systematically, I suspect your compiling environtment is missing something or is configured wrong. Check you have setup our compiling host correctly. https://wiki.debian.org/BuildingTutorial https://www.aboutdebian.com/compile.htm
Thank you for the recommendation and for the links. I removed wheezy-backports and nodesource lists. I followed the instructions of the BuildingTutorial until "Rebuild without changes" when I got error message for "debuild -b -uc -us" command: Code: ~/src/debian/fdupes-1.51 # debuild -b -uc -us dpkg-buildpackage -rfakeroot -D -us -uc -b dpkg-buildpackage: warning: using a gain-root-command while being root dpkg-buildpackage: source package fdupes dpkg-buildpackage: source version 1.51-1 dpkg-buildpackage: source distribution unstable dpkg-buildpackage: source changed by Sandro Tosi <[email protected]> dpkg-source --before-build fdupes-1.51 dpkg-buildpackage: host architecture amd64 fakeroot debian/rules clean dh clean dh_testdir dh_auto_clean make[1]: Entering directory '/root/src/debian/fdupes-1.51' rm -f fdupes.o md5/md5.o rm -f fdupes rm -f *~ md5/*~ make[1]: Leaving directory '/root/src/debian/fdupes-1.51' dh_clean debian/rules build dh build dh_testdir dh_auto_configure dh_auto_build make[1]: Entering directory '/root/src/debian/fdupes-1.51' cc -Wall -O -g -I. -DVERSION=\"1.51\" -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -c -o fdupes.o fdupes.c fdupes.c: In function ‘printmatches’: fdupes.c:666:3: warning: format ‘%lld’ expects argument of type ‘long long int’, but argument 2 has type ‘off_t’ [-Wformat=] (files->size != 1) ? "s " : " "); ^ fdupes.c: In function ‘deletefiles’: fdupes.c:819:4: warning: format ‘%lld’ expects argument of type ‘long long int’, but argument 2 has type ‘off_t’ [-Wformat=] (files->size != 1) ? "s " : " "); ^ cc -Wall -O -g -I. -DVERSION=\"1.51\" -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -c -o md5/md5.o md5/md5.c cc -Wall -O -g -I. -DVERSION=\"1.51\" -D_FILE_OFFSET_BITS=64 -o fdupes fdupes.o md5/md5.o /usr/bin/ld.bfd.real: /usr/lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu/crti.o: unrecognized relocation (0x2a) in section `.init' /usr/bin/ld.bfd.real: final link failed: Bad value collect2: error: ld returned 1 exit status Makefile:103: recipe for target 'fdupes' failed make[1]: *** [fdupes] Error 1 make[1]: Leaving directory '/root/src/debian/fdupes-1.51' dh_auto_build: make -j1 returned exit code 2 debian/rules:14: recipe for target 'build' failed make: *** [build] Error 2 dpkg-buildpackage: error: debian/rules build gave error exit status 2 debuild: fatal error at line 1376: dpkg-buildpackage -rfakeroot -D -us -uc -b failed Then I continued with https://www.aboutdebian.com/compile.htm where I had a "Connection timed out" to "ftp ftp.scrollz.com" but I was able to donwnload the package with "wget http://www.scrollz.info/download/ScrollZ-1.9.3.tar.gz" Unfortunately ./configure gave error also: Code: /usr/local/src/ScrollZ-1.9.3 # ./configure creating cache ./config.cache this is ScrollZ version 1.9.3 + ircII version 20040511 checking for gcc... gcc checking whether the C compiler (gcc ) works... no configure: error: installation or configuration problem: C compiler cannot create executables. After these I've checked which package contains the file /usr/lib/x86_64-linux-gnu/crti.o Code: # dpkg -S /usr/lib/x86_64-linux-gnu/crti.o libc6-dev:amd64: /usr/lib/x86_64-linux-gnu/crti.o It's current version in my system is: Code: # apt-cache policy libc6-dev libc6-dev: Installed: 2.22-3 Candidate: 2.22-3 Version table: *** 2.22-3 0 100 /var/lib/dpkg/status 2.19-18+deb8u10 0 500 http://ftp.de.debian.org/debian/ jessie/main amd64 Packages 500 http://security.debian.org/ jessie/updates/main amd64 Packages But https://packages.debian.org/jessie/libc6-dev tells me that actual version for jessie is 2.19-18+deb8u10 so it seams somehow it's newer (2.22-3) than it should need to be. Then I searched for how to downgrade packages and I've found this comment: https://askubuntu.com/a/1112347 Here is the output of the command with aptitude (I prefer to use it instead of apt-get): Code: # aptitude install $(apt-show-versions | grep -P 'newer than version in archive' | awk -F: '{print $1"/jessie"}') The following packages will be DOWNGRADED: libc-bin libc-dev-bin libc6 libc6-dev libpq-dev libpq5 locales nodejs phppgadmin postgis postgis-doc postgresql postgresql-client postgresql-client-common postgresql-common postgresql-contrib postgresql-doc The following NEW packages will be installed: libarmadillo4{a} libarpack2{a} libc-ares2{a} libepsilon1{a} libgdal1h{ab} liblwgeom-2.1.4{a} libspatialite5{a} libv8-3.14.5{a} libxerces-c3.1{a} postgresql-9.4{a} postgresql-9.4-postgis-2.1{a} postgresql-9.4-postgis-scripts{a} postgresql-client-9.4{a} postgresql-contrib-9.4{a} postgresql-doc-9.4{a} The following packages will be REMOVED: libc-l10n{u} pgdg-keyring{u} rlwrap{u} The following partially installed packages will be configured: sa-compile 0 packages upgraded, 15 newly installed, 17 downgraded, 3 to remove and 11 not upgraded. Need to get 33.8 MB of archives. After unpacking 41.5 MB will be used. The following packages have unmet dependencies: postgresql-client-10 : Depends: libpq5 (>= 10.4) but 9.4.22-0+deb8u1 is to be installed. Depends: postgresql-client-common (>= 182~) but 165+deb8u3 is to be installed. postgresql-9.6 : Depends: postgresql-common (>= 171~) but 165+deb8u3 is to be installed. postgresql-10 : Depends: postgresql-common (>= 182~) but 165+deb8u3 is to be installed. postgresql-client-9.6 : Depends: libpq5 (>= 9.6.9) but 9.4.22-0+deb8u1 is to be installed. libgdal1h : Breaks: libgdal1 (<= 1.10.0-0~) but 1.9.0-3.1 is installed. The following actions will resolve these dependencies: Remove the following packages: 1) libgdal1 2) postgresql-10 3) postgresql-9.1-postgis-2.0 4) postgresql-9.1-postgis-2.1 5) postgresql-9.1-postgis-2.2 6) postgresql-9.6 7) postgresql-9.6-postgis-2.3 8) postgresql-client-10 9) postgresql-client-9.6 10) postgresql-contrib-9.6 Leave the following dependencies unresolved: 11) postgresql-9.1-postgis-2.2-scripts recommends postgresql-9.1-postgis-2.2 12) postgresql-9.6-postgis-2.3-scripts recommends postgresql-9.6-postgis-2.3 Accept this solution? [Y/n/q/?] So I messed up my system when I used postgresql versions earlier I don't need posgresql right now, so I accepted the above solution of aptitude. Finaly sa-complie was updated successfully: Code: # aptitude upgrade No packages will be installed, upgraded, or removed. 0 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded. Need to get 0 B of archives. After unpacking 0 B will be used. And just for checking ./configure of PHP 7.3.5 didn't give me the same error message as it was above. Thank you for your help in start to debug my system Taleman!
You should not compile using root account. Use a normal user for the compiles. When you need to install the compiled files you need root privilegies if they are to be installed to the system. As a general rule, avoid using root when root privileges are not needed.