2011-10-11 82 views
2

我需要从共享对象(.so文件)创建一个ELF图像文件并将其写入Windows中的另一个分区。然后在Linux中打开这个分区并加载共享对象。创建ELF图像

有谁知道如何在Windows中创建一个ELF图像(许多共享对象的包)?

+2

为什么?与仅仅在Linux上开展工作相比,这是一个麻烦和苦恼的秘诀。 – bmargulies

+0

@bmargulies:你是对的,但这是我的经理想要的:( – mustafa

+0

我应该为错误的问题道歉,我需要的是用'gcc'工具链创建elf共享对象,创建一个分区映像并用' VDK',然后将共享对象复制到挂载的文件夹中,稍后,我可以卸载并将分区映像复制到Linux上;将它安装到那里并获取所需的文件 – mustafa

回答

1

您可以使用Cygwin并尝试合适的GCC交叉工具链。也许你就必须自己先建立它(这是很麻烦),但就这样吧......

编辑: 好了,你在这里:

简化之一:
Building GCC cross compiler (from "Linux" to "Windows") - 基本步骤与此处所述的相同。你只需要./configure它与相关的--host=...--target=...。哦!不要忘记设置生成树根,因为不支持构建“在源代码树中” - 如果尝试(如果你尝试过),你只会陷入错误(我......)

杀手之一: http://cygwin.wikia.com/wiki/How_to_install_a_newer_version_of_GCC#Build_and_Install_GCC - 一个完整的指南。

+0

可以指导我如何尝试“合适的GCC交叉-toolchain“?为什么我需要Cygwin?它不适用于Windows上的GCC吗? – mustafa

+0

GCC和BinUtils的所有帮助应用程序都是UNIX应用程序据我所知,除此之外,没有任何本地Windows端口,对MinGW来说,但是我能找到的有关MinGW交叉编译的所有内容都是“* nix托管到Windows”,而不是其他方式。现在我将更新一些(希望)有用的链接, simil研究。 – vines

0

时下Linux能理解NTFS。至少,它应该能够读取它。
您也可以使用格式化为FAT32或NTFS的闪存作为共享存储。
您也可以在虚拟机中运行Linux并在其上设置FTP服务器并通过它交换文件。
在不同的操作系统之间共享数据的方法很多。

+0

我无法使用NTFS。我应该使用类似于FAT32的专有文件系统。 你知道如何在Windows中创建一个由几个文件组成的图像吗?然后我会将图像写入此分区。 – mustafa

+0

@mustafa:嗯...'mkisofs'工具可以创建CD/DVD ISO映像。如果你可以将它们写入共享存储器(硬盘分区?),然后用'mount'将它们挂载到Linux中,那么这是一种做法......也许有其他工具,但我不知道它们。 –

+0

感谢您的评论。 'mkisofs'似乎是一个未完成的项目“注意:我不再维护mkisofs,这个页面上的信息在1999年3月是最新的,并且从那以后没有更新过。” – mustafa