[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Getting pkgconfig to a specific location
From: |
Thomas Dickey |
Subject: |
Re: Getting pkgconfig to a specific location |
Date: |
Mon, 3 Jan 2022 17:27:00 -0500 |
User-agent: |
Mutt/1.10.1 (2018-07-13) |
On Mon, Jan 03, 2022 at 08:36:43AM -0500, Vincent Fortier wrote:
> Hi,
>
> I'm a community dev working on the SynoCommunity project. We're using
> ncurses for multiple opensource packages that we integrate so they can
> be installed on Synology NAS (which uses linux).
>
> While trying to update ncurses to 6.3 I tried (once more) to modify
> the pkgconfig location to another location. Under synology NAS each
> application is self-contained and installed under
> /var/packages/<app>/target. When cross-compiling our installation
> prefix is set as such which lead to having pkgconfig directory to sit
> under $(INSTALL_PREFIX)/lib/pkgconfig. That $(INSTALL_PREFIX) sits
> under our working directory $(INSTALL_DIR).
>
> >From the documentation the following two are obvious:
> --prefix=$(INSTALL_PREFIX)
> --with-install-prefix=$(INSTALL_DIR) --> or using DESTDIR at make install
> time
hmm - "--with-install-prefix" isn't intended as the pathname by
which an application finds the data. It is a configure-time
version of $DESTDIR (which relocates the installed data,, making
it simple(r) to construct CD images, etc.).
that said, the ncurses build scripts shouldn't be repeating '$(INSTALL_DIR)'.
But the configure script can be confused, since it wouldn't see
that as an absolute pathname such as "/whatever/lib/pkgconfig",
and would attempt to add an absolute prefix in front.
That's in 6.3-release. In post-6.3 development, I've relaxed that
a little (mainly for users who want to configure when the pkgconfig
directory does not yet exist).
So... to let me understand the problem better, it would help to have
a script which shows the complete configure-command that you're trying.
Given that, I can either offer some advice on workarounds, to attempt
to solve the problem :-)
> When ever I install ncurses the pkgconfig directory ends-up going
> under (cross-compiling x86_64 under x86_64 in this case):
> $(INSTALL_DIR)/usr/lib/x86_64-linux-gnu/pkgconfig
>
> I'm doing something similar for terminfo and it works just fine:
> --with-terminfo-dirs=$(INSTALL_PREFIX)/share/terminfo
>
> So my obvious choice is is to set the following:
> --with-pkg-config-libdir=$(INSTALL_PREFIX)/lib/pkgconfig
>
> It so happen that ncurses install the pkgconfig under:
> $(INSTALL_DIR)/home/spksrc/gdbm-ncurse/spksrc/cross/ncurses/work-kvmx64-7.0/install/usr/local/ncurses/lib/pkgconfig/
> Which could be summarized as:
> $(INSTALL_DIR)/$(INSTALL_DIR)/$(INSTALL_PREFIX)/lib/pkgconfig/
>
> I've tried every possible variation on that theme and it always get to
> that same point. I thought it could be a framework environment
> variable but haven't found anything yet.
>
> This is normally trivial but I've been spending way more cycles than
> expected on something that I thought would be trivial to do.
>
> Help much appreciated :)
>
> - vin (@th0ma7)
>
> For reference:
> https://github.com/SynoCommunity/spksrc
> https://synocommunity.com/
>
--
Thomas E. Dickey <dickey@invisible-island.net>
https://invisible-island.net
ftp://ftp.invisible-island.net
signature.asc
Description: PGP signature