# 64 - Bit Troubles (amd64)

## nes

Hallo allseits,

Ich bin zwar noch n ziemlicher gentoo-newbie, stosse aber bereits jetzt, ganz am Anfang, vermehrt auf Probleme die zumindest indirekt mit meiner Architektur (amd64) zusammenhängen dürften.

Konkret gibt's einfach sehr viele ebuilds die mir wichtig wären nicht für amd64. Z.b. hier ein Problem welches ich mit eclipse habe. Oder Struts, ebenfalls nur für x86 verfügbar.

In manchen Fällen ist mir auch total unklar, warum ein best. ebuild nur für eine Umgebung verfügbar ist. Z.B. ant-contrib, lt. Beschreibung 'is a collection of tasks (and at one point maybe types and other tools) for Apache Ant.'. Das sind doch Ant-Tasks?! Die müssten nun doch wirklich völlig plattformunabhängig sein? Oder auch das Java  telnetd, welches ich kenne und eigentlich nur aus einem Java .jar-File besteht (Das hat mit dem "normalen" telnetd nichts zu tun, ist eine Java-Entwicklung). Ein einfaches jar-File müsste doch wirklich plattformunabhängig sein?!?

Fest steht, daß es einfach viel gibt, was für x86 verfügbar ist, für amd64 nicht.

Die Fragen: Ist der Weg aus einem x86-ebuild ein amd-ebuild zu machen ein schwerer? Oder wäre es (für mich) nicht doch vorteilhaft, einstweilen auf eine 32-Bit Umgebung (x86) zu setzen? Bzw. dann die Zusatzfrage: C und C++ - Grundlagenkentnisse sind vorhanden, jedoch weiß ich nicht wirklich, was beim Umstieg von 32 auf 64 Bit zu beachten wäre?

Oder gibt es mit den emul-linux - Paketen (emerge -s emul-linux) ohnehin schon irgendeinen einfachen Weg, 32-Bit Applikationen (wie z.B. eben eclipse) zu verwenden? Wie?

lg., nes

----------

## nes

Hab schon selbst was gefunden: Ich hab bei meiner (ersten) Installation das USE-Flag "multilib" uebersehen, mit dem dürfte es dann doch genauso möglich sein 32-bit Applikationen zu benutzen/kompilieren.

Ich hoffe ich gehe recht in der Annahme: multilib setzen, gcc neu emergen, alle emul-linux - Pakete installieren und dann hoffen, dass sowas wie eclipse funktioniert?

lg., nes

----------

## himpierre

 *Quote:*   

> 
> 
> Ich hoffe ich gehe recht in der Annahme: multilib setzen, gcc neu emergen, alle emul-linux - Pakete installieren und dann hoffen, dass sowas wie eclipse funktioniert?
> 
> 

 

Im Prinzip ja. Siehe:

http://www.gentoo.org/proj/en/base/amd64/technotes.xml?part=2&chap=4

Zu Eclipse gibts schon einen ziemlich umfangreichen Thread.

https://forums.gentoo.org/viewtopic.php?t=147720&start=0&postdays=0&postorder=asc&highlight=eclipse

cheers

Thomas

----------

## ts77

ich habs mittlerweile aufgegeben und nutze glücklich das 32bit-System mit meinem Athlon64.

Es ist wesentlich stabiler und es läuft einfach alles.

Zum Schluß ausschlaggebend waren ein paar proprietäre Programme, die ich nutzen will und auch benötige, die jedoch selbst mit Emulation nicht zufriedenstellung mit amd64 liefen.

----------

## nes

 *ts77 wrote:*   

> ich habs mittlerweile aufgegeben und nutze glücklich das 32bit-System mit meinem Athlon64.
> 
> Es ist wesentlich stabiler und es läuft einfach alles.
> 
> Zum Schluß ausschlaggebend waren ein paar proprietäre Programme, die ich nutzen will und auch benötige, die jedoch selbst mit Emulation nicht zufriedenstellung mit amd64 liefen.

 

Ich denke fast, daß das auch fuer mich das klügere wäre. Ich bin zwar durchaus bereit am Wochenende ein paar Stunden auf die Linux-Installation zu verwenden, aber ich will auch nicht massenweise Zeit verbraten bei so "Kleinigkeiten" wie 32 kontra 64 Bit.

Also 32-Bittig läuft bei Dir alles völlig problemlos? Die stinknormale x86er - Installation?

lg., nes

----------

## ts77

jup, keine Probleme. stinknormale x86-Installation für Athlon-XP.

Ich werds wohl in nem Jahr oder so nochmal probieren, wenn amd64 ein wenig weiter verbreitet und dementsprechend unterstützt ist.

----------

## himpierre

Hallo

Darf man fragen, welche Programme Ärger bereiten? Ich habe jetzt seit nem halben Jahr die 64bit Version laufen und mir fehlt eigentlich nichts. Und falls alle Stricke reissen, kann man ja mit dem vorzüglichen Script von Travis http://dev.gentoo.org/~lv/setup-gentoo-chroot

ein schnuckliges Chroot aufsetzen.

cheers

T.

----------

## nes

 *himpierre wrote:*   

> Hallo
> 
> Darf man fragen, welche Programme Ärger bereiten? Ich habe jetzt seit nem halben Jahr die 64bit Version laufen und mir fehlt eigentlich nichts. Und falls alle Stricke reissen, kann man ja mit dem vorzüglichen Script von Travis http://dev.gentoo.org/~lv/setup-gentoo-chroot
> 
> ein schnuckliges Chroot aufsetzen.
> ...

 

Naja, die Sachen die es nur auf x86, nicht aber auf amd gibt? Aufgefallen ist mir eben eclipse, struts, telnetd (Das Java-Paket, nicht der linux-daemon), kmud, ... Da kommt sicher noch das ein oder andere dazu. Und dass ich irgendwelche Sachen installieren will die es als ebuild noch gar nicht gibt (castor fällt mir gerade ein, www.castor.org), wo ich dann ev. auch Probleme mit 64 Bit habe, möchte ich auch nicht ausschliessen.

lg., nes

----------

## Kuhrscher

Haste denn mal ausprobiert, ob die wirklich nicht funktionieren? Grade bei den Packeten die nicht ganz so "Mainstream" sind, kann das immer sein, dass die einfach noch nicht getestet wurden und im Zweifel trotzdem funktionieren.

----------

## nes

Nein, ich hab's noch nicht ausprobiert. Und gerade bei den Java-Only Sachen bin ich auch überzeugt daß es eigentlich funktionieren sollte.

Aber wenn ich mir den Thread zu eclipse so ansehe, seh ich da schon eine Reihe von Schwierigkeiten. Bei manchen läufts, bei manchen nicht, dubiose Fehlermeldungen zuhauf ... Also doch alles andere als stabil.

Und wie gesagt, ich bin zwar durchaus bereit eine gewisse Zeit in Linux zu investieren - aber auch nicht massenweise nur für die Probleme 32/64 - Bit. Oder anders: Warum soll ich mir das antun, wenn der x86-Zweig problemlos funktioniert? Nur damit ich sagen kann, ich habe ein 64-Bit-System, und geschwindigkeitsmäßig vielleicht noch einige wenige %e rausschlage? Das ist mir den Aufwand nicht wert.  :Wink: 

lg., nesLast edited by nes on Mon Sep 06, 2004 7:12 am; edited 1 time in total

----------

## ts77

das schlimme ist, es wird wohl nicht mal schneller, du arbeitest dann halt nur mit 64bit  :Wink: .

Also ich hab mit Java schon erhebliche Probleme gehabt. z.B. die Zend-IDE hat bei mir öfter gesponnen und es war ein Krampf die überhaupt installiert zu bekommen. 

Moneyplex bereitetet auch Sorgen, als es dann lief fehlten einfach Texte im Programm, ich habs nicht weiter verfolgt und dann einfach x86 genommen  :Smile: .

Das ganze System verhielt sich auch sehr instabil obwohl ich keine besonderen CFlags genommen hab.

----------

## Kuhrscher

Naja, wnn niemand die Sachen testet und anschließend einen Bug-Report schreibt werden solche Programme nie vernünftig auf einem AMD64 laufen, bzw. niemand erfährt dass sie vernünftig laufen. Letztendlich ist das AMD64-Projekt ja grade auf solches Feedback angewiesen und wenn man mal ehrlich ist, hat sich im letzten Monat da schon eine Menge getan...

----------

## nes

 *ts77 wrote:*   

> ... ich habs nicht weiter verfolgt und dann einfach x86 genommen 

 

Danke für Deine Tipps. Werd ich wohl auch tun.  :Smile: 

lg., nes, der sich auch gleich für alle anderen Ratschläge bedankt

----------

## ts77

@Kuhrscher, ja, ich hab auch eine Reihe Bugs gemeldet, keine Sorge.

Jedoch bei proprietären Programmen habe ich da keine Chance und es besteht da nicht wirklich ein Interesse dies zu fixen.

Ich bestreite auch gar nicht, daß dort ziemlich viel Arbeit im amd64-Sektor geleistet wurde und wird.

Im Endeffekt wollte ich mit dem System jedoch Arbeiten und das war derzeit (vor ca. 1,5 Monaten) *für mich* nicht möglich damit.

----------

## nes

 *Kuhrscher wrote:*   

> Letztendlich ist das AMD64-Projekt ja grade auf solches Feedback angewiesen ...

 

Nur noch eine kurze Antwort darauf...

Ja, ich gebe Dir im Prinzip recht. Und ich würde wohl genauso argumentieren, wenn ich Schüler/Student/solo wäre. Bin ich aber nicht.  :Wink: 

Soll heissen meine (Frei-)Zeit ist leider nunmal ziemlich begrenzt. Und die die ich habe, nutze ich persönlich nunmal lieber, um mit meinem System zu arbeiten, nicht an meinem System.

lg., nes

----------

## Kuhrscher

Ok, das kann ich natürlich irgendwo nachvollziehen. Ein AMD64-System zu ende durch zu configurieren ist defacto zeitaufwändiger.

Wobei ich aber entschieden bestreite, dass alle Studenten in Freizeit quasi ertrinken. Oder ich mach grundsätzlich was falsch...   :Wink: 

----------

## spielc

Ok, ich weiss das kommt spät, aber vielleicht ist es ja eine Hilfe für zukünftige 64-bit Gentoo-er  :Wink: 

Eclipse läuft: Man muss sich nur ein jdk-installieren (ich hab auch nicht das black-down drauf sondern 1.5 von Sun FUNZT bestens, habs aber auch von Hand nachinstallieren müssen also nix emerge ...) aber blackdown sollte auch reichen wenn man die neuen (und wirklich vernünftigen Features) vom neuen JDK nicht braucht, dann einfach das Archiv von der eclipse page downloaden, entpacken und los geht's... Selber ausgetestet es funktioniert, also könnt ihr mir in diesem zusammenhang ruhig glauben...

Mir ist klar, dass das sicher nicht die intelligenteste lösung (weil nicht verwenden von emerge) ist, aber es funktioniert

P.S. hätt ich fast vergessen: natürlich müssen die pfade richtig gesetzt sein, damit mans so benutzen kann natürlich...

----------

## benjamin200

Hallo Zusammen,

habe mit Interesse diesen Thread gelesen, da ich selbst (seit einem Tag) besitzer eines AMD64 - 3500+ bin. Bezüglich der Unterstützung von 32 Bit Applikationen wollte ich jetzt nochmals kurz nachhacken.

Fragen:

a) Wie kann ich herausfinden ob, z.B. KDE, MPlayer oder fluxbox die 64Bit Technology unterstützen? Webseite der Sourcen oder eventuell wo anders?

b)

Ist es nötig die Use Flag "multilib" bei der Installation des Stage1 und des Bootstraps zu Verwenden?

Freue mich auf Antwort

Gruß,

Benjamin

----------

## hartmutg

Na dann erstmal Gratulation!

Zu deinen Fragen:

a) Siehst du auf packages.gentoo.org oder im ebuild, ob amd64 oder zumindest ~amd64 auftaucht, oder war das nicht deine Frage? Aber selbst, wenn nicht: Das heisst meist nur, dass es noch niemand getestet hat, also einfach im ebuild ~amd64 mit aufnehmen und versuchen, ob es sich emergen lässt.

Seite Sun endlich jdk-1.5 rausgebracht hat, läuft bei mir fast alles. MPlayer hast du noch Probleme wegen der 32-bit codecs.

b) multilib brauchst du nur, wenn du eine Applikation für 32-bit kompilieren willst. Hab ich mal mit rumgetestet, gab nur Ärger und hab mir dann lieber für die ganz harten Fälle ein 32-bit chroot mit ner athlon-xp-gentoo gebastelt. Dann geh ich lieber da rein, emerge wie immer und kann von 64-bit darauf zugreifen, ohne dass dort was durcheinander gerät.

----------

## benjamin200

 *Quote:*   

> 
> 
> hab mir dann lieber für die ganz harten Fälle ein 32-bit chroot mit ner athlon-xp-gentoo gebastelt. Dann geh ich lieber da rein, emerge wie immer und kann von 64-bit darauf zugreifen, ohne dass dort was durcheinander gerät.
> 
> 

 

Wie genau läuft das ab, das man einmal via 64Bit und dann aber mit 32Bit unterstützung in ein und das gleich System geht?

 *Quote:*   

> 
> 
> Seite Sun endlich jdk-1.5 rausgebracht hat, läuft bei mir fast alles. MPlayer hast du noch Probleme wegen der 32-bit codecs. 
> 
> 

 

Würde schon gern Mplayer und die Codes für DivX WMV usw. nutzen.

Hmm, hast du die Probleme lösen können? 

Achja, du nutzt sicher auch einen AMD64. Würde mich interessieren was du genau in der make.conf hast. CHOST, CFLAGS und CXXFLAGS usw.

Möchte in den nächsten Stunden mit dem Install (Stage1) beginnen. Übrigens, wenn ich die Doku lese, wird auf die stage1-x86 verwiesen, obwohl stage1-amd64 ja verfügbar ist. Stage1-amd64 wäre schon das richtige nehme ich an - oder?

EDIT:

Doku meine ich die für AMD64

Gruß

Benjamin

----------

## hartmutg

also zum chroot:

von Gentoo gibt es einiges an Anleitungen dazu, die auch gut gehen sollten.

aber man ist ja experimentierfreudig: (hoffentlich krieg ich noch alle Schritte zusammen)

- nimm dir ein Verzeichnis oder ne extra Partition, z.B. /mnt/gentoo32

- Dann kannst du einfach ein stage3 für athlon-xp darauf auspacken

- chroot /mnt/gentoo32 /bin/bash

- . /etc/profile

- emerge sync

Dann sollte eigentlich schon alles gehen. 

Du kannst nun jederzeit mit chroot /mnt/gentoo32 /bin/bash --login in dein chroot wechseln, dort emerge fahren, für was auch immer (natürlich am saubersten mit den Abhängigkeiten wie X-Server usw.).

Damit das chroot alle Devices zur Verfügung hat und auch auf deinen X-Server zugreifen kann, fährst du ein: mount -o bind /dev /mnt/gentoo32/dev (und genauso für tmp und proc)

Als einfacher User kannst du dir sudo einrichten und dann am besten gleich ein sudo linux32 chroot /mnt/gentoo32 app_deiner_wahl in das Menü aufnehmen.

Wichtig: Ein chroot wird nicht ohne Grund als Jail bezeichnet! Wenn du von dort auf Sachen aus dem 64-Bit Filesystem zugreifen möchtest, musst du sie wie bei /tmp /dev und /proc auch mit "-o bind" in dein chroot hinein mounten.

Falls du noch Probleme damit hast, dann such mal im Forum. Findet sich auf alle Fälle was dazu im amd64-Gentoo-Forum.

Zu mplayer:

Die 32-bit wincodecs gehen natürlich nicht. Denk immer daran: ein 64-bit Programm kann keine 32-bit Library benutzen!

Also auch (wenn du das benötigst (ich komme gut ohne aus)) einen mplayer im chroot nehmen.

Zur make.conf:

Möglichst gleich mit gcc-3.4 installieren. Ich weiss nur nicht, ob der jetzt schon bei der Installation da ist. Hier gibt es Unterschiede bei den CFLAGS.

Für gcc-3.4 hab ich folgendes (ob es das Beste ist, kann ich dir nicht sagen):

CFLAGS="-march=athlon64 -fasynchronous-unwind-tables -O3 -pipe -fweb -ftracer"

CHOST="x86_64-pc-linux-gnu"

Für gcc-3.3 musst du auf alle Fälle den -mach-Parameter weglassen.

Ansonsten installier dir auf alle Fälle die verschiedenen emul-Libs (mach einfach mal: emerge -s emul-linux, dann siehst du, welche es gibt). Das sind die wichtigsten Libs als 32-Bit, die dir auch nicht zwischen die anderen, sondern unter /emul/x86 geschrieben werden. Damit laufen schonmal die meisten 32-Bit Applikationen wie openoffice-bin, mozilla-firefox-bin usw.

----------

## benjamin200

@hartmutg:

Hey Super. Vielen Dank für die detaillierten Information bezüglich chroot (für x86) und emu-linux.

Bist du sicher, das es keine Möglichkeit gibt Videos die Codes wie DivX, AVI usw. enthalt im normalen 64Bit Modus (also ohne chroot) abzuspielen?

P.S.

Ich lege jetzt mal mit der Install los  :Smile: 

Gruß

Benjamin

----------

## hartmutg

Siehe auch hier:

https://forums.gentoo.org/viewtopic.php?t=244146&highlight=win32codec

Bei einigen Filmen hatte ich schon Probleme. Wobei ich noch nicht versucht hab, USE="divx4linux" zu setzen. So wichtig ist es mir doch nicht.

Viel Glück beim Installieren!

Ach so: Natürlich ist die amd64-CD die richtige!

----------

## benjamin200

```

CFLAGS="-march=athlon64 -fasynchronous-unwind-tables -O3 -pipe -fweb -ftracer"

```

achja, wo hast du eigentlich die genauen Herstellungen her. In der make.conf.example habe ich sie nicht gefunden. Wo gibts den da eine dokumentierte Dokumentation zu den Parametern?

Gruß,

Benjamin

----------

## hartmutg

such mal im Forum (amd64-Teil). Da gibt es schon mehrere Threads zu, besonders zu gcc3.4.

Die Parameter findest du natürlich auch in der manpage von gcc.

Was nun wirklich am besten ist, ist denke ich mehr als strittig. Ich hatte die auch so von jemandem übernommen und funktioniert bei mir recht flott.

Manche ebuilds überschreiben natürlich die Einstellungen und lassen z.B. nur -O2 zu.

----------

