成功编译ReactOS,分享一下心得(图)。
reactos吧
全部回复
仅看楼主
level 4
NollaYhdeksan
楼主
2010年12月23日 08点12分
1
level 4
NollaYhdeksan
楼主
第一次成功编译ReactOS,
并输出了:
LiveCD(输出名为:ReactOS-LiveCD.iso)。
BootCD (输出名为:ReactOS.iso)。
以上两个文件都会输出到源代码的根目录下边。
2010年12月23日 08点12分
2
level 4
NollaYhdeksan
楼主
*这里要注意*:
我的系统是XP sp3不是win7,也没有取得管理员权限的功能。但是编译时一定要在管理员权限下进行,不然就会出错。不知是不是sp3增强了保护模式的原因?
我第一次编译的时候就出现了下边的错误:
Cannot open output file: Permission denied
make.exe: ***[D:\complie\output\dll\win32\fmifs\fmifs.dll] Error 1
进入XP下进入管理员账户的方法是:
按下alt+ctrl+delete三个键,选择关机->注销。在进入登陆界面的时候再次按下alt+ctrl+delete三个键,在用户名中输入administrator。登陆管理员账号。
下来就可以进行编译工作了。
2010年12月23日 08点12分
4
level 4
NollaYhdeksan
楼主
4,编译
首先,设置编译器:
打开CMD命令提示符(开始->运行->输入”cmd”->确定);
切换目录到RosBE的安装目录,我的安装目录是:D:\RosBE
再输入” RosBE ”回车。加载编译器。
加载编译器后CMD会自动退回到RosBE目录。此时编译器程序已经加载到了内存。
2010年12月23日 08点12分
5
level 4
NollaYhdeksan
楼主
输入”options”回车,设置输出目录,默认的GCC/MinGW目录不用改变。我的设置如下图:
2010年12月23日 08点12分
6
SLY7156
全取默认值行么?
2013年01月20日 07点01分
level 4
NollaYhdeksan
楼主
下来切换目录到你所下载的源代码的目录,我的源代码的目录是:
E:\complie\reactos\ReactOS-0.3.12-REL-src
输入命令”make”开始编译。
下来就是等待漫长的编译时间了。我编译了1小时41分钟44秒。
…
[LD] E:\complie\output\modules\rosapps\applications\cmdutils\y\y.exe
[RSYM] E:\complie\output\modules\rosapps\applications\cmdutils\y\y.exe
Total Build Time: 01:41:44
2010年12月23日 08点12分
7
SLY7156
报告说不合法的命令。
2013年01月20日 07点01分
NollaYhdeksan
回复
@SLY7156
:编译器加载了吗
2013年01月20日 17点01分
SLY7156
回复 NollaYhdeksan :我试了2.0 环境 去编译 0.3.12成功了。。。看来是新版本不兼容,
2013年01月21日 05点01分
level 4
NollaYhdeksan
楼主
一开始不能使用”make bootcd” 和”make livecd”进行编译。应该先使用”make”命令后使用”make bootcd” 和”make livecd”输出iso文件打包。所输出的iso文件会在源代码的目录下生成。
2010年12月23日 08点12分
8
level 4
NollaYhdeksan
楼主
编 译直 接使 用了”make livecd”结果 出错:
系统找不到指定的路径。
2010年12月23日 08点12分
9
level 4
NollaYhdeksan
楼主
最后,生成iso文件
输入命令make bootcd生成安装文件。
会在源代码目录下生成文件 ReactOS。iso。
2010年12月23日 08点12分
10
level 4
NollaYhdeksan
楼主
输入命令make livecd生成演示文件。
会在源代码目录下生成文件ReactOS-LiveCD。iso。
2010年12月23日 08点12分
11
level 4
NollaYhdeksan
楼主
另外需要补充的是编译产生的obj文件大概需要4-5G左右的硬盘空间。请预留足够的硬盘空间编译文件。
————————————————————————————————————
有了ReactOS的源码对研究NT的工作方式有了很大的便利。
下来就看看NT的内核入口函数的在源代码中的位置,以便大家进一步研究windows系统。
查到的说NT的内核入口是KiSystemStartup函数。它的位置在
..\ReactOS-0.3.12-REL-src\ntoskrnl\ke\i386\kiinit.c
用了一个freeloader程序中的LOADER_PARAMETER_BLOCK类型指针LoaderBlock引导。
具体的引导方式大家可以参看
..\ReactOS-0.3.12-REL-src\boot\freeldr\freeldr\windows\winldr.c
2010年12月23日 08点12分
12
level 8
acat1433
你试过 makex bootcd 多线程编译的么?
那个要多少的时间啊?
2010年12月23日 11点12分
13
level 4
NollaYhdeksan
楼主
makex bootcd 可以直接使用 但是我为什么不可以直接使用make bootcd呢?
这个makex编译用了一个小时08分钟。
2010年12月24日 08点12分
14
袁新波
如何设置它的ip
2013年01月21日 09点01分
level 8
acat1433
看来多线程还是稍微快些。
2010年12月29日 04点12分
15
level 1
lizimu2023
编译中。。。。
2011年04月29日 09点04分
16
level 1
yxwsbobo
make bootcd 58分钟
makex bootcd 18分31秒
2011年07月07日 14点07分
17
level 1
lizimu2023
灰常兴奋 编译通过。
2011年08月22日 23点08分
19
level 1
袁新波
问一下,如何设置reactOS系统的ip
2013年01月21日 09点01分
20
level 8
acat1433
设置方法,与XP下一致。只要能兼容起网卡。
查下这张表格吧。
http://www.reactos.org/wiki/Supported_Hardware/Network_cards
2013年01月21日 14点01分
21
level 1
starcat2008
这个够详尽(其实我想说的是卤煮的头像)。
另外,不知卤煮试过直接make没?
另:我有印象说可以把ReactOS编译成一个exe文件,不知如何操作?
2013年08月08日 15点08分
22
1
2
尾页