Re: How to provide header files for 0compile

Thomas Leonard <[email protected]> Sat, 15 Jul 2017 19:40:42 +0100
Newsgroups gmane.comp.file-systems.zero-install.devel
Message-ID <CAG4opy8pGRAD-KTE5AxTQ1GQgwe0zEEyj-KrQ_VyzZ6FS-sRfQ@mail.gmail.com>
On 15 July 2017 at 01:26, Eric Duhamel <[email protected]> wrote:
> On Thu, 2017-07-06 at 20:43 +0100, Thomas Leonard wrote:
>> On 5 July 2017 at 14:57, Eric Duhamel <[email protected]> wrote:
>> > I've gotten pretty handy with 0install when it comes to packaging
>> > binaries
>> > with required libraries, but I don't yet know how to do the same
>> > for
>> > 0compile.
>> >
>> > Documentation for 0compile says "For header files (-dev packages),
>> > there
>> > will often be a source implementation that generates the header
>> > files...".
>> > In my case I don't think there is a source implementation and I'm
>> > not sure
>> > how to make one.
>> >
>> > I want to write a feed that can tell 0compile how to build a
>> > program from
>> > source. The program source uses Make, but it requires several -dev
>> > packages.
>> > I have access to said packages and the header files inside. How do
>> > I tell
>> > 0compile to use the header files when compiling from source?
>>
>> Just use <requires> as for any other dependency, and depend on the
>> interface that provides the header files. You can either add the
>> headers to the include path directly with an environment variable or,
>> if the header files use pkg-config, add the .pc file to the pkg-
>> config
>> path. Make sure you use relative paths in the .pc files in that case
>> (e.g. ${pcfiledir}/../../include).
>
> Thank you. After a lot of digging I found some of the environment
> variables I need to insert to are CPATH and LIBRARY_PATH (not
> LD_LIBRARY_PATH). pkg-config sounds automagical which would be great,
> but I haven't tried it yet.
>
> For this particular program (Eureka 1.21) I couldn't get 0compile to
> build it. The applicable error line returned was
>
> [code]make: *** No rule to make target 'obj_linux/e_basis.o', needed by
> 'eureka'.  Stop.[/code]
>
> I was able to make it compile without using 0install by adding the
> appropriate paths to CPATH and LIBRARY_PATH and calling make, so don't
> know why 0compile would fail.
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> Zero-install-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/zero-install-devel



-- 
talex5 (GitHub/Twitter)        http://roscidus.com/blog/
GPG: 5DD5 8D70 899C 454A 966D  6A51 7513 3C8F 94F6 E0CC

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot