From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: "K.L." Newsgroups: gmane.lisp.guile.devel Subject: Re: A weird problem about "define-private', need help please! Date: Sun, 18 Oct 2020 13:12:35 +0800 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="00000000000072faae05b1eb0ce5" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="36738"; mail-complaints-to="usenet@ciao.gmane.io" To: guile-devel@gnu.org Original-X-From: guile-devel-bounces+guile-devel=m.gmane-mx.org@gnu.org Sun Oct 18 07:13:03 2020 Return-path: Envelope-to: guile-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kU10A-0009Px-IR for guile-devel@m.gmane-mx.org; Sun, 18 Oct 2020 07:13:02 +0200 Original-Received: from localhost ([::1]:47462 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kU108-00066P-Uf for guile-devel@m.gmane-mx.org; Sun, 18 Oct 2020 01:13:00 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:32986) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kU0zz-00066H-29 for guile-devel@gnu.org; Sun, 18 Oct 2020 01:12:51 -0400 Original-Received: from mail-vs1-xe2b.google.com ([2607:f8b0:4864:20::e2b]:46729) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kU0zw-0004AG-U1 for guile-devel@gnu.org; Sun, 18 Oct 2020 01:12:50 -0400 Original-Received: by mail-vs1-xe2b.google.com with SMTP id d4so3816943vsk.13 for ; Sat, 17 Oct 2020 22:12:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to; bh=jR4n13bRByjbCVZrqUaIOFOwPYoToEWW+ZfToo7shQw=; b=iA4PR6DMj6G4sIhmJ3X7tK7lIoQox3gCgAd3w3xfFX1SP677QeucWY/7GTzCaqpy0Z bMWwcfnjX3vWQgJgufIjb0O1VZX944IsxkIIs0GoibBZfrvBBMq73ajmSjIGgtMmOCjX UNtqZxTnVF0ghaJsRodlQbTBJeHFtULZD/otzZXvFhQ/YWHouhE2DtQCYP/rVBoZvIom 4Vcop9fKBV49G9xRU5jVfK4bdGeD5iaC4NmRza5ANkbBAS/6469h75Lanx/Fco9Av48D /LpU1F7pBNm3GrhNr/PH88XXfv2kSJjtmmmwl6OILRqTMQYZOaUbkdV22aB6LYL9A2/4 w18Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=jR4n13bRByjbCVZrqUaIOFOwPYoToEWW+ZfToo7shQw=; b=L+Rq+TSIPBtaDGm07TNzFs5sZDPMyqQTTm2RI2MfDuq0zMAQzO+ECoEDY5j77qJVaY AzOazXbXKofiQiTobGeU3DAEe7uJfrw+ijvt70pYnoAAljlIcRBdrLvDiHCsfLAwd7KQ agMtt6o8WBpcpCtYZaYjc4dn7jJNrix9VcUH9FpevDCLhhHZY03C0R+QMqBrugXrYc5V r76e/XOqSCnyDFUi6O1/zJA7EO2UKtcklQ33aKysI9A/bTsmX7yRZQhmbtHRCvhGv8Ne cHSu8SUSS7RfUI5XoKh/vdd2aLbOfjiXpt1o9XFI9LSRUkKF2EtPn6w2RoKY+zEI27dX +p9w== X-Gm-Message-State: AOAM5305FnnOKhCCnf7xo+4TY+sVMfx2HH4/QlUqVIJhd4ktYltxWb4i +SHgge1ldIGClZTVSKBeGjugcWI5NMq0387YSrmFPToH X-Google-Smtp-Source: ABdhPJxD9YL9+WWtVkc2rogmc30/9c2oh3pif0jhC/tvGlzGfTAoidAzTUFnCaUDIXDK7X+nI/U3dVfXDt7uVknYUVA= X-Received: by 2002:a67:e9c6:: with SMTP id q6mr6579570vso.9.1602997967844; Sat, 17 Oct 2020 22:12:47 -0700 (PDT) In-Reply-To: Received-SPF: pass client-ip=2607:f8b0:4864:20::e2b; envelope-from=xxxk.l.xxx@gmail.com; helo=mail-vs1-xe2b.google.com X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache. That's all we know. X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-devel-bounces+guile-devel=m.gmane-mx.org@gnu.org Original-Sender: "guile-devel" Xref: news.gmane.io gmane.lisp.guile.devel:20596 Archived-At: --00000000000072faae05b1eb0ce5 Content-Type: text/plain; charset="UTF-8" Never mind, I figured it out. The actual problem is I didn't get the correct error message. On Sat, Oct 17, 2020 at 2:12 PM K.L. wrote: > Hello guys. > > I built myself a *libguile.so* with guile-1.8.8 source code. When > running, I got the error: > >> Unbound variable: define-private > > > According to my debug tracing, the initialization of *scm_init_guile* has > been executed safely. And I'm sure that *boot-9.scm* has been loaded. The > error occurred at a user scm file: > > (define-public (randomize-rand-seed) >> (ly:randomize-rand-seed) >> (let* >> ((t (gettimeofday)) >> (seed (* >> (cdr t) >> (car t) >> (getpid)))) >> (set! *random-state* (seed->random-state seed)))) >> >> > I saw that the C function *getpid* has been called, then the error was > thrown. > > And I noticed that the *define-private* was referenced only once in > boot-9.scm around all guile-1.8.8 assets: > >> (define define-private define) >> >> (defmacro define-public args >> (define (syntax) >> (error "bad syntax" (list 'define-public args))) >> (define (defined-name n) >> (cond >> ((symbol? n) n) >> ((pair? n) (defined-name (car n))) >> (else (syntax)))) >> (cond >> ((null? args) >> (syntax)) >> (#t >> (let ((name (defined-name (car args)))) >> `(begin >> (*define-private* ,@args) >> (eval-case ((load-toplevel) (export ,name)))))))) >> >> > I tried to replace 'define-private' by 'define', and I got an error of > 'Unbound variable: define'. I'm new in language Scheme and GUILE, I have no > idea what happened. > > I adjusted some C building config options to adapt the Android NDK build > environment. That seems not related to this problem, but I'm not sure. Here > is my config.h > > . > > Thanks for any help. > --00000000000072faae05b1eb0ce5 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Never mind, I figured it out. The actual problem is I didn= 't get the correct error message.

<= div dir=3D"ltr" class=3D"gmail_attr">On Sat, Oct 17, 2020 at 2:12 PM K.L. &= lt;k.l.lambda@gmail.com> wro= te:
Hello guys.

I built myself a libguile.so with guile-1.8.8 source code. When running, I got the error:
Unbound variable: define-private=

According to my debug tracing, the initial= ization of=C2=A0scm_init_guile has been executed safely. And I'm= sure that=C2=A0boot-9.scm has been loaded. The error occurred=C2=A0= at a user scm file:

(define-public (randomize-rand-seed)
(ly:randomize-ran= d-seed)
(let*
((t (gettimeofday))
(seed (*
= (cdr t)
= (car t)
= (getpid))))
(set! *random-state* (seed->random-state seed))))


I saw that the C=C2=A0function=C2=A0g= etpid=C2=A0has been called, then the error was thrown.

And I noticed that the=C2=A0define-private was referenced o= nly once in boot-9.scm around all guile-1.8.8 assets:
=
(define define-private define)

(defmacro define-public args
(define (syntax)
(error "bad = syntax" (list = 9;define-public args)))
(define (defined-name n)
(cond
= ((symbol? n) n)
((pair? n) (defined-name (= car n)))
(else (syntax))))
(cond<= /div>
((null? args)
= (syntax))
(#t
(let ((name (defined-nam= e (car args))))
`(begin
(define-private ,@args)
(eval-case ((load-tople= vel) (export ,name))))))))


I tried to replace 'define-private' = by 'define', and I got an error of 'Unbound variable: define= 9;. I'm new in language Scheme and GUILE, I have no idea what happened.=

I adjusted=C2=A0some C building config options to= adapt the Android NDK build environment. That seems not related to this pr= oblem, but I'm not sure. Here is my config.h.

Thanks for any help.
--00000000000072faae05b1eb0ce5--