2333 |
*** Linux: Segfault during `make bootstrap' under certain recent versions of the Linux kernel. |
*** Linux: Segfault during `make bootstrap' under certain recent versions of the Linux kernel. |
2334 |
|
|
2335 |
With certain recent Linux kernels (like the one of Redhat Fedora Core |
With certain recent Linux kernels (like the one of Redhat Fedora Core |
2336 |
1), the new "Exec-shield" functionality is enabled by default, which |
1 and 2), the new "Exec-shield" functionality is enabled by default, which |
2337 |
creates a different memory layout that breaks the emacs dumper. |
creates a different memory layout that breaks the emacs dumper. |
2338 |
|
|
2339 |
|
Configure can overcome the problem of exec-shield if the architecture is |
2340 |
|
x86 and the program setarch is present. On other architectures no |
2341 |
|
workaround is known. |
2342 |
|
|
2343 |
You can check the Exec-shield state like this: |
You can check the Exec-shield state like this: |
2344 |
|
|
2345 |
cat /proc/sys/kernel/exec-shield |
cat /proc/sys/kernel/exec-shield |
2346 |
|
|
2347 |
It returns 1 or 2 when Exec-shield is enabled, 0 otherwise. Please |
It returns non-zero when Exec-shield is enabled, 0 otherwise. Please |
2348 |
read your system documentation for more details on Exec-shield and |
read your system documentation for more details on Exec-shield and |
2349 |
associated commands. |
associated commands. Exec-shield can be turned off with this command: |
2350 |
|
|
2351 |
|
echo "0" > /proc/sys/kernel/exec-shield |
2352 |
|
|
2353 |
When Exec-shield is enabled, building Emacs will segfault during the |
When Exec-shield is enabled, building Emacs will segfault during the |
2354 |
execution of this command: |
execution of this command: |
2355 |
|
|
2356 |
temacs --batch --load loadup [dump|bootstrap] |
./temacs --batch --load loadup [dump|bootstrap] |
2357 |
|
|
2358 |
To work around this problem, it is necessary to temporarily disable |
To work around this problem, it is necessary to temporarily disable |
2359 |
Exec-shield while building Emacs, using the `setarch' command like |
Exec-shield while building Emacs, or, on x86, by using the `setarch' |
2360 |
this: |
command when running temacs like this: |
2361 |
|
|
2362 |
|
setarch i386 ./temacs --batch --load loadup [dump|bootstrap] |
2363 |
|
|
|
setarch i386 ./configure <configure parameters> |
|
|
setarch i386 make <make parameters> |
|
2364 |
|
|
2365 |
*** Fatal signal in the command temacs -l loadup inc dump. |
*** Fatal signal in the command temacs -l loadup inc dump. |
2366 |
|
|