bugGNU Octave - Bugs: bug #34030, make fails with "Missing...

 
 

bug #34030: make fails with "Missing message separator", "-lpcre: Command not found"

Submitted by:  None
Submitted on:  Tue 16 Aug 2011 08:37:49 PM UTC  
 
Category: Configuration and Build SystemSeverity: 3 - Normal
Priority: 5 - NormalItem Group: Build Failure
Status: NoneAssigned to: None
Originator Name: Alan FeuerbacherOriginator Email: -unavailable-
Open/Closed: ClosedRelease: 3.4.2
Operating System: GNU/Linux

Add a New Comment(Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

Sun 25 Sep 2011 07:22:06 PM UTC, comment #4:

Issue reporter indicates problems have gone away. Closing bug report.

Rik <rik5>
Project Administrator
Fri 26 Aug 2011 09:20:36 PM UTC, comment #3:

> Mon 22 Aug 2011 03:38:23 AM GMT, comment #2:


> I think the problem with the separator is fixed now, but I don't think it is actually possible to compile a statically linked version of Octave. Is that what you are trying to do? If so, why?


Only because I couldn't get shared libraries to work. However, it turns out that a number of other things were wrong with my environment and the way I was trying to compile stuff that cause various problems with shared libraries, but that all seems to work now. I had my sysadmin update Redhat 5 with the latest rpm's for a lot of stuff.

For example, I ran into a problem (a nice guy with the readline group helped with this) where my LD_LIBRARY_PATH contained several "~/" references, and these were not getting expanded properly. Once I replaced these with full pathnames, and recompiled a lot of stuff, it all began to work. I think this is why Octave was not finding libgfortran.so.3 at one point, for example.

> Mon 22 Aug 2011 03:32:46 AM GMT, comment #1:


> I strongly recommend against compiling with --enable-shared=no and --enable-dl=no. Why did you choose those options?


Out of desperation, because I couldn't figure out anything else. But this is now working.

> I think the missing separator problem is solved by this changeset:
> . . .


> You won't need this changeset at all with 3.4.2 if you don't disable shared libraries and dynamic loading.


I took your advice and this stuff seems to work fine now.

> Why did you need to set the --with-blas and --with-lapack options? Did the configure script not detect them correctly?


I think that the latest Redhat 5 rpm's for them are too old to work with the latest gcc compiler (gcc-4.6.1). To make a long story short, the rpm's contain libgfortran.so.1 whereas the latest software is looking for libgfortran.so.3 . That made anything to do with Fortran not work, which I wrongly interpreted as the Octave installer not being able to find the Fortran libraries at all. So I found out how to install the latest LAPACK and BLAS libraries using ATLAS (atlas3.8.4), which of course meant that I had to point Octave to them. Now it all seems to work fine.

> It might be simpler to add /home/afbacher/GCC/GCC_2_4.6.1/install/bin to your shell PATH before running configure. Then you should be able to skip setting CC, CXX, CPP, and F77 when you run Octave's configure script...


Thanks!

Alan Feuerbacher

Alan Feuerbacher <alanf>
Mon 22 Aug 2011 03:38:23 AM UTC, comment #2:

Sorry, I forgot to paste the following URL in my previous comment:

http://hg.savannah.gnu.org/hgweb/octave/rev/fb69561e5901

But I also just noticed that this changeset had a mistake, and it is only the first hunk of the diff that fixes the Makefile line continuation problem. The other unintended change was undone by this changeset:

http://hg.savannah.gnu.org/hgweb/octave/rev/18797a4b6174

I think the problem with the separator is fixed now, but I don't think it is actually possible to compile a statically linked version of Octave. Is that what you are trying to do? If so, why?

John W. Eaton <jwe>
Project Administrator
Mon 22 Aug 2011 03:32:46 AM UTC, comment #1:

I strongly recommend against compiling with --enable-shared=no and --enable-dl=no. Why did you choose those options?

I think the missing separator problem is solved by this changeset:

To take advantage of this change with 3.4.2, you'll need to have devleloper tools like automake, autoconf, libtool, etc. installed.

You won't need this changeset at all with 3.4.2 if you don't disable shared libraries and dynamic loading.

Why did you need to set the --with-blas and --with-lapack options? Did the configure script not detect them correctly?

It might be simpler to add /home/afbacher/GCC/GCC_2_4.6.1/install/bin to your shell PATH before running configure. Then you should be able to skip setting CC, CXX, CPP, and F77 when you run Octave's configure script...

John W. Eaton <jwe>
Project Administrator
Tue 16 Aug 2011 08:37:49 PM UTC, original submission:

I'm reporting two separate but probably related bugs here. I think I've found the cause of one, but not the other.

I'm compiling Octave-3.4.2 on one of my company's servers which runs Redhat 5. It's a Dell 2-core Xeon machine.

Doing cat /proc/version yields:

Linux version 2.6.18-194.11.1.el5 (mockbuild@hs20-bc2-3.build.redhat.com) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-48)) #1 SMP Tue Jul 27 05:45:06 EDT 2010

I'm using gcc-4.6.1 for the gcc, g++ and gfortran compilers.

To get Octave to configure, I had to install ncurses-5.9, readline-6.2, pcre-8.12, lapack-3.3.1 and the BLAS libraries with atlas3.8.4 .

I'm not the system administrator, so I'm installing everything in my own directory structure. Since I'm relatively new to compiling GNU stuff, all this is not terribly well organized, so please bear with me. I've done a lot of experimenting to get to the point where configure runs all the way through.

Configure script:

./configure --prefix=/home/afbacher/GCC/Octave/install --enable-shared=no --enable-dl=no --enable-extra-warning-flags --enable-strict-warning-flags --without-opengl --without-glpk --with-blas="-lcblas -lf77blas -latlas" --with-lapack="-llapack" CXX=/home/afbacher/GCC/GCC_2_4.6.1/install/bin/c++-4.6.1 CC=/home/afbacher/GCC/GCC_2_4.6.1/install/bin/gcc-4.6.1 CPP=/home/afbacher/GCC/GCC_2_4.6.1/install/bin/cpp-4.6.1 CPPFLAGS="-I/home/afbacher/GCC/PCRE/install/include -I/home/afbacher/GCC/Octave/install/include" F77=/home/afbacher/GCC/GCC_2_4.6.1/install/bin/gfortran-4.6.1 LDFLAGS="-L/home/afbacher/GCC/GCC_2_4.6.1/install/lib64 -L/home/afbacher/GCC/GCC_2_4.6.1/install/lib -L/home/afbacher/GCC/PCRE/install/lib -L/home/afbacher/GCC/LAPACK/ATLAS3.8.4/install/lib -L/home/afbacher/GCC/Octave/install/lib"

Note that when I use "..../" it means "Wherever I've installed the source code". At this point I'm also compiling Octave in a temporary directory.

FIRST BUG

When compiling in ..../octave-3.4.2/src the make script gives an error something like:

"Missing message separator"

I found a discussion online that pointed me in the right direction: the Makefile has spaces instead of a tab at the beginning of a command line.

In this case, ..../octave-3.4.2/src has a Makefile which at line 9684 has:

This has 4 spaces at the beginning -- they should be a TAB because that's what gmake requires.
I modified the Makefile accordingly and it got further along.

Here's the output of diff for the before and after Makefiles:

Anonymous

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach File(s):
   
   
Comment:
   

Attached Files
file #23821:  Makefile.bz2 added by None (43KiB - application/x-bzip)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by rik5 (Posted a comment)
  • -unavailable- added by alanf (Posted a comment)
  • -unavailable- added by jwe (Posted a comment)
  • -unavailable- added by None (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only project members can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 2 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Sun 25 Sep 2011 07:22:06 PM UTCrik5Open/ClosedOpen=>Closed
    Tue 16 Aug 2011 08:37:49 PM UTCNoneAttached File-=>Added Makefile.bz2, #23821

    Back to the top


    Powered by Savane 3.1-cleanup1