Ld - segmentation fault – OS - GNU / Linux – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Ld - segmentation fault – OS - GNU / Linux – Fórum – Programujte.comLd - segmentation fault – OS - GNU / Linux – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Zelenáč0
Posthunter
2. 1. 2008   #1
-
0
-

ld mi zacalo hlasit segmentation fault, takze bych se chtel zeptat, jestli existuje nejaka alternativa, nebo jestli delam neco spatne..



#!/bin/bash

#####

C="gcc"
A="nasm -f aout"
OBJ="video.o ports.o str.o mem.o idt.o isr.o isr_a.o irq.o irq_a.o kb.o timer.o"

$C -c src/video.c -o video.o
$C -c src/ports.c -o ports.o
$C -c src/str.c -o str.o
$C -c src/mem.c -o mem.o
$C -c src/idt.c -o idt.o
$C -c src/isr.c -o isr.o
$A -o isr_a.o src/isr.asm
$C -c src/irq.c -o irq.o
$A -o irq_a.o src/irq.asm
$C -c src/kb.c -o kb.o
$C -c src/timer.c -o timer.o

#####

nasm bootsect.asm -o bootsect.bin -f bin
$C -c main.c -o main.o

ld -e main -Ttext 0x1000 -o kernel.o main.o $OBJ
objcopy -R .note -R .comment -S -O binary kernel.o kernel.bin

nasm image.asm -o kernel

dd if=/dev/zero of=game.img count=2880
sudo losetup /dev/loop0 game.img
sudo dd if=kernel of=/dev/loop0
sudo losetup -d /dev/loop0

rm -f *.o
rm -f *.bin


Z toho mi vyleze neco takoveho:


zelenac@zelenac:~/Programming/Projects/Snake$ ./build
./build: line 26: 19025 Segmentation fault (core dumped) ld -e main -Ttext 0x1000 -o kernel.o main.o $OBJ
objcopy: 'kernel.o': No such file
image.asm:4: error: `incbin': unable to open file `kernel.bin'
2880+0 records in
2880+0 records out
1474560 bytes (1.5 MB) copied, 0.0576375 seconds, 25.6 MB/s
dd: opening `kernel': No such file or directory

Nahlásit jako SPAM
IP: 89.176.254.–
Reklama
Reklama
_k_
Duch
2. 1. 2008   #2
-
0
-

hh, haluz to je ta hra... ;)
Ako som pozeral tie zdojaky tak som tam nikde nevidel linker script aj ked ho ld predavas (-T text). A co robi 0x1000 ?
Mne tie tvoje zdrojaky skompilovat v pohode idu (nic som nemenil v tom skripte)...
A tak mimo misu: preco nepouzivas Makefile ? ;)

Nahlásit jako SPAM
IP: 195.91.54.–
Zelenáč0
Posthunter
2. 1. 2008   #3
-
0
-

To _k_ : -Ttext 0x1000 udava adresu, na kterou nahravam jadro..
Makefile? Na tech par souboru? To snad nema cenu..

Nahlásit jako SPAM
IP: 89.176.254.–
Zelenáč0
Posthunter
2. 1. 2008   #4
-
0
-

Jinak chyba nastane napr, kdyz smazu volani fce "control" v main...

GNU ld version 2.17.50 20070103 Ubuntu

Nahlásit jako SPAM
IP: 89.176.254.–
_k_
Duch
2. 1. 2008   #5
-
0
-

Mohol by si sem hodit ten kod co nejde ? To predavanie adresy sa mi nejako nezda...

EDIT: ehe, nevsymol som si... horny prispevok ;)

Nahlásit jako SPAM
IP: 195.91.54.–
_k_
Duch
2. 1. 2008   #6
-
0
-

No, mne to zlinkovat ide aj ked zrusim komentar pri control()...
Ale ak ti to blbne skus toto

Nahlásit jako SPAM
IP: 195.91.54.–
_k_
Duch
2. 1. 2008   #7
-
0
-

aeste linker script

Nahlásit jako SPAM
IP: 195.91.54.–
Zelenáč0
Posthunter
2. 1. 2008   #8
-
0
-
Nahlásit jako SPAM
IP: 89.176.254.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 2 hosté

Podobná vlákna

Segmentation fault — založil Gadael

Segmentation fault 11 — založil Tomas678

Qt setlayout segmentation fault — založil rodinne.baleni.ryze

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý