4

那一定是这样的:

(if (= system-type 'gnu/linux)
    (system "make"))

老实说,我认为我的方案实现无论如何都做不到,但我可以自由地为它添加实现。平台检测的常用方案语法是什么?

谢谢你

4

2 回答 2

7

我不能代表任何其他方案,但 Racket 有一个名为system-type

> (system-type)
'unix
> (system-type 'machine)
"Linux ... x86_64 GNU/Linux"  ;; ellipses mine, output is same as `uname -a`
于 2012-01-20T15:47:39.523 回答
1

并且guile有一个uname函数,它返回一个描述作为一个方案向量对象:

scheme@(guile-user)> (uname)
$2 = #("Linux" "gblaptop" "2.6.39-gentoo-r3" "#4 SMP Fri Oct 21 08:12:17 PDT 2011" "i686")
于 2012-01-24T16:02:21.820 回答