sonnenblen.de - Das unabhängige Sun User Forum

Software => Programmieren, Kompilieren => Thema gestartet von: Philipp am 25. Februar 2003, 11:16:40

Titel: Bochs compiliren
Beitrag von: Philipp am 25. Februar 2003, 11:16:40
Also ich dachte mir ich dachte mir ich mach mich mal dran Bochs zu compilieren und installieren. Also sourcen geladen entpackt und folgendes eingegeben

<i>
# /export/home/downloads/bochs/bochs-2.0.2/configure</i>
Dann kamm das
<i>
checking build system type... sparc-sun-solaris2.9
checking host system type... sparc-sun-solaris2.9
checking target system type... sparc-sun-solaris2.9
checking if you are configuring for another platform... no
checking for standard CFLAGS on this platform...
checking for gcc... no
checking for cc... cc
checking for C compiler default output... configure: error: C compiler cannot create executables
</i>

Wo liegt mein Fehler ? Ich habe die Companion Cd installiert, fehlen duerfte mir als nicht. Ich habe auch das Readme durchgelsen, wirklich teschniche Hilfe steht da aber nciht drinne !
Titel: Re: Bochs compiliren
Beitrag von: Philipp am 25. Februar 2003, 11:17:04
Ich dachte hier geht html ???
Titel: Re: Bochs compiliren
Beitrag von: Kathse am 25. Februar 2003, 11:26:12
http://www.yabbforum.com/YaBBHelp/posting.html#yabbc
Titel: Re: Bochs compiliren
Beitrag von: Lordy am 25. Februar 2003, 11:39:17
Hallo,

du hast wohl den gcc nicht in deiner Path Env. drinnen. Der Gcc von der Companion CD ist in /opt/sfw/bin. Check ob du das drinnen hast wenn nicht bekommst du es mit

'export PATH=$PATH:/opt/sfw/bin'
bei bash, sh, zsh.

Solltest du csh, tcsh verwenden mues es so aussehen:
'setenv PATH $PATH:/opt/sfw/bin'

Am besten ist es wenn du sollche Sachen fest in der InitFile deiner Shell hast, das spart arbeit und nerfen.


Gruss,
chris
Titel: Re: Bochs compiliren
Beitrag von: Philipp am 25. Februar 2003, 17:39:16
Ich gebe ein

# export PATH=$PATH:/opt/sfw/bin

Es erscheint:

PATH=/usr/gnome/bin:/usr/sbin:/usr/bin:/usr/openwin/bin:/bin:/usr/ucb:/usr/dt/bin:/usr/openwin/bin:/opt/sfw/bin: ist kein Kennzeichner

Hab die Standardt shell
das andere findet er erst gar nicht.


Mh das mit dem Kennzeichner kam auch schon in dem anderen Thread mit dem mplayer  :'(
Titel: Re: Bochs compiliren
Beitrag von: SmellyCat am 25. Februar 2003, 17:50:10
was Dir Lordy gab trifft auf bash etc. zu aber nicht auf 'sh'

Hast Du bash installiert? - Führe es aus wenn ja ('bash' eintippen) dann sollte der export Befehl rennen.

Bash ist in /usr/bin oder /usr/local/bin

Den korrekten 'sh' export $PATH Befehl habe ich jetzt nicht im Kopf

bye

Mats
Titel: Re: Bochs compiliren
Beitrag von: Lordy am 25. Februar 2003, 18:55:27
Hm, warum das bei sh nicht zutrifft verwundert mich jetzt doch (wiedermal) etwas. Da ich jetzt grade keine 'sh' da hab kann ich nur noch annehmen das es vielleicht so funktioniert:

PATH=blalba
export PATH

Das sollte laut meinen Wissen und meinen externen Großhirn(Google) selbst auf Solaris sh laufen.


chris
Titel: Re: Bochs compiliren
Beitrag von: Philipp am 25. Februar 2003, 19:17:11
Lordy tipp mal sh ein. Schon hast du unter Solaris ne SH.
Danke das mit der Bash klappte. Configure lief durch ein make danach lief allerdings nicht sondern sowohl bash als auch sh meckertetn nicht gefunden !
Titel: Re: Bochs compiliren
Beitrag von: Lordy am 25. Februar 2003, 19:53:32
HRHR, jetzt komm ich mir veräppelt vor :) :) :)
Das ich nur 'sh' eintippen muss damit ich eine sh auf Solaris bekomm weiss ich auch, nur wo kein Solaris hilft kein 'sh' eintippen, und das "kein sh bei der Hand" hat sich darauf bezogen das ich grade an keiner Solaris dose sitze. ;)

Wenn du posten kannst was dir Make aufgibt kann man dir vielleicht weiter helfen, nur ein "läuft nicht" sagt hier den meisten genau null. Warum schreib ich nur die meisten? Einen Hellseher hab ich hier noch nicht getroffen, also, hilft keinen was!

So, jetzt mach ich mich auf den nach Hause weg, bis in zwei Std oder so.


Gruss,
chris
Titel: Re: Bochs compiliren
Beitrag von: SmellyCat am 25. Februar 2003, 21:57:19
@Philipp:

mach mal ein './configure --help' und setz die Optionen wie Du sie brauchst, so optimierst Du das ganze Teil.

Du wirst auf anhieb nicht alles verstehen was Dir an Optionen geboten wird aber Dinge wie MMX Support etc. sind nicht schwer zu verstehen ;)

Also './configure --with-xxx --enable-xxx etc.'

Vorteil ist dass Du Dir so Bochs auf das zuschneiden kannst wie Du es brauchst.

Gmake installiert? - Versuche es mit dem, es ist nicht so pingelig wie make und bei der meisten GPL Ware die bessere Wahl.

Also 'gmake' und als root 'gmake install'

gmake (=GNU make) ist auf der Comapnion IMO unter Dev Tools zu finden und wird in /opt/sfw/bin/gmake installiert.

Ansonsten bitte die komplette Fehlermeldung
Titel: Re: Bochs compiliren
Beitrag von: Philipp am 26. Februar 2003, 00:22:23
Ich bekomme ja keine Fehlermeldung wenn ich make eintippe sagt mir Solaris nur das es das nicht gibt, das habe ich doch oben schon geschrieben. Wie als wenn ich jetzt einen Fantasie namen eintippe, halt so als haette ich kein make !
Titel: Re: Bochs compiliren
Beitrag von: Philipp am 26. Februar 2003, 00:30:42
Ein gmake brachte mir folgendes (gamake war schon durch die companion cd installiert wurden)

cd iodev && \
make  libiodev.a
/bin/sh: make: nicht gefunden
gmake: *** [iodev/libiodev.a] Error 1
Titel: Re: Bochs compiliren
Beitrag von: Philipp am 26. Februar 2003, 00:32:05
Ich habe DIE Komplette drauf gmake ist auch da nur make nicht. Nagut make brauch ich ja auch nicht wenn ich gmake nehme ... trotztem klappt das ned immer diese komischen Fehler  :'(
Titel: Re: Bochs compiliren
Beitrag von: Lordy am 26. Februar 2003, 00:40:09
Abend,

schon mal was von "Suchen" gehoert? Gibt da recht nette Tools, zB find(1). Benutzt man etwa so "find / -name '*make'" damit laest sich so maches finden. zB:

sonne% find / -name "*make"
/usr/openwin/bin/imake
/usr/ccs/bin/make
/usr/ccs/lib/svr4.make
/usr/lib/spell/hashmake
/usr/lib/svr4.make
/usr/lib/lu/lumake
/usr/sbin/lumake
/usr/share/lib/make
/usr/xpg4/bin/make
/usr/local/bin/make
/usr/local/doc/make
/opt/sfw/bin/automake
/opt/sfw/bin/gmake
/opt/sfw/share/automake

Du siehst hier jetzt ganz viele make tools, nicht alles sind die selber, aber egal. Wichtig ist das alle Pathe in der PATH Env drinnen stehen, um sicher zu gehen hier nochmal die sache mit der PATH Env.

Fuer Bash, Sh, Ksh, Zsh
% PATH=/opt/sfw/bin:/usr/sfw/bin:/usr/local/bin:/usr/bin:/usr/X/bin:/usr/xpg4/bin:/usr/ccs/bin:/usr/ucb
% export PATH

Fuer Csh und Tcsh
setenv PATH /opt/sfw/bin:/usr/sfw/bin:/usr/local/bin:/usr/bin:/usr/X/bin:/usr/xpg4/bin:/usr/ccs/bin:/usr/ucb

(Nebenbei, das funktioniert jetzt so sicher, auch wenn es weiter oben schon das oefftere mal gepostet wurde in aehnlicher form.)

So sieht meine Path aus, und die hat bis jetzt so gut wie alles geschluckt.

Ach ja, wenn du gmake verwendest heisst das noch lang nicht das du auf das Solaris make verzichten kannst. Mache Tools sind halt einfach stahr bei der einstellung welche Tools verwendet werden sollten. Manchmal muss man da auch selber mit einen Editor aus make gmake machen, nur zZ haben wir ja noch andere Probleme.


So, VIEL ERFOLG
chris
Titel: Re: Bochs compiliren
Beitrag von: Philipp am 26. Februar 2003, 01:25:54
Ich habe einfach mal deinen kopletten Path uebernommen. gebe make ein und siehe da: Er macht lustige Dinge  ;D
Ich weis zwar nicht  was das ist ... sieht aber ganz gut aus  ;)
Cpu Auslastung 50 %.. heist das, das das ganze nur auf einer cpu laeuft ? Naja auch gut so kann ich nebenbei sehr schnell und bequem surfen :-)
Titel: Re: Bochs compiliren
Beitrag von: Lordy am 26. Februar 2003, 01:43:19
Hallo,

mein Path wirkt halt wunder ;)

Ja laeuft nur auf einer CPU weil so nur ein Prozess gestartet wird. Du kannst mit '(g)make -j 2' zB zwei Prozesse starten. Achtung, nicht jedes Programm kann mit mehreren Prozessen compiliert werden. Machmal gibt das fehler, machmal schaltet das Programm selber nur auf einen Prozess.


Gruss,
chris
Titel: Re: Bochs compiliren
Beitrag von: Philipp am 26. Februar 2003, 01:50:14
Na egal ging schnell durch
danach tippte ich ein make install ein Es kam ein Error drinne vor insgesamt lief es aber ohne Abbruch durch

bash-2.05# make install
cd iodev && \
make  libiodev.a
`libiodev.a' is up to date.
echo done
done
cd cpu && \
make  libcpu.a
`libcpu.a' is up to date.
echo done
done
cd memory && \
make  libmemory.a
`libmemory.a' is up to date.
echo done
done
cd gui && \
make  libgui.a
`libgui.a' is up to date.
echo done
done
cd fpu && \
make  libfpu.a
`libfpu.a' is up to date.
echo done
done
for i in /usr/local/bin; do mkdir -p $i && test -d $i && test -w $i; done
if test -f install-x11-fonts; then chmod a+x install-x11-fonts; fi
if test -f test-x11-fonts; then chmod a+x test-x11-fonts; fi
for i in bochs bximage; do if test -f $i; then cp $i /usr/local/bin; else cp /export/home/downloads/bochs/bochs-2.0.2/$i /usr/local/bin; fi; done
for i in bochsdbg; do if test -f $i; then cp $i /usr/local/bin; else cp /export/home/downloads/bochs/bochs-2.0.2/$i /usr/local/bin; fi; done
cp: Zugriff auf /export/home/downloads/bochs/bochs-2.0.2/bochsdbg nicht möglich
*** Error code 2 (ignored)
mkdir -p /usr/local/man/man1
mkdir -p /usr/local/man/man5
for i in bochs bximage bochs-dlx; do cat /export/home/downloads/bochs/bochs-2.0.2/doc/man/$i.1 | sed 's/@version@/2.0.2/g' | gzip -9 -c >  /usr/local/man/man1/$i.1.gz; chmod 644 /usr/local/man/man1/$i.1.gz; done
for i in bochsrc; do cat /export/home/downloads/bochs/bochs-2.0.2/doc/man/$i.5 | gzip -9 -c >  /usr/local/man/man5/$i.5.gz; chmod 644 /usr/local/man/man5/$i.5.gz; done
for i in /usr/local/share/bochs;      do mkdir -p $i && test -d $i && test -w $i; done
for i in bios/BIOS-* bios/VGABIOS* install-x11-fonts test-x11-fonts font/vga.pcf; do if test -f $i; then cp $i /usr/local/share/bochs; else cp /export/home/downloads/bochs/bochs-2.0.2/$i /usr/local/share/bochs; fi; done
cp -r /export/home/downloads/bochs/bochs-2.0.2/gui/keymaps /usr/local/share/bochs
for i in /usr/local/share/doc/bochs; do mkdir -p $i && test -d $i && test -w $i; done
for i in CHANGES COPYING README; do if test -f $i; then cp $i /usr/local/share/doc/bochs; else cp /export/home/downloads/bochs/bochs-2.0.2/$i /usr/local/share/doc/bochs; fi; done
rm -f /usr/local/share/doc/bochs/README
cat /export/home/downloads/bochs/bochs-2.0.2/build/linux/README.linux-binary /export/home/downloads/bochs/bochs-2.0.2/README > /usr/local/share/doc/bochs/READMEcp /export/home/downloads/bochs/bochs-2.0.2/.bochsrc /usr/local/share/doc/bochs/bochsrc-sample.txt
bash-2.05#

Ich wechselte dann in /usr/local/bin/
hab bochs eingegeben

folgendes kam

------------------------------
Bochs Configuration: Main Menu
------------------------------

This is the Bochs Configuration Interface, where you can describe the
machine that you want to simulate.  Bochs has already searched for a
configuration file (typically called bochsrc.txt) and loaded it if it
could be found.  When you are satisfied with the configuration, go
ahead and start the simulation.

You can also start bochs with the -q option to skip these menus.

1. Restore factory default configuration
2. Read options from...
3. Edit options
4. Save options to...
5. Begin simulation
6. Quit now

Please choose one: [3] 5
00000000000i[     ] installing x module as the Bochs GUI
00000000000e[     ] No romimage to load. Is your bochsrc file loaded/valid ?
00000000000i[MEM0 ] allocated memory at 13cba8. after alignment, vector=13d000
00000000000i[MEM0 ] 4.00MB
00000000000i[CMOS ] Setting initial clock to: Tue Feb 25 21:37:07 2003 (time0=1046205427)
00000000000i[DMA  ] channel 4 used by cascade
00000000000i[DMA  ] channel 2 used by Floppy Drive
00000000000p[XGUI ] >>PANIC<< Could not open vga font. See docs-html/install.html
00000000000i[SYS  ] Last time is 1046205427
00000000000i[XGUI ] Exit.
00000000000i[     ] restoring default signal behavior
========================================================================
Bochs is exiting with the following message:
[XGUI ] Could not open vga font. See docs-html/install.html
========================================================================
00000000000i[CTRL ] quit_sim called with exit code 1
bash-2.05#

Weis jemand wie ich den VGA font hinbekomme ?

Titel: Re: Bochs compiliren
Beitrag von: SmellyCat am 26. Februar 2003, 15:20:59
müsstest Du mit './configure --with-svga --enable-vbe'  erstmal SVGA hineinkompilieren

Ich weiss nicht wie es nun exakt weitergeht aber IMO musst Du Bochs nun eine DOS oder sonst was Installation geben... Manuel's dazu lesen, steht bestimmt irgendwo drinnen und für den Anfang sollte FreeDOS (http://freedos.org) als OS reichen.

bye

Mats

PS: Doku lesen hilft ;)

http://bochs.sourceforge.net/doc/docbook/user/x1048.html