# Ajuda com optimizaçao (pentium3)

## nodeps

Bom, muitos vao falar, vai ler o manual do gcc! man gcc

mas eu realmente nao sei p**** nenhuma de ingles, muito menos outras linguas, e por causa disso ja e a 3 ou 4 vez q reinstalo o gentoo por erro de flag na hora da compilaçao

por isso queria ver com quem usa pentium3 que me desse flags boas para optimizaçao

meu pc= pentium3 750 mhz placa de video= sis 305 placa de som= creative soundblaster placa mae=asus

e desculpa pela enxeçao de saco..

nodeps, o chato

----------

## Vanquirius

Vai ao gosto de cada um... Essas devem funcionar bem:

```
CFLAGS="-O2 -pipe -march=pentium3 -finline-functions -finline-limit=800 -mmmx -fomit-frame-pointer"
```

----------

## nodeps

manuchao

oque essas flags fazem? optimiza oke?

ah aproveitando, angus q q se axa de traduzir o man gcc? ehehhehe

acho que ia ajudar bastante, principalmente o pessoal novo no gentoo

----------

## Vanquirius

Hmmm...

```
man gcc
```

 :Laughing: 

----------

## nodeps

<o> *arrancando os cabelos*

----------

## fernandotcl

Eu uso (ou usava):

```
CFLAGS="-pipe -march=athlon-xp -fomit-frame-pointer -mmmx -m3dnow -msse
```

----------

## Vanquirius

 *fernandotcl wrote:*   

> Eu uso (ou usava):
> 
> ```
> CFLAGS="-pipe -march=athlon-xp -fomit-frame-pointer -mmmx -m3dnow -msse
> ```
> ...

 

-march=athlon-xp -m3dnow provavelmente não vai funcionar com um pentium3

----------

## AngusYoung

Eu uso:

```
CFLAGS="-march=pentium3 -O2 -mmmx -msse -fomit-frame-pointer -fprefetch-loop-arrays -mfpmath=sse,387 -pipe -ftracer -funroll-loops"
```

Nota: -ftracer só funciona com gcc >= 3.3

Ah, você pode encontrar algumas explicações (em português) sobre as CFLAGS aqui. Existem outros bons textos, na net, sobre as CFLAGS (bem como bechmarks), mas a maioria é em ingles.

----------

## nodeps

5 vez, é macumba azar ou oke?

angus eu usei as tuas flags na instalaçao.. deu erro na compilaçao de um pacote no emerge -u world zlab syslab algo assim

é as flag mesmo ou pode ser outra coisa?

eu atualizei o emerge antes, emerge sync

edit= eu to usando o stage3-pentium3-20030910.tar.bz2

tem diferença de optimizaçao entre stage3-x86 e stage3-pentium3?

----------

## AngusYoung

 *nodeps wrote:*   

> 5 vez, é macumba azar ou oke?
> 
> angus eu usei as tuas flags na instalaçao.. deu erro na compilaçao de um pacote no emerge -u world zlab syslab algo assim
> 
> é as flag mesmo ou pode ser outra coisa?
> ...

 

Pode ser ... pode não ser. Cola o erro (não é na zlib?) aí que a gente tenta dizer o que é   :Cool: 

----------

## nodeps

angus.. zlib

isso mesmo

----------

## mamsbrl

Se você quer ser conservativo use:

```
CHOST="i686-pc-linux-gnu"

CFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer"

CXXFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer"

```

Se você quer ir um pouco mais além use:

```
CFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer -fforce-addr -falign-functions=4 -fprefetch-loop-arrays"

CXXFLAGS="${CFLAGS}"
```

Maiores informacões no site http://www.freehackers.org/gentoo/gccflags/flag_gcc3.html

----------

## nodeps

denovo.. usei as flags ae de cima, e o stage3-x86

CFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer -fforce-addr -falign-functions=4 -fprefetch-loop-arrays"

CXXFLAGS="${CFLAGS}"

o erro eh esse:

make: ** [minigzip] erro1

!!! error: sys-libs/zlib-1.1.4-r2 failed

!!! function src_compile, line 29, exitcode 2

!!! (no error message)

----------

## Vanquirius

Parece que há um bug com esta versão do zlib, talvez relacionado:

Bug #32140

Mas é necessário que você poste um pouco mais do erro, essa parte que aparece no final só mostra que o pacote não foi instalado porque houve um erro de compilacão, não em que parte do código o erro aconteceu.

----------

## nodeps

md5 src_uri  :Wink:  zlib-1.1.4.tar.bz2

unpacking source

unpacking zlib-1.1.4.tar.bz2 to /var/tmp/portage/zlib-1.1.4-r2/work

applying zlib-1.1.4-gentoo.security.patch...

source unpacked

cheking for shared library support

no shared library support; try without defining cc and cflags

bulding static library libz.a version 1.1.4 with gcc.

checking for unistd.h... no

checking whether to use vnsprintf () or snprintf ().... using snprintf ()

checking for snprintf () in stdio.h.... no.

warning: snprintf() not found, falling back to sprintf () zlib

can build but will be open to possible buffer-overflow security

vulnerabilities. see readme.vsnprintf for more info.

checking for return value of sprintf().... NO

warning apparentyl aprintf() does not return a value. zlib

can build but will be open to possible string-format security

vulnerabilities. see readme.vsnprintf for more info.

checking for errno.h.... no.

checking for mmap support... no

gcc -march=pentium3 -03 dae fica compilando...

./libz.a((gzio.o)(.text+0x753): in function gzread:

: undefined reference to "errno"

collect2: ld returned 1 exit status

make: ** [example] erro 1

make: ** esperando que outros processos terminem

./libz.a(gzio)(.text+0x44a): in function "gz _open" :

: undefined reference to "errno"

./libz.a(gzio.o)(.text0+753): in function "get_byte" :

:undefined reference to "errno"

./libz.a(gzio.o)(.text+0xd2e) : in function "gzread" :

: undefined reference to "errno"

collect2: ld returned 1 exit status

make: ** [minigzip] erro 1

!!! error: sys-libs/zlib-1.1.4-r2 faile d.

!!! function src_compile, line 29, exitcode 2

!!! (no error message) 

isso foi copiado na mao mesmo, deve ter alguns erros no ingles mas da para entender.. 

oque deve ser isso? tem como arrumar?

----------

## nafre

 Olhe isso!! Pentium III (Intel)

CHOST="i686-pc-linux-gnu"

CFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer"

CXXFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer"

[/url][/u]

----------

## nafre

Que tal fazer mais otimizações em um p3

CFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer

   -fforce-addr -falign-functions=4 -fprefetch-loop-arrays"

CXXFLAGS="${CFLAGS}"

----------

## Vanquirius

Aff!

 *mamsbrl wrote:*   

> Se você quer ser conservativo use:
> 
> ```
> CHOST="i686-pc-linux-gnu"
> 
> ...

 

 *nafre wrote:*   

>  Olhe isso!! Pentium III (Intel)
> 
> CHOST="i686-pc-linux-gnu"
> 
> CFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer"
> ...

 

 *nafre wrote:*   

> Que tal fazer mais otimizações em um p3
> 
> CFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer
> 
>    -fforce-addr -falign-functions=4 -fprefetch-loop-arrays"
> ...

 

----------

## To

No meu pentium 3 a 1ghz uso as flags apontadas pelo mamsbrl, e nunca tive problemas.

ManuChao: eu ao menos não repeti  :Laughing: 

Tó

----------

## nodeps

sim, mas como eu arrumo esse negocio do zlib?

ANgusYoung?

----------

## nafre

tenta emergi ela sozinha 

```
emerge zlib
```

 :Smile: 

----------

## Vanquirius

nodeps, uma solucão "alternativa" é tentar instalar usando a versão instável do zlib.

```
nano -w /usr/portage/sys-libs/zlib/zlib-1.2.1-r2.ebuild
```

Troque ~x86 por x86 no campo KEYWORDS (linha 13), e tente proceder com a atualizacão. Embora não resolva de fato o problema com o zlib estável (que eu pelo menos não tenho idéia de como consertar neste ponto), deve permitir terminar a atualizacão.

----------

## AngusYoung

 *nodeps wrote:*   

> sim, mas como eu arrumo esse negocio do zlib?
> 
> ANgusYoung?

 

Eu recomendo fazer o que o Manuchao falou (a 1.2.x mantém a compatibilidade com a 1.1.x). 

Cara, você não tem a errno.h

```
checking for errno.h.... no. 
```

então pode tentar fazer

```
emerge linux-headers
```

e então reemergir a zlib.

----------

## nodeps

blz, to reinstalando tudo pelo stage1

vou aproveitar e fazer isso q foi sugerido..

vlws ae novamente =*

----------

## revertex

nodeps, http://www.freetranslation.com/

Eu sei, eu sei, parece que um esquizofrênico traduziu, mas é melhor que nada.

----------

## Kobal

Esse Bug ae ja foi resolvido ? Tive o mesmo problema, como não queria usar Kurumin instalei Debian.

----------

