From owner-freebsd-questions@FreeBSD.ORG Fri Dec 19 17:46:15 2008 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0739D1065670 for ; Fri, 19 Dec 2008 17:46:15 +0000 (UTC) (envelope-from eagletree@hughes.net) Received: from smtprelay.b.hostedemail.com (smtprelay0223.b.hostedemail.com [64.98.42.223]) by mx1.freebsd.org (Postfix) with ESMTP id BA8928FC0C for ; Fri, 19 Dec 2008 17:46:14 +0000 (UTC) (envelope-from eagletree@hughes.net) Received: from filter.hostedemail.com (b-bigip1 [10.5.19.254]) by smtprelay01.b.hostedemail.com (Postfix) with SMTP id 397905D9054A for ; Fri, 19 Dec 2008 17:46:13 +0000 (UTC) X-SpamScore: 1 X-Spam-Summary: 2, 0, 0, 3b7ce2825a9d12c5, 944facfeb153b4f0, eagletree@hughes.net, freebsd-questions@freebsd.org, RULES_HIT:355:379:541:564:945:946:966:973:988:989:1260:1261:1277:1311:1313:1314:1345:1437:1515:1516:1518:1534:1542:1593:1594:1711:1730:1747:1766:1792:2196:2199:2379:2393:2559:2562:2693:2902:3354:3636:3865:3866:3867:3868:3869:3870:3871:3872:3874:3876:3877:4321:4385:4605:5007:6114:6117:6119:7652:7903:8501:9121, 0, RBL:none, CacheIP:none, Bayesian:0.5, 0.5, 0.5, Netcheck:none, DomainCache:0, MSF:not bulk, SPF:, MSBL:none, DNSBL:none Received: from [192.168.0.3] (dpc6744118153.direcpc.com [67.44.118.153]) (Authenticated sender: eagletree@hughes.net) by omf09.b.hostedemail.com (Postfix) with ESMTP for ; Fri, 19 Dec 2008 17:46:08 +0000 (UTC) Mime-Version: 1.0 (Apple Message framework v753) Content-Transfer-Encoding: 7bit Message-Id: <34058EDE-BC14-4DCC-AF3C-100F77DEE486@hughes.net> Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed To: FreeBSD-Questions Questions From: Chris Date: Fri, 19 Dec 2008 09:46:03 -0800 X-Mailer: Apple Mail (2.753) X-session-marker: 6561676C6574726565406875676865732E6E6574 Subject: Linking libraries for compat_linux X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 Dec 2008 17:46:15 -0000 I've bumped into a library I can't resolve and I must have a disconnect in how the linux_compat works because I can't see how it could be solved. I have the following: * compat_linux enabled in the kernel, * /usr/ports/emulators/linux_base_fc7 * sysctl kern.fallback_elf_brand=3 * rpm2cpio to alter rpms * cpio to create the directories and place the files where they belong in /compat/linux. I have a program that now has all it's libraries resolved but one in preparation to attempt to run the Linux Quickbooks install on FreeBSD. The ldd output, prior to installing /usr/ports/devel/fam (a required shared library) looks like this. ldd ./opt/qbes7/util/qbmonitord ./opt/qbes7/util/qbmonitord: libfam.so.0 => not found libpthread.so.0 => /lib/libpthread.so.0 (0x28072000) libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x28088000) libm.so.6 => /lib/libm.so.6 (0x28171000) libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x28198000) libc.so.6 => /lib/libc.so.6 (0x281a4000) /lib/ld-linux.so.2 (0x28054000) I install fam to get rid of the not found, perform the following link: ln /usr/local/lib/libfam.so.0 /compat/linux/lib/libfam.so.0 and then I get this: ldd ./opt/qbes7/util/qbmonitord ./opt/qbes7/util/qbmonitord: ./opt/qbes7/util/qbmonitord: error while loading shared libraries: / lib/libfam.so.0: ELF file OS ABI invalid ./opt/qbes7/util/qbmonitord: exit status 127 which kind of makes sense since this library is not a linux library. I'd read that I don't need to brandelf -t linux a library but I tried that anyway, realizing it was likely meaningless (or harmful). It didn't help of course. My next thought was to try and get a libfam.so.0 binary from a linux distro but stopped when it occurred to me that it would be illogical since fam uses kqueue on FreeBSD rather than something called imon. imon is not available for FreeBSD so a linux version shouldn't be able to function if it expects that. On FreeBSD, fam configures itself to not use imon. What is the appropriate course of action to get a linux flavor shared library for fam (or anything which runs into such conflicts) that will work on FreeBSD yet be recognized as suitable for linux under the compat mode?