From owner-help-octave at bevo dot che dot wisc dot edu Fri Feb 7 11:49:32 1997 Subject: make crash on linux From: "John W. Eaton" To: blair at hoodlum dot dseg dot ti dot com (arthur blair) Cc: help-octave at bevo dot che dot wisc dot edu Date: Fri, 7 Feb 1997 11:48:20 -0600 On 7-Feb-1997, arthur blair wrote: | I'm trying to compile octave 202 on a redhat 4 linux box. | I installed g77 & gcc 2.7.2.1 & the latest libraries from the CD. | ./configure --enable-shared | ran fine but make crashes with | ld: cannot open -lieee: No such file or directory | make[2]: *** [octave] Error 1 | make[2]: Leaving directory `/home/blair/ftp/octave-2.0.2/src' | make[1]: *** [src] Error 2 | make[1]: Leaving directory `/home/blair/ftp/octave-2.0.2' | make: *** [all] Error 2 | ludwig:/home/blair/ftp/octave-2.0.2# | | what & where should be libieee? Here's the information from the README.Linux file about this problem: The linker can't find -lieee ---------------------------- This can happen because your libraries don't match your version of gcc. Some recent Linux distributions don't include a libieee.a file because IEEE support is now the default and the library is no longer needed, but the gcc specs file still adds -lieee to the linker command if gcc is invoked with the -mieeefp flag. I believe that you should be able to fix this by editing the gcc specs file. In it, you should find something like this: %{!shared: %{mieee-fp:-lieee} %{p:-lgmon} %{pg:-lgmon} \ %{!ggdb:-lc} %{ggdb:-lg}} changing it to %{!shared: %{p:-lgmon} %{pg:-lgmon} %{!ggdb:-lc} %{ggdb:-lg}} should keep gcc from adding -lieee to the link command. You can find the location of the specs file by running the command gcc -v. If you can't edit the gcc specs file for some reason, another solution that should work is to create an empty libieee.a file in the Octave src directory using the command: ar cq libieee.a NOTE: you should fix this problem (either by editing the specs file or by creating the library) *before* running configure and compiling Octave. Otherwise, configure may incorrectly determine that your system doesn't have support for some IEEE math functions. jwe