I compile the application with -static -static-libgcc options but there is
still error:
(none) home # ./hello
hello[840]: segfault at 000000000000000c rip 000000000805cd10 rsp
00000000ffff3f34 error 4
Segmentation fault
(none) home #
If I want to create a disk image which is the same as my host platform, I
should firstly create an empty image, and then copy all the files into this
image, right? But the file system in the host platform is too large, I wonder
how you prune it (such as the linux-x86.img in x86-system.tar) but still keep
the same compiling and runtime environment. Thanks.
Best,
Xuhao Chen
PhD student
School of Computer
National University of Defense Technology
Changsha, Hunan, P.R.China, 410073
Tel: +86-159-741-03340 (Mobile)
From: Nilay Vaish
Date: 2012-03-04 00:39
To: gem5 users mailing list
Subject: Re: [gem5-users] booting 64-core in X86 FS mode
On Sun, 4 Mar 2012, Xuhao Chen wrote:
> I use the disk image in "x86-system.tar" from http://gem5.org/Download ,
> in which I think gcc-4.1.2 has been installed. It may be due to the
> different version of glibc, right?
>
> Xuhao Chen
> PhD student
> School of Computer
> National University of Defense Technology
> Changsha, Hunan, P.R.China, 410073
> Tel: +86-159-741-03340 (Mobile)
>
> From: Nilay Vaish
> Date: 2012-03-03 23:52
> To: gem5 users mailing list
> Subject: Re: [gem5-users] booting 64-core in X86 FS mode
> On Sat, 3 Mar 2012, Xuhao Chen wrote:
>
>> Hi everyone,
>> When I compile applications (e.g. HelloWorld or PARSEC apps) on the host
>> machine (with Ubuntu-10.04), and copy the binary into the disk image (by
>> mount and umount), then launch the x86 FS and run these apps, there is a
>> segmentation fault shown in the m5term console.
>>
>> (none) / # ./hello
>> hello[976]: segfault at c8 ip 00000000f7f43ac7 sp 00000000fff5551c error 6
>> in ld-2.6.1.so[f7f3c000+1a000]
>> Segmentation fault
>> (none) / #
>>
>> I then compile apps on Redhat E5 with gcc-4.1.2 and copy into the image,
>> but there is still this error. Is it because the incompatible kernel
>> version of the host (compile) and target (execute) platform? Thanks.
>
> It seems to me that you are linking with glibc that is not available on
> the disk image.
>
It certainly seems like so library was not found on the disk image, this
could be due to different version, or just that the library locations are
different on the disk image and the host machine. Run the same program
using a VM, this experiment should be able to confirm whether the
hypothesis of being linked to wrong library is correct or not.
--
Nilay
_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users