加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

reactos终于被成功编译通过

发布时间:2020-12-15 05:03:33 所属栏目:百科 来源:网络整理
导读:总结如下: 1、reactos是一款全面兼容winapi接口的供学习研究目的的操作系统,属于自由软件,同时也是开源的( www.reactos.org )。另外,reactos与wine项目是属于同一拨人开发的,所以这两者分享许多共同的成果。 2、从reactos的源码安装时,是采用mingw32

总结如下:
1、reactos是一款全面兼容winapi接口的供学习研究目的的操作系统,属于自由软件,同时也是开源的(www.reactos.org)。另外,reactos与wine项目是属于同一拨人开发的,所以这两者分享许多共同的成果。

2、从reactos的源码安装时,是采用mingw32-gcc来编译源代码的。(最少需要mingw32-gcc和mingw32-g++,以及mingw32-make等模块,另外对mingw32版本也有要求)。从官方文档中获知,编译reactos的mingw32-gcc可以是交叉编译器,也可以是本地编译器。

3、我编译的reactos版本是0.2.8,可从网上下载reactos0.2.8-REL-src.zip文件。

4、当我使用版本为3.4.2的本地的mingw来编译reactos时,中途报错,说gcc版本可能不符合要求!因此我便接着采用版本为3.4.4的本地的mingw来重新编译reactos,这时中途又报错了,是一个g++的头文件错误,error信息如下:
E:/mingw/bin/../lib/gcc/mingw32/3.4.4/../../../../include/c++/3.4.4/bits
/stl_uninitialized.h: In member function `void std::vector<_Tp,_Alloc>::reserve
(size_t) [with _Tp = KeyMap,_Alloc = std::allocator<KeyMap>]':
E:/mingw/bin/../lib/gcc/mingw32/3.4.4/../../../../include/c++/3.4.4/bits
/stl_uninitialized.h:82: warning: '__cur' might be used uninitialized in this fu
nction

(从网上找到一个网页,也是反映同样的这个错误!http://www.reactos.org/forum/viewtopic.php?t=1073),有开发者回复中说,需要使用mingw32-gcc3.4.3版本,或者升级到mingw32-gcc4.0版本。

5、于是便找到了mingw4.0的二进制安装版进行install后,再次编译reactos时,又报了一大堆错误,都是与mingw-winapi相关的,可以断定是这个mingw4.0的二进制发布版好象不太全面。因此如果要想继续使用mingw4.0来编译reactos,那么只能自己先编译出完整的mingw4.0;但这也太麻烦了,于是找mingw32-gcc3.4.3,没找着。

6、最后在http://www.reactos.org/wiki/index.php?title=HOWTO/setup_a_build_environment_for_Windows&redirect=no页面中获知,reactos开发组已经集成并建立了一个reactos的编译环境,叫做ReactOS Build Environment (RosBE),于是乎,download下ReactOS Build Environment 0.1-3.4.2.exe文件,安装后,发现它集成的mingw-gcc版本也是3.4.2的。重新编译reactos,成功!!!注意!编译大概需要1.5G的磁盘空间。

7、另外一篇关于在linux系统上编译reactos的文章的link是:http://www.reactos.org/wiki/index.php/HOWTO/setup_a_build_environment_for_Linux

8、编译reactos时,当前目录的obj-i386子目录是中间文件(如.o文件)的输出位置;而output-i386子目录是最终模块(包括exe、dll和sys)的输出位置。它们都可以通过设置相关的环境变量来改变其缺省的输出位置,详细情况请参考当前目录的Makefile文件.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读