Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openeuler
qemu
提交
644c433c
Q
qemu
项目概览
openeuler
/
qemu
通知
10
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Q
qemu
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
644c433c
编写于
3月 24, 2003
作者:
B
bellard
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
ld.so load fix
git-svn-id:
svn://svn.savannah.nongnu.org/qemu/trunk@47
c046a42c-6fe2-441c-8c8c-71466251a162
上级
d691f669
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
19 addition
and
8 deletion
+19
-8
README
README
+6
-2
linux-user/elfload.c
linux-user/elfload.c
+4
-4
qemu-doc.texi
qemu-doc.texi
+9
-2
未找到文件。
README
浏览文件 @
644c433c
...
...
@@ -23,8 +23,12 @@ libraries installed on your PC. For example:
./qemu -L / /bin/ls
* On non x86 CPUs, you need first to download at least an x86 glibc
(qemu-i386-glibc21.tar.gz on the qemu web page). Then you can launch
the precompiled 'ls' x86 executable:
(qemu-i386-glibc21.tar.gz on the qemu web page). Ensure that
LD_LIBRARY_PATH is not set:
unset LD_LIBRARY_PATH
Then you can launch the precompiled 'ls' x86 executable:
./qemu /usr/local/qemu-i386/bin/ls
...
...
linux-user/elfload.c
浏览文件 @
644c433c
...
...
@@ -360,9 +360,6 @@ static unsigned int * create_elf_tables(char *p, int argc, int envc,
put_user (tswapl(val), dlinfo++)
if
(
exec
)
{
/* Put this here for an ELF program interpreter */
struct
elf_phdr
*
eppnt
;
eppnt
=
(
struct
elf_phdr
*
)((
unsigned
long
)
exec
->
e_phoff
);
NEW_AUX_ENT
(
AT_PHDR
,
(
unsigned
int
)(
load_addr
+
exec
->
e_phoff
));
NEW_AUX_ENT
(
AT_PHENT
,
(
unsigned
int
)(
sizeof
(
struct
elf_phdr
)));
NEW_AUX_ENT
(
AT_PHNUM
,
(
unsigned
int
)(
exec
->
e_phnum
));
...
...
@@ -418,6 +415,9 @@ static unsigned long load_elf_interp(struct elfhdr * interp_elf_ex,
*/
load_addr
=
INTERP_LOADADDR
;
#ifdef BSWAP_NEEDED
bswap_ehdr
(
interp_elf_ex
);
#endif
/* First of all, some simple consistency checks */
if
((
interp_elf_ex
->
e_type
!=
ET_EXEC
&&
interp_elf_ex
->
e_type
!=
ET_DYN
)
||
...
...
@@ -425,6 +425,7 @@ static unsigned long load_elf_interp(struct elfhdr * interp_elf_ex,
return
~
0UL
;
}
/* Now read in all of the header information */
if
(
sizeof
(
struct
elf_phdr
)
*
interp_elf_ex
->
e_phnum
>
X86_PAGE_SIZE
)
...
...
@@ -452,7 +453,6 @@ static unsigned long load_elf_interp(struct elfhdr * interp_elf_ex,
(
char
*
)
elf_phdata
,
sizeof
(
struct
elf_phdr
)
*
interp_elf_ex
->
e_phnum
);
}
if
(
retval
<
0
)
{
perror
(
"load_elf_interp"
);
exit
(
-
1
);
...
...
qemu-doc.texi
浏览文件 @
644c433c
...
...
@@ -92,8 +92,15 @@ qemu -L / /bin/ls
@item On non x86 CPUs, you need first to download at least an x86 glibc
(@file
{
qemu-i386-glibc21.tar.gz
}
on the QEMU web page). Then you can
launch the precompiled @file
{
ls
}
x86 executable:
(@file
{
qemu-i386-glibc21.tar.gz
}
on the QEMU web page). Ensure that
@code
{
LD
_
LIBRARY
_
PATH
}
is not set:
@example
unset LD
_
LIBRARY
_
PATH
@end example
Then you can launch the precompiled @file
{
ls
}
x86 executable:
@example
qemu /usr/local/qemu-i386/bin/ls
@end example
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录