Okay, so I think now *something* corrupted libc6-dev:

Firstly, the initial checks that were asked for:
root@bnesecrf0:~# find /usr/include -name types.h
/usr/include/asm-generic/types.h
/usr/include/c++/4.8/parallel/types.h
/usr/include/c++/5/parallel/types.h
/usr/include/linux/iio/types.h
/usr/include/linux/types.h
/usr/include/rpc/types.h
/usr/include/x86_64-linux-gnu/asm/types.h
/usr/include/x86_64-linux-gnu/bits/types.h
/usr/include/sys/types.h
root@bnesecrf0:~# find /usr/lib -name perl.h
/usr/lib/x86_64-linux-gnu/perl/5.22.1/CORE/perl.h
root@bnesecrf0:~# dpkg -l libc6-dev
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                                     Version                   
Architecture              Description
+++-========================================-=========================-=========================-======================================================================================
ii  libc6-dev:amd64                          2.23-0ubuntu10            amd64    
                 GNU C Library: Development Libraries and Header Files

If I try to install it, it tells me it's already up-to-date, then sa-compile 
falls over:
root@bnesecrf0:~# apt-get install -y libc6-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
libc6-dev is already the newest version (2.23-0ubuntu10).
0 to upgrade, 0 to newly install, 0 to remove and 80 not to upgrade.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up sa-compile (3.4.2-0ubuntu0.16.04.1) ...
Running sa-compile (may take a long time)
In file included from body_0.xs:2:0:
/usr/lib/x86_64-linux-gnu/perl/5.22/CORE/perl.h:701:23: fatal error: 
sys/types.h: No such file or directory
compilation terminated.
make: *** [body_0.o] Error 1
command 'make PREFIX=/tmp/.spamassassin27817YiiVnctmp/ignored 
INSTALLSITEARCH=/var/lib/spamassassin/compiled/5.022/3.004002 
>>/tmp/.spamassassin27817YiiVnctmp/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)

However forcing a re-installation had an interesting effect:
root@bnesecrf0:~# apt-get install --reinstall -y libc6-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 to upgrade, 0 to newly install, 1 to reinstall, 0 to remove and 80 not to 
upgrade.
1 not fully installed or removed.
Need to get 0 B/2,079 kB of archives.
After this operation, 0 B of additional disk space will be used.
(Reading database ... 174921 files and directories currently installed.)
Preparing to unpack .../libc6-dev_2.23-0ubuntu10_amd64.deb ...
Unpacking libc6-dev:amd64 (2.23-0ubuntu10) over (2.23-0ubuntu10) ...
Setting up libc6-dev:amd64 (2.23-0ubuntu10) ...
Setting up sa-compile (3.4.2-0ubuntu0.16.04.1) ...
Running sa-compile (may take a long time)
root@bnesecrf0:~# sa-compile
Feb 20 09:40:51.952 [28456] info: generic: base extraction starting. this can 
take a while...
Feb 20 09:40:51.952 [28456] info: generic: extracting from rules of type body_0
100% 
[======================================================================================================================================================]
 2438.47 rules/sec 00m00s DONE
100% 
[======================================================================================================================================================]
 1164.76 bases/sec 00m02s DONE
Feb 20 09:40:54.279 [28456] info: body_0: 1164 base strings extracted in 3 
seconds
cd /tmp/.spamassassin28456guVjwjtmp
reading bases_body_0.in
cd Mail-SpamAssassin-CompiledRegexps-body_0
re2c -i -b -o scanner1.c scanner1.re
re2c -i -b -o scanner2.c scanner2.re
re2c -i -b -o scanner3.c scanner3.re
re2c -i -b -o scanner4.c scanner4.re
re2c -i -b -o scanner5.c scanner5.re
re2c -i -b -o scanner6.c scanner6.re
/usr/bin/perl Makefile.PL PREFIX=/tmp/.spamassassin28456guVjwjtmp/ignored 
INSTALLSITEARCH=/var/lib/spamassassin/compiled/5.022/3.004002
Generating a Unix-style Makefile
Writing Makefile for Mail::SpamAssassin::CompiledRegexps::body_0
Writing MYMETA.yml and MYMETA.json
make PREFIX=/tmp/.spamassassin28456guVjwjtmp/ignored 
INSTALLSITEARCH=/var/lib/spamassassin/compiled/5.022/3.004002
cp body_0.pm blib/lib/Mail/SpamAssassin/CompiledRegexps/body_0.pm
Running Mkbootstrap for Mail::SpamAssassin::CompiledRegexps::body_0 ()
chmod 644 "body_0.bs"
"/usr/bin/perl" "/usr/share/perl/5.22/ExtUtils/xsubpp"  -typemap 
"/usr/share/perl/5.22/ExtUtils/typemap"  body_0.xs > body_0.xsc && mv 
body_0.xsc body_0.c
"/usr/bin/perl" "/usr/share/perl/5.22/ExtUtils/xsubpp"  -typemap 
"/usr/share/perl/5.22/ExtUtils/typemap"  body_0.xs > body_0.xsc && mv 
body_0.xsc body_0.c
x86_64-linux-gnu-gcc -c   -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv 
-fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE 
-D_FILE_OFFSET_BITS=64 -O2 -g   -DVERSION=\"1.0\" -DXS_VERSION=\"1.0\" -fPIC 
"-I/usr/lib/x86_64-linux-gnu/perl/5.22/CORE"   body_0.c
x86_64-linux-gnu-gcc -c   -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv 
-fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE 
-D_FILE_OFFSET_BITS=64 -O2 -g   -DVERSION=\"1.0\" -DXS_VERSION=\"1.0\" -fPIC 
"-I/usr/lib/x86_64-linux-gnu/perl/5.22/CORE"   scanner1.c
x86_64-linux-gnu-gcc -c   -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv 
-fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE 
-D_FILE_OFFSET_BITS=64 -O2 -g   -DVERSION=\"1.0\" -DXS_VERSION=\"1.0\" -fPIC 
"-I/usr/lib/x86_64-linux-gnu/perl/5.22/CORE"   scanner2.c
x86_64-linux-gnu-gcc -c   -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv 
-fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE 
-D_FILE_OFFSET_BITS=64 -O2 -g   -DVERSION=\"1.0\" -DXS_VERSION=\"1.0\" -fPIC 
"-I/usr/lib/x86_64-linux-gnu/perl/5.22/CORE"   scanner3.c
x86_64-linux-gnu-gcc -c   -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv 
-fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE 
-D_FILE_OFFSET_BITS=64 -O2 -g   -DVERSION=\"1.0\" -DXS_VERSION=\"1.0\" -fPIC 
"-I/usr/lib/x86_64-linux-gnu/perl/5.22/CORE"   scanner4.c
x86_64-linux-gnu-gcc -c   -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv 
-fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE 
-D_FILE_OFFSET_BITS=64 -O2 -g   -DVERSION=\"1.0\" -DXS_VERSION=\"1.0\" -fPIC 
"-I/usr/lib/x86_64-linux-gnu/perl/5.22/CORE"   scanner5.c
x86_64-linux-gnu-gcc -c   -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv 
-fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE 
-D_FILE_OFFSET_BITS=64 -O2 -g   -DVERSION=\"1.0\" -DXS_VERSION=\"1.0\" -fPIC 
"-I/usr/lib/x86_64-linux-gnu/perl/5.22/CORE"   scanner6.c
rm -f blib/arch/auto/Mail/SpamAssassin/CompiledRegexps/body_0/body_0.so
x86_64-linux-gnu-gcc  -shared -L/usr/local/lib -fstack-protector-strong 
body_0.o scanner1.o scanner2.o scanner3.o scanner4.o scanner5.o scanner6.o  -o 
blib/arch/auto/Mail/SpamAssassin/CompiledRegexps/body_0/body_0.so   \
        \

chmod 755 blib/arch/auto/Mail/SpamAssassin/CompiledRegexps/body_0/body_0.so
"/usr/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- body_0.bs 
blib/arch/auto/Mail/SpamAssassin/CompiledRegexps/body_0/body_0.bs 644
Manifying 1 pod document
make install PREFIX=/tmp/.spamassassin28456guVjwjtmp/ignored 
INSTALLSITEARCH=/var/lib/spamassassin/compiled/5.022/3.004002
Running Mkbootstrap for Mail::SpamAssassin::CompiledRegexps::body_0 ()
chmod 644 "body_0.bs"
Manifying 1 pod document
Files found in blib/arch: installing files in blib/lib into architecture 
dependent library tree
Installing 
/var/lib/spamassassin/compiled/5.022/3.004002/auto/Mail/SpamAssassin/CompiledRegexps/body_0/body_0.so
Installing 
/tmp/.spamassassin28456guVjwjtmp/ignored/man/man3/Mail::SpamAssassin::CompiledRegexps::body_0.3pm
Appending installation info to 
/var/lib/spamassassin/compiled/5.022/3.004002/perllocal.pod
cp /tmp/.spamassassin28456guVjwjtmp/bases_body_0.pl 
/var/lib/spamassassin/compiled/5.022/3.004002/bases_body_0.pl
cd /
rm -rf /tmp/.spamassassin28456guVjwjtmp
root@bnesecrf0:~# echo $?
0
root@bnesecrf0:~#

I must admit the idea of "i386" headers and "amd64" headers is
completely foreign to me.  They're plain-text C code files, with no
concept of processor architecture or bit width whatsoever.

Normally for the C library, i386 and AMD64 binaries are built from the
same C source (and headers), and are installed *together* so there
shouldn't be a need to introduce this fragile complexity of having
architecture-dependent C compiler include paths.

It certainly was this way on Gentoo/MIPS where we had to contend with
not two, but three ABIs (o32, n32 and n64), having a single "include"
header tree with multiple ABIs continues to work just fine there.  I
think Ubuntu in having "i386" and "AMD64" headers are trying to solve a
non-existent problem, and creating others (like this one) in the
process.

I believe this policy may need a re-think.  Anyway, it looks like `sa-
compile` is working once again.

Regards,
Stuart Longland

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1815978

Title:
  sa-compile broken on 16.04 LTS AMD64

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/spamassassin/+bug/1815978/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to