Perl compilation failing: "No error definitions found at Errno_pm.PL"
Hi
Compilation of perl 5.14.2 is failing at a particular module during makefile. I am installing into a non-standard location, as an earlier version of Perl is already installed. ./configure works but 'make' fails with: Code:
Writing Makefile for Errno 1. http://openpli.git.sourceforge.net/g...b8a7d4bf9452a0 which talks about" Quote:
2. http://www.mail-archive.com/clfs-dev.../msg01108.html which states: Quote:
Thanks Compused |
Quote:
And / or : # yum install gcc-c++ ... to insure that all the files making gcc usable, are installed. ( Perl-5.14.2 will usually compile OK on any Linux OS.) . |
thanks
I found this article written by someone also attempting to compile perl on a qnap device: http://forum.subsonic.org/forum/view...php?f=6&t=6459 It advises: Code:
# perl searches for errno.h only at a few predefined places where we do not have it. Code:
my $linux_errno_h = -e '/usr/include/errno.h' ? It has answered the question However I continue to encounter problems compiling perl 5.14.2; I tried an unstable version, 5.15.6, and it gave the same 'make' error: Code:
chmod 644 ../../lib/auto/threads/shared/shared.bs Thanks MD |
The same problem here. Has anyone an idea?
I think it is a problem with the dynamic loading and the threading support both used at the same time. But I am not sure about that. |
I have managed the complete the 'make' process but 'make test' fails abysmally as posted here:
http://www.linuxquestions.org/questi...5/#post4574161 Note there was a subsequent post in the Nabble forum where the following was just commented out rather than being modified to use MINIPERL: $(RUN_PERL) installman --destdir=$(DESTDIR) $(INSTALLFLAGS) (but I have not tested it as the poster said it was still not right) I am currently using tips in other qnap forums/ posts to modify /update library path references and some of the installation tools themselves eg Make Compused |
FYI: the Perl gurus (inc those who develop Perl) hang out at perlmonks.org; you could try asking there.
|
@Compused - did you ever find a solution to this issue? I'm having the exact same issue on a Synology NAS Linux.
I had initially struggled with it not picking up shared libraries properly. I fixed up that Errno.PL issue as per that post on the Subsonic forum that you linked to in this thread, then ran: Code:
export LD_LIBRARY_PATH=/opt/lib:/opt/arm-none-linux-gnueabi/lib Code:
./perl -f -Ilib pod/buildtoc -q I also read that someone had the same issue compiling on a Vax system, but got around it by compiling with symbols enabled (-g compiler flag). This didn't work for me unfortunately. Any ideas? I've searched high and low. |
I did overcome it; its 9am here and I've just got to the office; give me an hour or two
Update: 1. I first updated GCC. Perhaps I didnt need to do this, as I stated in the post, and you could try skipping this step. Refer http://forum.qnap.com/viewtopic.php?p=252858 2. Then this is what I did for Perl. Note that its more elegant to change the $PATH to overcome the errno.h file problem than change the file itself. Note that my configuration switches were limited to: ./Configure -Dcc=gcc -Dprefix=/opt -Dusethreads Refer the same posting, ie http://forum.qnap.com/viewtopic.php?p=252858 about half way down Specifying library paths, include paths, LD_LIBRARY_PATH parameters seemed to make no difference as I have noted. Compused |
Thanks for your reply, which I read at the time. I had been steeling myself to attack this problem but kept putting it off since I realised it would be a lengthy effort. And in the end I found a way around my need for a threaded perl build altogether. It had been needed by Automake in order to compile this:
https://github.com/savonet/shine#readme However since I posted the question I have got more used to cross compiling rather than compiling on the native system, so I was able to build libshine successfully on a Ubuntu VM (which had a threaded perl). |
All times are GMT -5. The time now is 09:46 AM. |