我在OSX Box上,我正在尝试构建FreeBSD内核源代码。我已经通过运行
下载了它sudo svn co https://svn0.us-east.FreeBSD.org/base/stable/10
然后测试它我运行
make buildkernel
然而我总是得到错误:
Makefile:136: *** missing separator. Stop.
我尝试过使用bsdmake但是我得到了:
Unknown modifier 't'
我是跳过了一步还是错过了什么?
答案 0 :(得分:4)
首先,据我所知,不支持在另一个操作系统上构建FreeBSD。但是,构建内核似乎是可行的,因为有一个Debian变种,在FreeBSD内核上运行GNU用户空间。还支持为另一个架构交叉构建FreeBSD。
如果您的make是GNU make
,那可能无效。 FreeBSD很久以前导入了pmake
。 (在FreeBSD系统上称为make
)。
构建过程取决于几个方面;
/usr/src
(除非您设置了make变量SRCDIR
)/usr/obj
完成(除非您设置环境变量MAKEOBJDIRPREFIX
)/usr/src/share/mk
中的“包含”。因此,您应该将-I /usr/src/share/mk
添加到make调用中。您还需要一个交叉编译器和配置为生成FreeBSD二进制文件的其他工具!
然后,您可以从make TARGET=machine xdev-build
开始构建交叉开发工具。然后可能是make TARGET=machine kernel-toolchain
。这构建了生成内核所必需的系统部分。