strace 4.10 doesn't build on MIPS arch

Arturo Borrero Gonzalez arturo.borrero.glez at gmail.com
Fri Apr 17 09:06:45 UTC 2015


On 15 April 2015 at 15:52, Dmitry V. Levin <ldv at altlinux.org> wrote:
> On Wed, Apr 15, 2015 at 11:26:08AM +0200, Arturo Borrero Gonzalez wrote:
>> On 14 April 2015 at 15:13, Dmitry V. Levin <ldv at altlinux.org> wrote:
>> > On Tue, Apr 14, 2015 at 09:32:39AM +0200, Arturo Borrero Gonzalez wrote:
>> >> Hi there!
>> >>
>> >> I've been taking a look at the debian log for strace on the MIPS
>> >> architecture [0].
>> >> There is a test that doesn't pass and therefore the build is taken as
>> >> invalid (and the debian package isn't created).
>> >>
>> >> For me, the ideal fix is to get the test file passing.
>> >> I know nothing of the strace source code base, could you please give
>> >> me a few hints/pointers of how to solve the situation?
>> >
>> > Could you re-test with the current HEAD, please?
>> > (./bootstrap && ./configure && make check)
>>
>> Still errors. Find attached the result.
>
> Thanks.  Could you update to the current HEAD once more and try with this
> tentative patch applied, please:
>

This is what I get:

[...]
gcc -DHAVE_CONFIG_H -I. -I..  -I./linux/mips -I../linux/mips -I./linux
-I../linux -D_FORTIFY_SOURCE=2 -Wall -Wwrite-strings -Wsign-compare -g
-O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security
-Wall -g -O2 -MT strace-syscall.o -MD -MP -MF .deps/strace-syscall.Tpo
-c -o strace-syscall.o `test -f 'syscall.c' || echo '../'`syscall.c
In file included from ../linux/mips/syscallent.h:3:0,
                 from ../syscall.c:85:
../linux/mips/syscallent-o32.h:3:20: error: 'sys_syscall' undeclared
here (not in a function)
 [4000] = { MA, 0,  sys_syscall,   "syscall"  }, /* start of Linux o32 */
                    ^
../syscall.c:622:1: warning: return type defaults to 'int' [-Wreturn-type]
 SYS_FUNC(syscall)
 ^
../syscall.c: In function 'SYS_FUNC':
../syscall.c:624:19: error: 'tcp' undeclared (first use in this function)
  return printargs(tcp);
                   ^
../syscall.c:624:19: note: each undeclared identifier is reported only
once for each function it appears in
../syscall.c:624:19: warning: passing argument 1 of 'printargs' from
incompatible pointer type
In file included from ../syscall.c:34:0:
../defs.h:462:12: note: expected 'struct tcb *' but argument is of
type 'const struct struct_sysent *'
 extern int printargs(struct tcb *);
            ^
../syscall.c: In function 'trace_syscall_entering':
../syscall.c:1797:18: warning: comparison of distinct pointer types lacks a cast
  if (sys_syscall == tcp->s_ent->sys_func)
                  ^
../syscall.c:1798:3: error: too few arguments to function 'decode_mips_subcall'
   decode_mips_subcall();
   ^
../syscall.c:611:1: note: declared here
 decode_mips_subcall(struct tcb *tcp)
 ^
../syscall.c:1798:3: warning: statement with no effect [-Wunused-value]
   decode_mips_subcall();
   ^
Makefile:2171: recipe for target 'strace-syscall.o' failed
[..]
-- 
Arturo Borrero González




More information about the Strace-devel mailing list