in reply to Re^4: EXTERN.h missing when compiling on OpenWrt
in thread EXTERN.h missing when compiling on OpenWrt

It is the same device and upgrading it is not an option.

I had hoped that there was some way to get Net::SSLeay on there, but I am about to give up.

But even if I can get a less memory-hungry cpan-client to work it won't solve my problem with the missing EXTERN.h...

But thanks anyway.

  • Comment on Re^5: EXTERN.h missing when compiling on OpenWrt

Replies are listed 'Best First'.
Re^6: EXTERN.h missing when compiling on OpenWrt
by bliako (Abbot) on Dec 12, 2018 at 10:37 UTC

    the file 02packages.details.txt.gz is 1.3MB compressed. If you run out of memory uncompressing that then...

    As marto suggested, try something with low memory footprint (cpanm) OR maybe you should tell cpan exactly what module you want installed rather than starting with a shell which will try to bring itself up-to-date. The guide posted contains how to increase RAM via SWAP on USB. If you master that, then a lot of other problems you may encounter in the future can be solved.

    You want something like "perl-devel" (or whatever name) installed for EXTERN.h. Either via your linux's packet manager or cpan. You also have the choice of installing perl modules exclusively via the packet manager of your system. Let the packet manager deal with it and forget the cpan installers - surely the former will be a bit more aware of low-memory-systems.

      exactly what module you want installed
      All I need is Net::SSLeay which is not available via the package manager.

      Everything else is either pure-Perl (so I simply copy the modules) or is available from the repo.

      And there is a perlbase-devel package available, but it does not contain an EXTERN.h.

        And there is a perlbase-devel package available, but it does not contain an EXTERN.h

        Going by your original post, EXTERN.h (and a whole lot of other headers) should be in /usr/lib/perl5/5.20/CORE.
        I envisage that all of those headers are missing, and that the error signifies that EXTERN.h was the first required header that couldn't be located.
        EXTERN.h is, of course, the first header that SSLeay.xs tries to load.

        I don't suppose there's a perlbase-core (or similar name) package available ?


        Cheers,
        Rob
Re^6: EXTERN.h missing when compiling on OpenWrt
by marto (Cardinal) on Dec 12, 2018 at 10:37 UTC

    "I am about to give up."

    You didn't tell us much about your setup (which perl related packages you have, see the tutorial I linked to), some searches show build logs on openwrt which include extern.h. Maybe talk to the openwrt people, explain your setup and your problem? Failing that cross compile what you want for your target system.