如何从Windows运行已编译的球拍程序

时间:2016-02-22 21:41:24

标签: racket

程序在drRacket中运行,引用主要功能并传递任何参数。如何从命令行执行此操作或单击.exe文件?主要功能如下:

(define (worm-main ct)
  (big-bang (make-wormState (init-worm INIT-WORM-SEGS START-POSN) "r" (food-create (make-posn 99999 99999)))
    [to-draw render]
    [on-key navigate]
    [on-tick move ct]
    [stop-when end-chk? final-scene]))

我这样称为蠕虫主: - (worm-main 0.2)

2 个答案:

答案 0 :(得分:1)

我认为你不能从终端调用文件中的函数。或者,在程序中,您可以添加输入语句并使用这些参数调用main函数。

您可以通过将语言更改为

从终端运行球拍程序
#lang racket

例如:

#lang racket
(+ 3 4)

您可以使用(命令行为test.rkt)从命令行运行它:

racket test.rkt

此外,您可以通过转到Racket,创建可执行文件,从Dr.Racket创建一个可执行文件......

编辑:尝试复制粘贴并创建可执行文件。

#lang racket/gui

(require racket/gui/base)

(define frame (new frame% [label "Example"]))

; Make a static text message in the frame
(define msg (new message% [parent frame]
                      [label "No events so far..."]))

; Make a button in the frame
(new button% [parent frame]
         [label "Click Me"]
         ; Callback procedure for a button click:
         [callback (lambda (button event)
                     (send msg set-label "Button click"))])

; Show the frame by calling its show method
(send frame show #t)
; source: https://docs.racket-lang.org/gui/windowing-overview.html#%28part._.Creating_.Windows%29

我相信看到可执行文件的效果,你的程序必须创建一个新窗口。

EDIT2: 尝试从命令行编译球拍程序,如下所述:https://docs.racket-lang.org/guide/cmdline-tools.html

raco make name-of-file.rkt

在那之后:

cd compiled
racket name-of-file.zo

答案 1 :(得分:1)

从您撰写的内容看来,您似乎是从DrRacket的“ Racket”菜单中的“ Create Executable”项创建了可执行文件。您正在通过交互区域调用主定义,方法是输入(worm-main 0.2)

您的可执行文件不起作用,因为您尚未在 definitions窗口中将调用添加到主函数中。实际上,可执行文件只有创建可执行文件之前的文件。

在创建可执行文件之前,必须将调用(worm-main 0.2)添加到定义窗口。