endr error

endr error

Post by Kjell Moe » Thu, 27 Mar 1997 04:00:00



make[2]: Entering directory `/usr/src/linux/lib'
make[2]: Nothing to be done for `all_targets'.
make[2]: Leaving directory `/usr/src/linux/lib'
make[1]: Leaving directory `/usr/src/linux/lib'
make[1]: Entering directory `/usr/src/linux/arch/i386/kernel'
gcc -D__KERNEL__ -I/usr/src/linux/include -D__ASSEMBLY__ -D__SMP__
-traditional
-c entry.S -o entry.o
/tmp/cca00621.s: Assembler messages:
/tmp/cca00621.s:625: Error: Unknown pseudo-op:  `.rept'
/tmp/cca00621.s:627: Error: Unknown pseudo-op:  `.endr'
make[1]: *** [entry.o] Error 1
make[1]: Leaving directory `/usr/src/linux/arch/i386/kernel'
make: *** [linuxsubdirs] Error 2

does someone know how I can solve this problem. One dag
I got this error message and since no kernel wants to compile anymore

--
----Begin signature----

Anything labeled "NEW" and/or "IMPROVED" isn't.  The label means the
price went up.  The label "ALL NEW", "COMPLETELY NEW", or "GREAT NEW"
means the price went way up.


----End signature----

 
 
 

endr error

Post by Frank Sweets » Thu, 27 Mar 1997 04:00:00


: /tmp/cca00621.s: Assembler messages:
: /tmp/cca00621.s:625: Error: Unknown pseudo-op:  `.rept'
: /tmp/cca00621.s:627: Error: Unknown pseudo-op:  `.endr'
: make[1]: *** [entry.o] Error 1
: make[1]: Leaving directory `/usr/src/linux/arch/i386/kernel'
: make: *** [linuxsubdirs] Error 2

First guess... what version of bin86, binutils, and gcc are you running,
and what kernel version are you trying to compile?
--
"Oh, I took that thing [emacs] off,  |  RedHat Linux 2.1.26 i386
it was huge and nobody uses it. It's |  Because reboots are for upgrades!

        -MSDOS programmer/sysadmin   |   for pgp key.        frank sweetser

 
 
 

endr error

Post by <m.. » Thu, 27 Mar 1997 04:00:00



> gcc -D__KERNEL__ -I/usr/src/linux/include -D__ASSEMBLY__ -D__SMP__
> -traditional -c entry.S -o entry.o
> /tmp/cca00621.s: Assembler messages:
> /tmp/cca00621.s:625: Error: Unknown pseudo-op:  `.rept'
> /tmp/cca00621.s:627: Error: Unknown pseudo-op:  `.endr'
> make[1]: *** [entry.o] Error 1
> make[1]: Leaving directory `/usr/src/linux/arch/i386/kernel'
> make: *** [linuxsubdirs] Error 2

I introduced this code about 2.1.9, so I wince every time I see this
bite someone.

There are two solutions:

(1) get a more recent assembler.  The assembler is distributed with
    binutils.  I know that 2.6.0.14 and 2.7.0.2 both work, and I expect
    the most recent assembler, 2.7.0.9, will work too.

(2) Apply the following patch, which makes entry.S look uglier,
    but does work correctly with all versions of the assembler, and does
    generate the same object code.

I'm running my system with this patch.

If someone who still has an old assembler that gives 'error unknown
pseudo-op .rept' would try this patch, boot up the resulting kernel,
run it for a little bit, and send me mail about it, I'll forward it
to Linus Torvalds.

Michael Chastain

"love without fear"

diff -u -r -N linux-2.1.26/arch/i386/kernel/entry.S linux/arch/i386/kernel/entry.S
--- linux-2.1.26/arch/i386/kernel/entry.S       Sun Jan 26 10:07:04 1997

        .long SYMBOL_NAME(sys_vm86)
        .long SYMBOL_NAME(sys_query_module)
        .long SYMBOL_NAME(sys_poll)
-       .rept NR_syscalls-168
-               .long SYMBOL_NAME(sys_ni_syscall)
-       .endr
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)       /* 170 */
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)       /* 175 */
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)       /* 180 */
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)       /* 185 */
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)       /* 190 */
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)       /* 195 */
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)       /* 200 */
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)       /* 205 */
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)       /* 210 */
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)       /* 215 */
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)       /* 220 */
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)       /* 225 */
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)       /* 230 */
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)       /* 235 */
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)       /* 240 */
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)       /* 245 */
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)       /* 250 */
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)
+       .long SYMBOL_NAME(sys_ni_syscall)       /* 255 */
+       .long SYMBOL_NAME(sys_ni_syscall)