2011/11/15 Mingjie Xing <mingjie.x...@gmail.com>:
> Hi,
>
> Recently, I run into a very odd things when change my gcc toolchain
> from 3.3.* to 3.4.*.  The compiled application such as a simple hello
> printing, is unable to redirect into a file.

Here's more information generating by strace.

$ strace ./hello.gcc-3.3 > log
execve("./hello..gcc-3.3", ["./hello..gcc-3.3"], [/* 36 vars */]) = 0
uname({sys="Linux", node="loongson.redflag-linux.com", ...}) = 0
fcntl64(0, F_GETFD)                     = 0
fcntl64(1, F_GETFD)                     = 0
fcntl64(2, F_GETFD)                     = 0
geteuid()                               = 0
getuid()                                = 0
getegid()                               = 0
getgid()                                = 0
brk(0)                                  = 0x10008000
brk(0x1000c000)                         = 0x1000c000
fstat64(1, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
old_mmap(NULL, 65536, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x2aaa8000
write(1, "hello\n"..., 6)               = 6
munmap(0x2aaa8000, 65536)               = 0
exit_group(0)                           = ?

$ strace ./hello.gcc-3.4 > log
execve("./hello.gcc-3.4", ["./hello.gcc-3.4"], [/* 36 vars */]) = 0
uname({sys="Linux", node="loongson.redflag-linux.com", ...}) = 0
fcntl64(0, F_GETFD)                     = 0
fcntl64(1, F_GETFD)                     = 0
fcntl64(2, F_GETFD)                     = 0
geteuid()                               = 0
getuid()                                = 0
getegid()                               = 0
getgid()                                = 0
brk(0)                                  = 0x10008000
brk(0x1000c000)                         = 0x1000c000
fstat64(1, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
old_mmap(NULL, 65536, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0x2aaa8000
exit_group(0)                           = ?

We can see that the latter program doesn't run "write(1, "hello\n"...,
6) " at all.

Thanks
Mingjie

Reply via email to