From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Matt Wette Newsgroups: gmane.lisp.guile.user Subject: Re: dynamic-link on libc Date: Fri, 4 Aug 2017 14:44:49 -0700 Message-ID: References: NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\)) Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: blaine.gmane.org 1501883140 22755 195.159.176.226 (4 Aug 2017 21:45:40 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Fri, 4 Aug 2017 21:45:40 +0000 (UTC) Cc: guile-user@gnu.org To: Jeff Mickey Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Fri Aug 04 23:45:32 2017 Return-path: Envelope-to: guile-user@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ddkPN-000557-ID for guile-user@m.gmane.org; Fri, 04 Aug 2017 23:45:25 +0200 Original-Received: from localhost ([::1]:54499 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ddkPS-0004fc-3D for guile-user@m.gmane.org; Fri, 04 Aug 2017 17:45:30 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:40174) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ddkOu-0004W2-Bd for guile-user@gnu.org; Fri, 04 Aug 2017 17:44:57 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ddkOr-0007ZW-6d for guile-user@gnu.org; Fri, 04 Aug 2017 17:44:56 -0400 Original-Received: from mail-pf0-x234.google.com ([2607:f8b0:400e:c00::234]:34210) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ddkOr-0007Z4-13 for guile-user@gnu.org; Fri, 04 Aug 2017 17:44:53 -0400 Original-Received: by mail-pf0-x234.google.com with SMTP id o86so12450895pfj.1 for ; Fri, 04 Aug 2017 14:44:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=WvFA16tQGf/BxjC+hCRMtNxi3wgCDp7k6J0rU2WzarU=; b=Q3GXAhUaF4lsFLQ7vz0sAvVOTrboTli2tt2HN9QIwCVrE+ES9G7pg5XUEgUQdIubmH BVXQe9kZFvfrfrn5uQ7BRBEtMNrevDjV01JCl8YJSlDqfl+6ku+48OU/rl7gEWdlifmj 5mMZLmy49olfd36eq+POR1RYrSrTetIcPhYaIqkVtow1RQ3ul1faOiqrvt89pNSHtmD0 AhgxeOcFWQFSllEXpgPHtw7RNQj6/SDJolDE/TQ5txG7LMeYbS3zbg4261ut4DL8x6f5 8Migu+qMtgm6pOr/7XqN5wmMYQXAIahFsRzm0Yr564tXS6iByPA8LJmmsD5xhw0Lts51 dqcg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=WvFA16tQGf/BxjC+hCRMtNxi3wgCDp7k6J0rU2WzarU=; b=pUvzQ4lBxtnCNlQOB2fCbKuA7YLGVBb16Mpmnus+IallhwUnl7d41UfZ6HsB66CHkG rPhNSlLjty+KboSL47HfrINhX+qTYKnKT26u4eC04DnzsynhDp11FgcO5Rt1XWQcssmi mfBZKkX3SNckGhFZLsIAF4N7VW6Y66giZqkmbWh46Bn0cFibDkOTgXiGlmoBwrJRXa4j QRMqD1FkM3xQmGUgExeJea7/ID1drHm/14n4VmQKdgurkhJ3UiEZYsFdnMdjIraP79eP mGHW+j2Cyty93MC27XLW1bS6Avu54VA5FnuX0FdpgDZ66DXTDgTug3nQEFMT3uIYPXqD fmxQ== X-Gm-Message-State: AIVw113t+Kcos4PknZ+kd6rO2Pobf1dIYUC2hjAQxSXyRkmz4BFGw1jL OrOFZPv+pmDKQA== X-Received: by 10.98.58.210 with SMTP id v79mr4017966pfj.162.1501883091931; Fri, 04 Aug 2017 14:44:51 -0700 (PDT) Original-Received: from nautilus.championbroadband.com (216-165-236-44.championbroadband.com. [216.165.236.44]) by smtp.gmail.com with ESMTPSA id m65sm4435467pfi.94.2017.08.04.14.44.50 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 04 Aug 2017 14:44:51 -0700 (PDT) In-Reply-To: X-Mailer: Apple Mail (2.3273) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400e:c00::234 X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-user-bounces+guile-user=m.gmane.org@gnu.org Original-Sender: "guile-user" Xref: news.gmane.org gmane.lisp.guile.user:14021 Archived-At: > On Aug 4, 2017, at 2:15 PM, Jeff Mickey wrote: >=20 > Hi guilers! >=20 > I cannot seem to call `dynamic-link' on libc. >=20 > I'm trying to write a simple, dumb wrapper around syslog using the = (system foreign) dynamic library to learn how to use the dynamic ffi. >=20 > (use-modules (system foreign)) > (define libcsyslog (dynamic-link "libc")) (define syslog (let ((f = (pointer->procedure void (dynamic-func "syslog" libcsyslog) = (list int '*)))) (lambda (level msg) (let* ((clevel = level) (cmsg (string->pointer msg))) (f clevel cmsg))))) (syslog = 3 "hello there")=20 >=20 > This works when I symlink /lib/x86_64-linux-gnu/libc.so.6 to libc.so, = but it looks like the libtool library that is doing the load doesn't = accept names that end in ".6" as a library name, and when I used the = full path it just says "file not found". >=20 > Anyone have suggestions? I looked at the dynl.c sysdep_dynl_link = function, but I'm not sure I understand libtool well enough to know what = lt_dlopenext should be doing. >=20 > I should add I tested this on a debian system with a debian provided = guile, and a "user installed guix" guile install as well. >=20 > Thanks! >=20 > // codemac >=20 I don=E2=80=99t think you need to dynamic-link libc; just use = (dynamic-func "syslog" (dynamic-link)).