Date: Fri, 1 Sep 2023 20:51:44 +0200 From: Felix Palmen <zirias@freebsd.org> To: ports@freebsd.org, emulation@freebsd.org Subject: Re: Building a Linuxulator userland from source Message-ID: <acle3sperrr3zhi7vtoxsiqshyyqtxbdvz7rrpq3l43ifc5u5x@bs5t3vhw2lew> In-Reply-To: <03b7f828f3fbc3c203fc885baf6b9db1@Leidinger.net> References: <xcztahm3vu3bjghjqqxuoy2xabyjmyfq22jw6mkaaaqo7wa36s@fdq7dlvpuhlk> <i3kr2kukjwgw2xvjlzgshwe72bjpnln4lvl7prhk77nelzidm6@2g56zi3ku7ec> <d3xyk4axjo2j5xctsoolmfdbq6zk6bs3r6dbhs4dnmfjgvhj6t@zy3fuy2yyt4e> <03b7f828f3fbc3c203fc885baf6b9db1@Leidinger.net>
next in thread | previous in thread | raw e-mail | index | archive | help
--lun7gyrnmqhe2oq4 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable * Alexander Leidinger <Alexander@Leidinger.net> [20230901 19:11]: > Am 2023-09-01 16:55, schrieb Felix Palmen: > > * Infrastructure libs like libdrm, libglvnd, alsa, v4l, ... >=20 > Infrastructure ports are what we provide in the linux base ports. So I'm = not > surprised... :) Yes of course, this is what you will need in any case (and it's indeed a lot of work. Still not giving up just yet, hehe). > Are you already taking into account the fall-through of config files to > FreeBSD native config files? This is the main difference between a linux > distribution (linux_dist ports) and a linux base for FreeBSD. Yes, e.g. I don't let the alsa libs install some asound.conf ... but this is quite simple so far, very few packages want to install something to /etc at all (and some things like glibc's ld.so.conf are needed). > Another > difference may be to only compile the libs instead of the binaries (e.g. = the > linux libmp3lame.so would be needed by software, but the FreeBSD lame > executable could be used). So far, I didn't care about that, except when the upstream build system provides configure options. This will be something to clean up later. It's also about (tons?) of unnecessary docs. I plan to allow manpages to be installed for things that are GNU- or Linux-specific, even ported man-db for that, cause I see some value in that. But for anything that would just duplicate manpages that are the same on FreeBSD, this will be yet another cleanup step. So far: First get something to work at all ;) > > There were almost no surprising build issues so far (so, I guess > > accidentally pulling in things from FreeBSD base really isn't a thing, > > at least not when building in poudriere), except for one: It seems a > > "relative" rpath (using $ORIGIN) doesn't work. To work around this with > > one port using that during build, I had to add some explicit > > LD_LIBRARY_PATH. >=20 > Only for the build, or also for running/executing afterwards? Only for the build, I ran into this issue with gobject-introspection which uses its own shared lib to create some introspection files during the build. This is done using some rpath relative to $ORIGIN and for some reason, it just doesn't work. Glibc's ldd script can even resolve the library correctly, but the dynamic linker can't. Anyways, there's a workaround ;) Cheers, Felix --=20 Felix Palmen <zirias@FreeBSD.org> {private} felix@palmen-it.de -- ports committer -- {web} http://palmen-it.de {pgp public key} http://palmen-it.de/pub.txt {pgp fingerprint} 6936 13D5 5BBF 4837 B212 3ACC 54AD E006 9879 F231 --lun7gyrnmqhe2oq4 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iNUEABYKAH0WIQRpNhPVW79IN7ISOsxUreAGmHnyMQUCZPIyuF8UgAAAAAAuAChp c3N1ZXItZnByQG5vdGF0aW9ucy5vcGVucGdwLmZpZnRoaG9yc2VtYW4ubmV0Njkz NjEzRDU1QkJGNDgzN0IyMTIzQUNDNTRBREUwMDY5ODc5RjIzMQAKCRBUreAGmHny MSwwAQCCDL1YVMd1VEv/qD2Jr796EBRgHJ8I2fiM1NdOsWmSnQD+NIoSdjtiyBhL wYcZnLaRyCRj4zT1UtHOnM/jcRN6+AI= =rc5X -----END PGP SIGNATURE----- --lun7gyrnmqhe2oq4--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?acle3sperrr3zhi7vtoxsiqshyyqtxbdvz7rrpq3l43ifc5u5x>