Linux - NewbieThis Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place!
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Distribution: Debian testing/sid; OpenSuSE; Fedora; Mint
Posts: 5,524
Rep:
Afaik, Error 2 just means the build aborted. Try editing the make file compiler switches to turn all errors into warnings, and remove compiler optimizations. You also might be missing certain c++ headers.
The usual answer is that you have missed something, however, as the error is very specific, have you checked write_buildcustomize.pl to search for strict.pm and see if there are any invalid characters?
Could be the file was not downloaded correctly and somehow this file has truncated data??
Distribution: Debian testing/sid; OpenSuSE; Fedora; Mint
Posts: 5,524
Rep:
Gcc and g++
Quote:
Originally Posted by 1993istheend
Which switch would that be?
The Linux compilers have many options. But if you're building your own brew you have to learn the common ones.
I don't know which are in the makefile you have. But you should have a look at the man page for gcc. It also could be that the error message states the actual cause of the error, in which case you can do as grail wrote above.
You would probably need to check where $osname is being used. I would add that at the point you are in the build it WILL still be using the host systems copy of perl to support the 'use' call.
So strict.pm will be the one from your host system.
Distribution: LFS 9.0 Custom, Merged Usr, Linux 4.19.x
Posts: 616
Rep:
"^O" gets the name of the current operating system inside a Perl script. The fact that it is complaining of an invalid character coming from ^O may mean that Unicode is getting in there. I would try:
Code:
(Assuming you're in chapter 5.)
LC_CTYPE=en_US.UTF-8 sh Configure -des -Dprefix=/tools -Dlibs=-lm
LC_CTYPE=en_US.UTF-8 make
Replacing "en_US" with your actual locale, and see if that works.
"^O" gets the name of the current operating system inside a Perl script. The fact that it is complaining of an invalid character coming from ^O may mean that Unicode is getting in there. I would try:
Code:
(Assuming you're in chapter 5.)
LC_CTYPE=en_US.UTF-8 sh Configure -des -Dprefix=/tools -Dlibs=-lm
LC_CTYPE=en_US.UTF-8 make
Replacing "en_US" with your actual locale, and see if that works.
This would be before the make command in the perl section of chapter 5?
EDIT: I saw that these commands were similar to the ones in the book, I ran them and ended up with the same error. I may just start over.
Last edited by 1993istheend; 06-26-2017 at 03:55 PM.
Reason: new info
Distribution: LFS 9.0 Custom, Merged Usr, Linux 4.19.x
Posts: 616
Rep:
LC_CTYPE=<your locale> (commands)
Indicates you want to run (commands) with the CTYPE of a different locale than you're using. The strict.pm\0 is an indication that you're system isn't reading the line with the correct character set. There are numbers there it doesn't understand the purpose of and that's what's getting translated into "\0" by the system library.
Are you using ssh? A non-us locale or keyboard? Was your LC_ALL set to POSIX in chapter 5?
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.