Compilar Memtest86 3.5 [RESOLVIDO]

1. Compilar Memtest86 3.5 [RESOLVIDO]

Valter
dudu100

(usa Ubuntu)

Enviado em 02/05/2009 - 00:07h

ola sou novo no assunto sobre open source, porem eu preciso personalizar o memtest86 3.5 com o nome da empresa que trabalho, no final do teste executar um outro programa. A questao como eu compilo o memtest, eu uso o ubuntu e sei que vou usar o gcc, na verdade eu quero saber qual arquivo ou quais arquivos eu devo compilar e em qual ordem, mas tipo se alguem souber algum tutorial ou se souber mesmo eu agradeço.


  


2. Re: Compilar Memtest86 3.5 [RESOLVIDO]

Genesco Sousa
gesousa

(usa Ubuntu)

Enviado em 02/05/2009 - 02:44h

o Pacote fonte normalmente vem com um script de compilação chamado makefile, quando não vem este ele vem com um script de configuração que cria o arquivo makefile,

normalmalmente quando vc abaixa o source do programa vc acha o arquivo INSTALL ou README, qu etras mais informação de quais são as depedências (libs de desevolvimento) e um tuturial de como proceder com a instalação...

os passos comuns são:

#Script para a criação do makefile.
./configure

normalmente se vc digitar o comando:

./configure --help

mostrará as opções de compilação do programa

depois de criado o arquivo makefile, ele contem os comandos para a compilação de cada arquivo, seria este que vc quer da uma olhada.

vc usa o comando

make

o make usará as informações do makefile, para chamar o compilador correto como as flags e libs necessárias para a compilação como a lista de arquivos que deve ser compilado.

o make install

na verdade copia os arquivos compilados para as pastas do sistema e cria os links necessários ou comandos de atualizações necessárias no sistema operacional para a adição do programa no sistema.


3. Compilar Memtest86 3.5

Valter
dudu100

(usa Ubuntu)

Enviado em 02/05/2009 - 14:48h

Ola amigo ja vi que vc entende do assunto. Porem dentro do source code nao veio nenhum "configure", o unico arquivo parecido com o que vc falou foi um "makefile", veja o source code http://www.memtest86.com/memtest86-3.5.tar.gz , e ai que vem a dificuldade tipo eu so estou tentando compilar o codigo do mesmo jeito que venho a mesmo assim nao consegui nada ainda, se vc puder olhar o codigo, vc vai que ate o readme dele nao dis nada sobre a compilação. Se vc puder me ajudar a entender melhor fico muito grato valeuuuuuuuuuuu!!!


4. Re: Compilar Memtest86 3.5 [RESOLVIDO]

Genesco Sousa
gesousa

(usa Ubuntu)

Enviado em 02/05/2009 - 15:17h

bom o mentest parece ser muito simples de compilar...

basta dar o comando make as únicas configurações são cflags .. que vc pode configurar no próprio arquivo makefile, se vc for ver o arquivo makefile nada mais é do que script...

segeu aqui um tutorial sobre o makefile
http://pt.wikibooks.org/wiki/Programar_em_C/Makefiles



5. Re: Compilar Memtest86 3.5 [RESOLVIDO]

Marcelo A. B. Slomp
mslomp

(usa Slackware)

Enviado em 02/05/2009 - 15:23h

"... nao veio nenhum "configure", o unico arquivo parecido com o que vc falou foi um "makefile"..."
melhor ainda. apenas faça:
$ make
após, caso deseje criar uma imagem iso bootável do memtest:
$ make iso

quanto a personalizar o nome, caso tenha se referido ao título, está em init.c:62:64
apenas lembre-se que por tratar-se de software licenciado pela gpl, você deverá também prover o código modificado a quem interessar possa (mesmo tendo apenas personalizado o título), seguindo a mesma licença e obedecendo aos mesmos requisitos.


6. Compilar Memtest86 3.5

Valter
dudu100

(usa Ubuntu)

Enviado em 02/05/2009 - 16:20h

ja tentei fazer o que vc disse porem da uma erro, da uma olhada....

administrador@ubuntu:~/Desktop/memtest86-3.4$ make
as -o head.o head.s
gcc -c -Wall -march=i486 -m32 -Os -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC -fno-strict-aliasing reloc.c
gcc -Wall -march=i486 -m32 -Os -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC -c -o main.o main.c
gcc -c -Wall -march=i486 -m32 -Os -fomit-frame-pointer -fno-builtin \
-ffreestanding test.c
gcc -Wall -march=i486 -m32 -Os -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC -c -o init.o init.c
gcc -Wall -march=i486 -m32 -Os -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC -c -o lib.o lib.c
gcc -Wall -march=i486 -m32 -Os -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC -c -o patn.o patn.c
gcc -Wall -march=i486 -m32 -Os -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC -c -o screen_buffer.o screen_buffer.c
gcc -Wall -march=i486 -m32 -Os -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC -c -o config.o config.c
gcc -Wall -march=i486 -m32 -Os -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC -c -o linuxbios.o linuxbios.c
gcc -Wall -march=i486 -m32 -Os -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC -c -o memsize.o memsize.c
gcc -Wall -march=i486 -m32 -Os -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC -c -o pci.o pci.c
gcc -Wall -march=i486 -m32 -Os -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC -c -o controller.o controller.c
gcc -Wall -march=i486 -m32 -Os -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC -c -o random.o random.c
gcc -Wall -march=i486 -m32 -Os -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC -c -o extra.o extra.c
gcc -Wall -march=i486 -m32 -Os -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC -c -o spd.o spd.c
gcc -Wall -march=i486 -m32 -Os -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC -c -o error.o error.c
gcc -Wall -march=i486 -m32 -Os -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC -c -o dmi.o dmi.c
ld --warn-constructors --warn-common -static -T memtest_shared.lds \
-o memtest_shared head.o reloc.o main.o test.o init.o lib.o patn.o screen_buffer.o config.o linuxbios.o memsize.o pci.o controller.o random.o extra.o spd.o error.o dmi.o && \
ld -shared -Bsymbolic -T memtest_shared.lds -o memtest_shared head.o reloc.o main.o test.o init.o lib.o patn.o screen_buffer.o config.o linuxbios.o memsize.o pci.o controller.o random.o extra.o spd.o error.o dmi.o
lib.o: In function `.L79':
lib.c:(.text+0x5fe): undefined reference to `__stack_chk_fail_local'
make: ** [memtest_shared] Erro 1
administrador@ubuntu:~/Desktop/memtest86-3.4$ make iso
make: *** Sem regra para processar o alvo `iso'. Pare.
administrador@ubuntu:~/Desktop/memtest86-3.4$


Iai o que quer dizer isso?


7. Re: Compilar Memtest86 3.5 [RESOLVIDO]

Genesco Sousa
gesousa

(usa Ubuntu)

Enviado em 02/05/2009 - 16:25h

kra faz assim ...

sudo apt-get build-dep mentest

e depois tenta fazer o comando de novo...





8. Compilar Memtest86 3.5

Valter
dudu100

(usa Ubuntu)

Enviado em 02/05/2009 - 16:45h

Cara continua dando erro, mas ja diminuiu

root@ubuntu:/home/administrador/Desktop/memtest86-3.4# apt-get build-dep mentest
Lendo listas de pacotes... Pronto
Construindo árvore de dependências
Lendo informação de estado... Pronto
E: Impossível encontrar um pacote fonte para mentest

root@ubuntu:/home/administrador/Desktop/memtest86-3.4# make
ld --warn-constructors --warn-common -static -T memtest_shared.lds \
-o memtest_shared head.o reloc.o main.o test.o init.o lib.o patn.o screen_buffer.o config.o linuxbios.o memsize.o pci.o controller.o random.o extra.o spd.o error.o dmi.o && \
ld -shared -Bsymbolic -T memtest_shared.lds -o memtest_shared head.o reloc.o main.o test.o init.o lib.o patn.o screen_buffer.o config.o linuxbios.o memsize.o pci.o controller.o random.o extra.o spd.o error.o dmi.o
lib.o: In function `.L79':
lib.c:(.text+0x5fe): undefined reference to `__stack_chk_fail_local'
make: ** [memtest_shared] Erro 1
root@ubuntu:/home/administrador/Desktop/memtest86-3.4#


O que sera que ele nao consegue compilar?



9. Re: Compilar Memtest86 3.5 [RESOLVIDO]

Genesco Sousa
gesousa

(usa Ubuntu)

Enviado em 02/05/2009 - 17:01h

Bom antes do comando vai em -> Sistema -> Administração -> Canais de fontes

e marque a opção código fonte -> fechar e atualizar ....

depois de atualizar a lista ....

sudo apt-get build-dep memtest86+

este comando baixa todas as depedências do mentest para ser compilado...

vc ainda pode baixar a versão do código fonte do mentest do ubuntu...

sudo apt-get source memtest86+

sudo apt-get build-dep memtest86+

e depois vc pode compilar o pacote pelo.

sudo apt-get source -b memtest86+

veja esta versão está compilando ...




10. Compilar Memtest86 3.5

Valter
dudu100

(usa Ubuntu)

Enviado em 02/05/2009 - 17:36h

ta depois disso tudo eu faço -> make e depois make iso é isso?


11. Re: Compilar Memtest86 3.5 [RESOLVIDO]

Marcelo A. B. Slomp
mslomp

(usa Slackware)

Enviado em 02/05/2009 - 18:23h

cara, esse problema acontece quando a libc foi compilada sem proteção de stack smashing (ssp), e como o padrão do gcc é ssp ativado, o linker não encontrará a função correspondente na libc, já que os objetos fazem referência a ela.
tente o seguinte:
edite o Makefile, e nas CFLAGS adicione -fno-stack-protector


12. Compilar Memtest86 3.5

Valter
dudu100

(usa Ubuntu)

Enviado em 03/05/2009 - 00:20h

AE coloquei no cflags, so que apareceu isso...

root@ubuntu:/home/administrador/Desktop/memtest86-3.4# make
Makefile:15: *** faltando o separador (você pensou em TAB ao invés de 8 espaços?). Pare.
root@ubuntu:/home/administrador/Desktop/memtest86-3.4#

qual parametro esta faltando?



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts