|
Mounter
|
 |
« : Agosto 16, 2009, 02:45:52 » |
|
Olá pessoal! Venho aqui anunciar que consegui adaptar o TCC ( Tiny C Compiler) para gerar programas para o SOmBRA, assim como ele faz uso da stdlib do SOmBRA (com o nome de libsbr.a). Adicionei como exemplos os programas que são usados no projeto SOmBRA, assim como o console "Comando" ou também conhecido como cmd.app. Caso compilem um código e queiram executar o programa, aconselho que sigam para o diretório /bin/boot/grub/menu.lst e adicionem a linha module /programa.app Só não esqueça de por o programa.app na pasta /bin e depois criar a imagem ISO do sistema. Muito em breve, o SOmBRA, não precisa de tantos passos para fazer o teste de um simples programa. Logo libero o código com as modificações feitas do TCC, para quem quiser compilar o compilador (irônico?) no Linux ou outros sistemas. DownloadVersão Windows: http://projeto-sombra.googlecode.com/files/tcc-sombra-win32.zipVersão Linux: http://projeto-sombra.googlecode.com/files/tcc-sombra_linux.tar.gzAté mais EDIT: Atualização de erros da versão atual. Nova versão TCC SOmBRA - 0.9.25.2 19/08/09: Adição do TCC-SOMBRA que roda no Linux.
|
|
|
|
« Última modificação: Agosto 19, 2009, 12:09:47 por Mounter »
|
Registrado
|
|
|
|
|
|
|
gnomo
|
 |
« Responder #2 : Agosto 17, 2009, 11:20:02 » |
|
|
|
|
|
|
Registrado
|
|
|
|
Bencz
OS Full Member
 
Karma: 0
Mensagens: 112
|
 |
« Responder #3 : Agosto 19, 2009, 09:49:39 » |
|
massa pacas, vcs estão de parabens =D
|
|
|
|
|
Registrado
|
|
|
|
Windowstec
OS Jr. Member

Karma: 1
Mensagens: 65
Estudante
|
 |
« Responder #4 : Abril 24, 2011, 08:15:09 » |
|
Como é que eu posso compilar o cmd.app, lá está um ficheiro em asm e o tcc não consegue compilar.
Eu estou a usar linux, fiz o download do pacote, na pasta raiz ./configure , make e fiz make install. Depois ia a pasta que tem o nome de sombra e ia compilar o comando, mas não dá, o que posso fazer?
Cumprimentos, Gil Mendes
|
|
|
|
|
Registrado
|
|
|
|
|
Mounter
|
 |
« Responder #5 : Abril 25, 2011, 10:12:27 » |
|
Você deve compilar o compilador através da pasta sombra, pois de lá ele gera um arquivo de configuração para a compilação, mas ainda falta um arquivo de shell para Linux, mas se quiser execute dessa forma: Gere um arquivo config.h na pasta principal do TCC com as seguintes linhas de código: #define TCC_VERSION "0.9.25" #define TCC_TARGET_SOMBRA 1 #define CONFIG_TCCDIR "." #define CONFIG_SYSROOT "." Na pasta sombra através do terminal: gcc -Os -fno-strict-aliasing ../tcc.c -o tcc -s gcc -Os tools/tiny_libmaker.c -o tiny_libmaker -s Após isso você devera executar o comando make na pasta lib. Estou planejando a próxima versão com compilação através cmake, então não será necessário muitos detalhes de compilação. Abraço, Mounter
|
|
|
|
|
Registrado
|
|
|
|
Windowstec
OS Jr. Member

Karma: 1
Mensagens: 65
Estudante
|
 |
« Responder #6 : Abril 25, 2011, 02:24:13 » |
|
OK, muito obrigado estou a tentar continuar o desenvolvimento do meu sistema e estou a analisar muitos códigos já que não sou expert na matéria, alguma coisa que depois possa doar ao SoMBra, o farei.
Espero que o desenvolvimento do SoMBra continue e tenha muito sucesso.
Obrigado.
Cumprimentos, Gil Mendes (Windowstec)
|
|
|
|
|
Registrado
|
|
|
|
Windowstec
OS Jr. Member

Karma: 1
Mensagens: 65
Estudante
|
 |
« Responder #7 : Abril 30, 2011, 04:11:13 » |
|
Olha uma coisa, ao executar o make na pasta lib ele detecta um "overflow", que lol Construindo biblioteca libsbr.a libc/ctype/ctype.o: *** buffer overflow detected ***: ../tiny_libmaker terminated ======= Backtrace: ========= /lib/libc.so.6(__fortify_fail+0x37)[0x2aab8340f537] /lib/libc.so.6(+0xfe3f0)[0x2aab8340e3f0] ../tiny_libmaker[0x400f09] /lib/libc.so.6(__libc_start_main+0xfe)[0x2aab8332ed8e] ../tiny_libmaker[0x4009a9] ======= Memory map: ======== 00400000-00402000 r-xp 00000000 08:01 2363188 /home/gil/Downloads/tcc-0.9.25/sombra/tiny_libmaker 00601000-00602000 r--p 00001000 08:01 2363188 /home/gil/Downloads/tcc-0.9.25/sombra/tiny_libmaker 00602000-00603000 rw-p 00002000 08:01 2363188 /home/gil/Downloads/tcc-0.9.25/sombra/tiny_libmaker 01ae7000-01b08000 rw-p 00000000 00:00 0 [heap] 2aab830ed000-2aab8310d000 r-xp 00000000 08:01 5377764 /lib/ld-2.12.1.so 2aab8310d000-2aab83110000 rw-p 00000000 00:00 0 2aab8330d000-2aab8330e000 r--p 00020000 08:01 5377764 /lib/ld-2.12.1.so 2aab8330e000-2aab8330f000 rw-p 00021000 08:01 5377764 /lib/ld-2.12.1.so 2aab8330f000-2aab83310000 rw-p 00000000 00:00 0 2aab83310000-2aab8348a000 r-xp 00000000 08:01 5377756 /lib/libc-2.12.1.so 2aab8348a000-2aab83689000 ---p 0017a000 08:01 5377756 /lib/libc-2.12.1.so 2aab83689000-2aab8368d000 r--p 00179000 08:01 5377756 /lib/libc-2.12.1.so 2aab8368d000-2aab8368e000 rw-p 0017d000 08:01 5377756 /lib/libc-2.12.1.so 2aab8368e000-2aab83695000 rw-p 00000000 00:00 0 2aab83695000-2aab836aa000 r-xp 00000000 08:01 5374032 /lib/libgcc_s.so.1 2aab836aa000-2aab838a9000 ---p 00015000 08:01 5374032 /lib/libgcc_s.so.1 2aab838a9000-2aab838aa000 r--p 00014000 08:01 5374032 /lib/libgcc_s.so.1 2aab838aa000-2aab838ab000 rw-p 00015000 08:01 5374032 /lib/libgcc_s.so.1 7fff39bac000-7fff39bce000 rw-p 00000000 00:00 0 [stack] 7fff39bcf000-7fff39bd0000 r-xp 00000000 00:00 0 [vdso] ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall] make: *** [libsbr.a] Abortado
|
|
|
|
|
Registrado
|
|
|
|
Windowstec
OS Jr. Member

Karma: 1
Mensagens: 65
Estudante
|
 |
« Responder #8 : Abril 30, 2011, 04:20:47 » |
|
Será que é possível integrar está libraria no próprio sistema?
|
|
|
|
|
Registrado
|
|
|
|
|
Mounter
|
 |
« Responder #9 : Abril 30, 2011, 05:00:13 » |
|
Já havia detectado esse problema a um tempo, use o ar do GCC para juntar os arquivos objetos, é só alterar o makefile. Quando houver atualização irei lhe informar, em muito em breve!
Abraço Mounter
|
|
|
|
|
Registrado
|
|
|
|
Windowstec
OS Jr. Member

Karma: 1
Mensagens: 65
Estudante
|
 |
« Responder #10 : Abril 30, 2011, 05:35:10 » |
|
Abraço, obrigado
|
|
|
|
|
Registrado
|
|
|
|
Windowstec
OS Jr. Member

Karma: 1
Mensagens: 65
Estudante
|
 |
« Responder #11 : Maio 01, 2011, 02:06:44 » |
|
Boas, Tenho uma pergunta é muito difícil de implementar uma nova libraria no sombra? Pois na que o sistema tem falta muitas funções.
Cumprimentos, Gil Mendes (Windowstec)
|
|
|
|
|
Registrado
|
|
|
|
|
|
|