From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id KK6wBSnpNF+mAgAA0tVLHw (envelope-from ) for ; Thu, 13 Aug 2020 07:18:01 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id CA+XASnpNF/SXgAAB5/wlQ (envelope-from ) for ; Thu, 13 Aug 2020 07:18:01 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 6DA8394051B for ; Thu, 13 Aug 2020 07:18:00 +0000 (UTC) Received: from localhost ([::1]:44592 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1k67Ur-0005kj-QB for larch@yhetil.org; Thu, 13 Aug 2020 03:17:57 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:37150) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1k67TG-0004HR-A4 for help-guix@gnu.org; Thu, 13 Aug 2020 03:16:18 -0400 Received: from relay7-d.mail.gandi.net ([217.70.183.200]:51133) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1k67TC-0007v7-Ns for help-guix@gnu.org; Thu, 13 Aug 2020 03:16:18 -0400 X-Originating-IP: 86.246.37.13 Received: from mimimi (lfbn-idf2-1-572-13.w86-246.abo.wanadoo.fr [86.246.37.13]) (Authenticated sender: mail@ambrevar.xyz) by relay7-d.mail.gandi.net (Postfix) with ESMTPSA id AD3B320005; Thu, 13 Aug 2020 07:16:08 +0000 (UTC) From: Pierre Neidhardt To: Ricardo Wurmus , help-guix@gnu.org Subject: Re: Problems with McCLIM (Common Lisp) In-Reply-To: <87v9hn2rlf.fsf@elephly.net> References: <87v9hn2rlf.fsf@elephly.net> Date: Thu, 13 Aug 2020 09:16:08 +0200 Message-ID: <87bljfxbgn.fsf@ambrevar.xyz> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" Received-SPF: pass client-ip=217.70.183.200; envelope-from=mail@ambrevar.xyz; helo=relay7-d.mail.gandi.net X-detected-operating-system: by eggs.gnu.org: First seen = 2020/08/13 03:16:09 X-ACL-Warn: Detected OS = Linux 3.11 and newer X-Spam_score_int: -5 X-Spam_score: -0.6 X-Spam_bar: / X-Spam_report: (-0.6 / 5.0 requ) BAYES_00=-1.9, FROM_SUSPICIOUS_NTLD=1, PDS_OTHER_BAD_TLD=1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: help-guix@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+larch=yhetil.org@gnu.org Sender: "Help-Guix" X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of help-guix-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=help-guix-bounces@gnu.org X-Spam-Score: -3.11 X-TUID: 6TK5IDWGOJEC --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi Ricardo, I haven't packaged McCLIM nor looked at the package, so I'll try to help with what I know :) > I=E2=80=99d like to play with McCLIM, but I don=E2=80=99t know enough abo= ut Common Lisp > to understand how to launch the examples. > > Here=E2=80=99s what I=E2=80=99ve done: > > guix install sbcl sbcl-mcclim sbcl-slime-swank > > This is the first question, actually: if I don=E2=80=99t manually install > sbcl-slime-swank I get errors complaining about swank being absent. > Should sbcl-mcclim propagate sbcl-slime-swank? When SBCL- packages are built, they include references to all the dependencies in the .asd so there should be no need to propagate it. This won't work if SLIME-Swank is loaded differently at load time. This is probably what's happening here. > Then I started the sbcl REPL and input this: > > (require :asdf) ; I don=E2=80=99t know why I need this ASDF is the Common Lisp build system. Among others, it allows you to load Common Lisp systems. ASDF is not standard, it's actually distributed as a package, often together with compilers. Some compilers enable it by default, some, like SBCL, don't, so you need to require it yourself. I recommend you put this in your ~/.sbclrc: =2D-8<---------------cut here---------------start------------->8--- (require "asdf") =2D-8<---------------cut here---------------end--------------->8--- > (require :mcclim) > > This seems to compile Swank, prints a whole bunch of warnings about > invalid version strings in McCLIM and returns me to the REPL. The invalid version strings are due to the Guix sbcl-* packages using git versions. There are harmless. > Then I tried > > (require :clim-examples) > > but it fails with =E2=80=9CDon't know how to REQUIRE CLIM-EXAMPLES.=E2=80= =9D. So I > loaded the asd file manually: > > (load "/home/rekado/.guix-profile/share/common-lisp/sbcl-source/mccli= m/Examples/clim-examples.asd") Only the .asd files in the well known locations are recognized by ASDF if I'm not mistaken. Note that an .asd can forward to another. So here the problem seems to be with the main McCLIM .asd file. This could be a Guix problem, see below. > Now at least clim-examples appears to be found: > > (asdf:load-system "clim-examples") > > This fails with this error: > > --8<---------------cut here---------------start------------->8--- > debugger invoked on a ASDF/FIND-COMPONENT:MISSING-DEPENDENCY in thread > #: > Component #:MCCLIM-LAYOUTS/TAB not found, required by > # > --8<---------------cut here---------------end--------------->8--- > > I see that =E2=80=9Clib/sbcl/mcclim-layouts-tab.asd=E2=80=9D exists, but = loading it > doesn=E2=80=99t help. What's the error then? Try =2D-8<---------------cut here---------------start------------->8--- (asdf:locate-system :mcclim-layouts/tab) =2D-8<---------------cut here---------------end--------------->8--- It will tell you where the system is. If it does not find it, it means the .asd file did not do the job. With all that said, here comes the most important piece of information: our SBCL build system has some serious flaws, most importantly because it _rewrites_ the .asd files. This could be why the examples cannot be found or why mcclim-layouts/tab causes problem. Personally I've stopped using sbcl- packages altogether. I'm not exclusively using cl-* packages. The drawback is that the .fasl must be built the first time, but then you get the smoothest experience just like with Quicklisp. The only exception to this, in my experience, is Osicat (the POSIX library): the cl-* version does not work but that's an upstream issue. For this one I use sbcl-osicat. Hope that helps! :) =2D-=20 Pierre Neidhardt https://ambrevar.xyz/ --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEUPM+LlsMPZAEJKvom9z0l6S7zH8FAl806LgACgkQm9z0l6S7 zH+aUAgAlle1lHaFDcmZG/QLEFA3HezzDLU69r4F27YTnRZCdSZX/JrBKiX7mHtz wQAu+Re4XvFWYHSmivBeh4v21Ssu+S86HZiVlWIJP4f4UkaDOLmVLjkhXzT15pn1 RSRbUUznRoGymDqJ+r5+n5k5FoXNTM146ddyV8hfBwAtdHyxjMf3U5y77rIxJkWa EavCXKs67FQPoW1RiuBA26IT/JJaMncBDIMniLZgtX/oec6ujgpnoT4mK8RzTVyp otdUsCyJBt/hVEv/pjvdODuVu3g6IKsg8xcTbyj/4pBwLzj0u/JYMFeD8Sk5gxe1 rNpeR54/+SUCohjWF/EVekMCuhHBsg== =qgHG -----END PGP SIGNATURE----- --=-=-=--