Bismuth pre-Alpha

Übersicht Sonstiges Projekte

Gehe zu Seite Zurück  1, 2, 3, 4  Weiter

Neue Antwort erstellen

blackgecko

BeitragSa, Mai 19, 2012 1:52
Antworten mit Zitat
Benutzer-Profile anzeigen
Dass Ints usw in BM keine Objekte sind halte ich für eine der nervigsten Sachen überhaupt, von daher macht das ruhig mit diesen Pseudoklassendingern - wie auch immer das geht. Aber du hast natürlich recht - eins nach dem Andern.
Zu Null nochmal: Null bedeutet für mich Nichts. Und ich finde weder ein Integer noch ein String sind Nichts, auch wenn der Integer 0 enthält und der String leer ist.
Als ich dieses Verhalten in BlitzMax entdeckt hab, hatte ich gerade eine stundenlange Bug-Jagd hinter mir...
So long and thanks for all the fish.
Fedora 17 | Windows 7 || BlitzPlus | BlitzMax
Rechtschreibflame GO!!! Deppenapostroph | SeidSeit | Deppenakzent | DassDas | Deppenleerzeichen | TodTot | enzigste.info - Ja, ich sammel die.

hamZta

Administrator

BeitragSa, Mai 19, 2012 2:02
Antworten mit Zitat
Benutzer-Profile anzeigen
blackgecko hat Folgendes geschrieben:
Dass Ints usw in BM keine Objekte sind halte ich für eine der nervigsten Sachen überhaupt (...)


Bismuth ist nunmal keine komplett objektorientierte Sprache, von daher macht das Sinn. Und aus den Augen eines optimierungsbewussten Programmierers finde ich das auch gut so. Wink
Blog.

ProfJake

ehemals "DTC" / "Fabian Niemann"

BeitragSa, Mai 19, 2012 2:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Second that.

Übersimplifizierte Konzepte – alles ist ein Objekt, keine Funktionen etc – sind auch immer mit Vorsicht zu genießen.

Thunder

BeitragSa, Mai 19, 2012 10:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Habe jetzt alles nachgeschaut. g++ ist auf Version 4.5.2, ld und ar auf 2.21.
Die where-Aufrufe geben beim g++ nur den MinGW-Pfad und bei ld und ar zuerst den MinGW-Pfad, dann den BlitzMax-Pfad. Habe jetzt auch temporär den BlitzMax-Pfad aus Path entfernt, hat aber keine Besserung gebracht. Habe ich vielleicht ungünstige Versionen installiert?
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit

Eingeproggt

BeitragSa, Mai 19, 2012 11:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Auch mal ein Wort von mir:
Das Projekt klingt interessant (ach, damit sag ich was ganz neues Razz ) und mit den beteiligten Leuten kann es auch was werden! Viel Glück dafür!

Was eure Konzepte angeht find ich die meisten gut. Ganz besonders das jetzt diskutierte Thema mit den primitiven Datentypen die eben keine Objekte sind. Unbedingt beibehalten! Java ist ja eine weit verbreitete und auch halbwegs performante Sprache, aber das Konzept dahinter löst regelmäßiges Kopfschütteln bei mir aus. Vor allem wenn ich in den Stack-Trace schau und sehe dass bei nem Error in einer recht grundlegend erscheinenden Sache 10 bis 20 Klassen beteiligt sind Rolling Eyes Aber das gehört nicht daher, soll nur verdeutlichen dass ich eure Idee mag Smile (Wenn jemand meine über mittlerweile 3 Jahre geprägte Java-Abneigung mit mir diskutieren will dann bitte per PN Wink )

mfG, Christoph.
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9
 

Seven

BeitragSo, Mai 20, 2012 13:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Wie steht es eigentlich mit der Perfomance?

Ansonsten sieht das beeindruckend aus, wobei die Installation etwas
umständlich erscheint Smile

Noobody

BeitragSo, Mai 20, 2012 15:09
Antworten mit Zitat
Benutzer-Profile anzeigen
@Thunder: Hm, das ist sehr seltsam. Die Versionen gehen völlig in Ordnung (benutzte ich bis vor kurzem auch), und wenn der BMax-Pfad erst nach dem MinGW-Pfad kommt, sollte er auch die richtigen Versionen nehmen.

Die Linkerfehler sehen auch nicht so aus, als ob komplett etwas schiefläuft, sondern einfach, dass aus irgendeinem Grund TStream nicht gelinkt wird. Falls du BMax hast, kannst du mal eine Debugversion des Compilers mit den Argumenten -r Testcode/Noobody/Zaubercraft/Zaubercraft.bi laufen lassen und schauen, was er ausgibt? (da werden nähmlich unter anderem auch die Linkerbefehle gelistet).

@Seven: Dank gcc so ziemlich die beste auf dem Markt Razz Ist schon praktisch, wenn man nicht selber ASM generieren muss und stattdessen auf ein paar Jahrzente gcc-Entwicklung zurückfallen kann.

Die Installation ist jetzt natürlich nur für die Alpha - im Laufe der Zeit wird es sicher auch einen alternativen Installer geben, der das Zeug selber erledigt.
Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun

Thunder

BeitragSo, Mai 20, 2012 17:59
Antworten mit Zitat
Benutzer-Profile anzeigen
Ok, habe ich jetzt gemacht, Noobody. Wahrscheinlich ist der letzte Aufruf zu g++ (der alles zusammenlinkt) der wichtigste, aber wenn du noch etwas brauchst, kann ich den Rest auch posten:
Code: [AUSKLAPPEN]
g++ "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/ProjectZaubercraft.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/Zaubercraft.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/TList.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/Vector4.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/Matrix4.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/Matrix4GL.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/Entity.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/Renderer.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/RendererGL.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/InputHandler.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/Camera.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/BufferObject.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/VertexBufferGL.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/IndexBufferGL.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/Texture2D.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/Texture2DGL.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/Mesh.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/MeshGL.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/PerlinNoise.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/Chunk.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/BlockClass.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/LuaHandler.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/Skybox.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/Util.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/GLUtil.o" "C:/Bismuth/Testcode/Noobody/Zaubercraft/.bismuth/Pixmap.o" "C:/Bismuth/mod/Bismuth/Core/GC/.bismuth/ModuleGC.a" "C:/Bismuth/mod/Bismuth/Graphics/FreeGlut/.bismuth/ModuleFreeGlut.a" "C:/Bismuth/mod/Bismuth/Core/Array/.bismuth/ModuleArray.a" "C:/Bismuth/mod/Bismuth/Util/AppControl/.bismuth/ModuleAppControl.a" "C:/Bismuth/mod/Bismuth/Core/AppInit/.bismuth/ModuleAppInit.a" "C:/Bismuth/mod/Bismuth/Random/.bismuth/ModuleRandom.a" "C:/Bismuth/mod/Bismuth/Core/String/.bismuth/ModuleString.a" "C:/Bismuth/mod/Bismuth/Core/Object/.bismuth/ModuleObject.a" "C:/Bismuth/mod/Bismuth/Graphics/GLEW/.bismuth/ModuleGLEW.a" "C:/Bismuth/mod/Bismuth/Math/.bismuth/ModuleMath.a" "C:/Bismuth/mod/Bismuth/IO/StdIO/.bismuth/ModuleStdIO.a" "C:/Bismuth/mod/Bismuth/IO/.bismuth/ModuleIO.a" "C:/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a" "C:/Bismuth/mod/Bismuth/Scripting/Lua/.bismuth/ModuleLua.a" "C:/Bismuth/mod/Bismuth/Time/.bismuth/ModuleTime.a" "C:/Bismuth/mod/Bismuth/Core/GC/libgc.a" "C:/Bismuth/mod/Bismuth/Core/GC/libgccpp.a" "C:/Bismuth/mod/Bismuth/Graphics/FreeGlut/libfreeglut_static.a" -l"opengl32" -l"winmm" -l"gdi32"  -o "C:/Bismuth/a.out"


Darunter kommt dann "g++ output:" und dann die Fehler.

Edit: Habe den Aufruf jetzt aus der Kommandozeile neu gestartet, aber mit veränderten Parametern: statt "C:/Bismuth/mod/Bismuth/IO/.bismuth/ModuleIO.a" habe ich g++ "C:/Bismuth/mod/Bismuth/IO/.bismuth/IO.o" übergeben und da hat er es ohne Probleme gelinkt. Dann die a.out nach Zaubercraft/ kopiert und in Zaubercraft.exe umbenannt und es ging.
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit

Noobody

BeitragMi, Mai 23, 2012 23:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Sehr interessant, Thunder - das werde ich mir auf jeden Fall nochmal genauer anschauen.

Danke für den Hinweis!
Man is the best computer we can put aboard a spacecraft ... and the only one that can be mass produced with unskilled labor. -- Wernher von Braun

DAK

BeitragDo, Mai 24, 2012 7:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Bei mir rennt's auch nicht.
Hab Bismuth erfolgreich kompiliert. Wenn ich Zaubercraft starte krieg ich das hier:
Code: [AUSKLAPPEN]
>bismuth -o ZauberCraft.exe ZauberCraft.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/ZauberCraft.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/TList.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/Vector4.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/Matrix4.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/Matrix4GL.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/Entity.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/Renderer.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/RendererGL.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/InputHandler.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/Camera.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/BufferObject.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/VertexBufferGL.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/IndexBufferGL.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/Texture2D.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/Texture2DGL.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/Mesh.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/MeshGL.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/PerlinNoise.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/Chunk.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/BlockClass.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/LuaHandler.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/Skybox.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/Util.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/GLUtil.bi
Compiling D:/Eigene Dateien/Programme/Bismuth/Testcode/Noobody/Zaubercraft/Pixmap.bi

g++ Output:
c:/mingw/bin/../lib/gcc/mingw32/4.6.2/../../../../mingw32/bin/ld.exe: D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o): warning: COMDAT symbol '.eh_frame$_ZN6Object8FinalizeEv' does not match section name '.eh_frame'
c:/mingw/bin/../lib/gcc/mingw32/4.6.2/../../../../mingw32/bin/ld.exe: D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/Time/.bismuth/ModuleTime.a(Time.o): warning: COMDAT symbol '.eh_frame$_ZN10gc_cleanup7cleanupEPvS0_' does not match section name '.eh_frame'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.text+0xc7): undefined reference to `TStream::TStream()'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.text+0x15b): undefined reference to `TStream::TStream()'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.text+0x1e8): undefined reference to `TStream::TStream()'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.text+0x214): undefined reference to `TStream::TStream()'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.text$_ZN7TStreamD0Ev[TStream::~TStream()]+0x9): undefined reference to `VTT for TStream'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.text$_ZN7TStreamD1Ev[TStream::~TStream()]+0x9): undefined reference to `VTT for TStream'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTC11TFileStream0_7TStream[construction vtable for TStream-in-TFileStream]+0x14): undefined reference to `TStream::Finalize()'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTC11TFileStream0_7TStream[construction vtable for TStream-in-TFileStream]+0x18): undefined reference to `TStream::Eof()'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTC11TFileStream0_7TStream[construction vtable for TStream-in-TFileStream]+0x38): undefined reference to `TStream::ReadByte()'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTC11TFileStream0_7TStream[construction vtable for TStream-in-TFileStream]+0x3c): undefined reference to `TStream::ReadShort()'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTC11TFileStream0_7TStream[construction vtable for TStream-in-TFileStream]+0x40): undefined reference to `TStream::ReadInt()'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTC11TFileStream0_7TStream[construction vtable for TStream-in-TFileStream]+0x44): undefined reference to `TStream::ReadLong()'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTC11TFileStream0_7TStream[construction vtable for TStream-in-TFileStream]+0x48): undefined reference to `TStream::ReadFloat()'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTC11TFileStream0_7TStream[construction vtable for TStream-in-TFileStream]+0x4c): undefined reference to `TStream::ReadDouble()'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTC11TFileStream0_7TStream[construction vtable for TStream-in-TFileStream]+0x50): undefined reference to `TStream::WriteByte(char)'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTC11TFileStream0_7TStream[construction vtable for TStream-in-TFileStream]+0x54): undefined reference to `TStream::WriteShort(short)'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTC11TFileStream0_7TStream[construction vtable for TStream-in-TFileStream]+0x58): undefined reference to `TStream::WriteInt(int)'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTC11TFileStream0_7TStream[construction vtable for TStream-in-TFileStream]+0x5c): undefined reference to `TStream::WriteLong(long long)'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTC11TFileStream0_7TStream[construction vtable for TStream-in-TFileStream]+0x60): undefined reference to `TStream::WriteFloat(float)'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTC11TFileStream0_7TStream[construction vtable for TStream-in-TFileStream]+0x64): undefined reference to `TStream::WriteDouble(double)'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTC11TFileStream0_7TStream[construction vtable for TStream-in-TFileStream]+0x68): undefined reference to `TStream::ReadString(int)'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTC11TFileStream0_7TStream[construction vtable for TStream-in-TFileStream]+0x6c): undefined reference to `TStream::WriteString(String*)'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTV11TFileStream[vtable for TFileStream]+0x14): undefined reference to `TStream::Finalize()'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTV11TFileStream[vtable for TFileStream]+0x38): undefined reference to `TStream::ReadByte()'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTV11TFileStream[vtable for TFileStream]+0x3c): undefined reference to `TStream::ReadShort()'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTV11TFileStream[vtable for TFileStream]+0x40): undefined reference to `TStream::ReadInt()'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTV11TFileStream[vtable for TFileStream]+0x44): undefined reference to `TStream::ReadLong()'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTV11TFileStream[vtable for TFileStream]+0x48): undefined reference to `TStream::ReadFloat()'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTV11TFileStream[vtable for TFileStream]+0x4c): undefined reference to `TStream::ReadDouble()'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTV11TFileStream[vtable for TFileStream]+0x50): undefined reference to `TStream::WriteByte(char)'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTV11TFileStream[vtable for TFileStream]+0x54): undefined reference to `TStream::WriteShort(short)'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTV11TFileStream[vtable for TFileStream]+0x58): undefined reference to `TStream::WriteInt(int)'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTV11TFileStream[vtable for TFileStream]+0x5c): undefined reference to `TStream::WriteLong(long long)'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTV11TFileStream[vtable for TFileStream]+0x60): undefined reference to `TStream::WriteFloat(float)'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTV11TFileStream[vtable for TFileStream]+0x64): undefined reference to `TStream::WriteDouble(double)'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTV11TFileStream[vtable for TFileStream]+0x68): undefined reference to `TStream::ReadString(int)'
D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o):FileStream.cpp:(.rdata$_ZTV11TFileStream[vtable for TFileStream]+0x6c): undefined reference to `TStream::WriteString(String*)'
collect2: ld returned 1 exit status

>Exit code: 0
>ZauberCraft
Der Befehl "ZauberCraft" ist entweder falsch geschrieben oder
konnte nicht gefunden werden.
>Exit code: 1


Hab Bismuth auch wieder runtergeschmissen und neu rauf gezogen (inklusive neu runtergeladen).


g++/ld/ar Version: 4.6.2/2.22/2.22 und alle befinden sich in C:\MinGW\bin.
where bismuth geht auch auf die richtige Adresse.

Edit: Die beiden Testcodes von Xerxes funktionieren, es ist nur Zaubercraft, das nicht tut.
SciTe und damit den Zaubercraft-Code habe ich schon neu heruntergeladen, keine Änderung.
Gewinner der 6. und der 68. BlitzCodeCompo

Hummelpups

BeitragSa, Mai 26, 2012 9:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Xerxes Laughing da sprang mir direkt 300 ins Gedächtnis Smile

Cooles Projekt, gefällt mir. Methodenüberladung usw gefällt mir
besonders :>

i'm sorry
blucode - webdesign - Ressource - NetzwerkSim
BlitzBasic 2D - BlitzMax - MaxGUI - Monkey - BlitzPlus

Jan_

Ehemaliger Admin

BeitragDo, Mai 31, 2012 11:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Sehr schön, und wenn ich bei der Math.h und bei der Appinit.h noch eine Leerzeile heranmache, kommen auch keine Warnungen mehr.
Kann man euch irgendwie helfen bei dem Projekt?
between angels and insects

BladeRunner

Moderator

BeitragDo, Mai 31, 2012 12:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Das mit den Leerzeilen ist leider ein Ärgernis aus GIT, anscheinend frisst das gern abschliessende Leerzeilen :/
Wenn Du helfen willst: teste was das Zeug hält, melde Bugs oder bastel ein paar Module. Es sind ja die wenigsten Felder bislang belegt, und BMax zeigt ja dass einiges an Umfang drinne ist Wink
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Jan_

Ehemaliger Admin

BeitragDo, Mai 31, 2012 13:23
Antworten mit Zitat
Benutzer-Profile anzeigen
kleine Ausbesserung für:
Bismuth\mod\Bismuth\Time\samples\TimeString.bi

Code: [AUSKLAPPEN]
Local zeit:BiTime = new BiTime
zeit.SetTime(-1)

Local format:String = "Heute ist der: %md.%mn.%y"
Print(format)

print(zeit.TimeString(format))


vorher war dort der Typ mit Time benannt, dadurch funktionierte das Beispiel nicht im aktuellen Release
between angels and insects

FireballFlame

BeitragSo, Jun 03, 2012 20:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe mich zum Test mal an einer Vektorklasse versucht.

Ist bisher nur für 3D-Vektoren und vieles ist noch nicht endgültig oder fehlt (da die Sprache ja erst im Alphastadium ist), aber vielleicht kann man ja was damit anfangen Razz

Code: [AUSKLAPPEN]


//Import Bismuth.Math




Class Vector3D
    //Implements IEquatable(Of Vector3D)
   
Public
   
   
    Field X:Double
    Field Y:Double
    Field Z:Double
   
   
    /*
    Method Vector3D()
    End Method
    */
   
   
    Method Vector3D(x:Double, y:Double, z:Double)
        Self.X = x
        Self.Y = y
        Self.Z = z
    End Method
   
   
    /*
    Method Vector3D(copyOf:Vector3D)
        X = copyOf.x
        Y = copyOf.y
        Z = copyOf.z
    End Method
    */
   
   
    Method Invert()
        X = -X
        Y = -Y
        Z = -Z
    End Method
   
   
   
    Method Neg:Vector3D()                       // -
        Return New Vector3D(-X, -Y, -Z)
    End Method
   
   
   
    Method Add(vector:Vector3D)                 // +=
        X = X + vector.X
        Y = Y + vector.Y
        Z = Z + vector.Z
    End Method
   
   
    /*
    Method Add(x:Double, y:Double, z:Double)    // +=
        Self.X = Self.X + x
        Self.Y = Self.Y + y
        Self.Z = Self.Z + z
    End Method
    */
   
   
    Method Plus:Vector3D(vector:Vector3D)       // +
        Return New Vector3D(X + vector.X, ..
                            Y + vector.Y, ..
                            Z + vector.Z)
    End Method
   
   
   
    Method Sub(vector:Vector3D)                 // -=
        X = X - vector.X
        Y = Y - vector.Y
        Z = Z - vector.Z
    End Method
   
   
    /*
    Method Sub(x:Double, y:Double, z:Double)    // -=
        Self.X = Self.X - x
        Self.Y = Self.Y - y
        Self.Z = Self.Z - z
    End Method
    */
   
   
    Method Minus:Vector3D(vector:Vector3D)      // -
        Return New Vector3D(X - vector.X, ..
                            Y - vector.Y, ..
                            Z - vector.Z)
    End Method
   
   
   
    Method Mult(scalar:Double)                  // *=
        X = X * scalar
        Y = Y * scalar
        Z = Z * scalar
    End Method
   
   
   
    Method Times:Vector3D(scalar:Double)        // *
        Return New Vector3D(X * scalar, ..
                            Y * scalar, ..
                            Z * scalar)
    End Method
   
   
   
    Method Dot:Double(vector:Vector3D)          // *
        Return X * vector.X ..
             + Y * vector.Y ..
             + Z * vector.Z
    End Method
   
   
   
    Method Cross:Vector3D(vector:Vector3D)      // öhh keine Ahnung
        Return New Vector3D(Y * vector.Z - Z * vector.Y, ..
                            Z * vector.X - X * vector.Z, ..
                            X * vector.Y - Y * vector.X)
    End Method
   
   
   
    Method GetLength:Double()                   // Property
        Return Sqr(Self.Dot(Self))
    End Method
       
    Method SetLength(length:Double)
        Self.Mult(length/GetLength())
    End Method
   
   
   
    Method Normalize()
        SetLength(1)
    End Method
   
   
   
    Method GetDirection:Vector3D()              // Property
        Return Self.Times(1 / GetLength())
    End Method
   
    Method SetDirection(direction:Vector3D)
        Local factor:Double = Sqr(Self.Dot(Self) / direction.Dot(direction))
        X = direction.X * factor
        Y = direction.Y * factor
        Z = direction.Z * factor
    End Method
   
   
    /*
    Public Shared Operator =(ByVal operand1 As Vector3D, ByVal operand2 As Vector3D) As Boolean
        Return X = other.X AndAlso Y = other.Y AndAlso Z = other.Z
    End Operator
   
   
   
    Public Shared Operator <>(ByVal operand1 As Vector3D, ByVal operand2 As Vector3D) As Boolean
        Return Not (operand1 = operand2)
    End Operator
   
   
   
    Public Overloads Function Equals(ByVal other As Vector3D) As Boolean Implements System.IEquatable(Of Vector3D).Equals
        Return operand1 = operand2
    End Function
   
   
   
    Public Shared Widening Operator CType(ByVal operand As Vector3D) As Tuple(Of Double, Double, Double)
        With operand
            Return Tuple.Create(.X, .Y, .Z)
        End With
    End Operator
   
   
   
    Public Shared Widening Operator CType(ByVal operand As Tuple(Of Double, Double, Double)) As Vector3D
        With operand
            Return New Vector3D(.Item1, .Item2, .Item3)
        End With
    End Operator
    */

   
    Method ToString:String()
        Return "Vector(" + X + ", " ..
                         + Y + ", " ..
                         + Z + ")"
    End Method
   
   
End Class

 

GERMAX

BeitragFr, Jun 08, 2012 3:06
Antworten mit Zitat
Benutzer-Profile anzeigen
basicprogger und eurer Project sind beide sehr interessant. Cool

Was mich interessiert - wenn das entsprechend weit fortgeschritten ist, ob man da hier im Forum eine ständige Präsenz einrichten kann. Einige andere sind ja schon "leicht" am verschimmeln und dem Tode nahe, die könnte man verkleinern und etwas aufbauen, was mehr Zukunftspotential hat.

So könnte man vllt. dem schrumpfenden Besucherstrom entgegenwirken. Aber das muß der Forenbetreiber entscheiden-auf anderen Seiten ist man da zieml. unflexibel und schaut lieber seelenruhig zu, wie die Seite vor die Hunde geht. Aber aufgeben tun die dann auch nicht, weil sie es anscheinend weder ertragen, den Umständen Rechnung zu tragen und sich zu verändern, noch "ihr baby" in Ehren zu Grabe zu tragen - lieber noch ein bisschen weiter röcheln lassen...

Ich stelle überdies den Antrag, dass ein benchmark auf Basis von zaubercraft entwickelt wird, der dann eingesetzt wird, um den speed zu testen (incl B3D u. Bmax) Wink
Erfolglos begonnene BB-Projekte:TRON/CONVOY/MYSTIC

DAK

BeitragFr, Jun 08, 2012 7:14
Antworten mit Zitat
Benutzer-Profile anzeigen
Da das Konzept ja wirklich toll ist und es bei allen Andren auch geht, habe ich jetzt noch mal versucht, Zaubercraft zu kompilieren. Laut Compiler kennt die Klasse TFileStream die Klasse TStream nicht, von der geerbt wird. Also hab ich in die TFileStream.bi ein "Import "IO.bi"" hinzugefügt. Jetzt kompiliert es, aber Zaubercraft stürzt sofort beim Starten ab, mit der Standard-Windows-Fehlermeldung "Zaubercraft funktioniert nicht". Irgendwelche Ideen?

Der Compiler bemäkelt nur mehr:
Code: [AUSKLAPPEN]
c:/mingw/bin/../lib/gcc/mingw32/4.6.2/../../../../mingw32/bin/ld.exe: D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/IO/FileStream/.bismuth/ModuleFileStream.a(FileStream.o): warning: COMDAT symbol '.eh_frame$_ZN6Object8FinalizeEv' does not match section name '.eh_frame'
c:/mingw/bin/../lib/gcc/mingw32/4.6.2/../../../../mingw32/bin/ld.exe: D:/Eigene Dateien/Programme/Bismuth/mod/Bismuth/Time/.bismuth/ModuleTime.a(Time.o): warning: COMDAT symbol '.eh_frame$_ZN10gc_cleanup7cleanupEPvS0_' does not match section name '.eh_frame'


Edit: um ganz genau zu sein, bleibt er bei VBO.Map(0, 4) in Skybox.bi hängen.
ich hab die Skybox auskommentiert, jetzt bleibt er bei VBO.Map(0, VertexCount) in GenerateGeometry in Chunk.bi hängen.
Genaugenommen ist es die Zeile
DataPointer = Byte Ptr(glMapBufferRange(GL_ARRAY_BUFFER, Start, Length, AccessToGLConstant[Usage]))
In VBO.Map.

Zum Vergleichen meine Daten:
Geforce 9600M GT
Core2Duo 2x2.1 GHz
Windows 7
Gewinner der 6. und der 68. BlitzCodeCompo

BladeRunner

Moderator

BeitragFr, Jun 08, 2012 7:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Germax: Wenn Bismuth genug Interesse erzeugt und sich weiter so prächtig entwickelt steht einem eigenen Subforum von meiner Warte aus nichts im Weg. Der Projektethread hier ist erst mal ein Testballon um zu schauen wie Bismuth aufgenommen wird. Zudem ist es derzeit noch zu Alpha um es fest zu integrieren.
Noobody arbeitet wie besessen an dem Teil, er hat den Compiler nahezu im Alleingang aus dem Boden gestampft, und da er derzeit Prüfungen absolviert kann es ein wenig stocken. Der Rest von uns war mehr am theoretischen Unterbau (Wie soll die Syntax aussehen etc.) sowie an ein paar Modulen beteiligt.

Es muss weiter jedem klar sein dass das Teil in der Tat pre-alpha ist, uns fallen auch immer wieder neue Bugs auf.
Wir möchten euch daher auch weiter um rege Krabblermeldung bitten.

DAK:
Es kann durchaus sein dass da ein größerer Bug zugrundeliegt, dennoch noch mal ein paar grundlegende Checks:
- Tritt das Problem nur bei ZauberCraft auf oder geben alle Versuche etwas zu Compilen einen Fehler?
- hast Du nach dem Compilieren von Bimuth.exe mal alle Module neu gebaut? (in der cmd: bismuth -m bismuth.*

Noo hat seit Release der ersten Alpha ein paar Compilerbugs beseitigt, es wird demnächst eine neue Version zum Download geben.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

DAK

BeitragFr, Jun 08, 2012 8:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Astro.bi lässt sich kompilieren, gibt auch keine Fehler, rennt allerdings ohne Fenster und auch ohne sonst was zu tun, bis ich es per TaskManager abschieße.
Mathtest.bi rennt ohne Probleme.

Ja, ich habe alle Module neugebaut. Allerdings habe ich bismuth.exe nicht neu kompiliert sondern die Vorkompilierte Version davon verwendet.

Ich hab mir das Ganze noch ein paar mal neu runtergeladen um sicher zu gehen, dass es nicht ein schlechter Download war, habs neu installiert und alles, hat aber leider nix geändert.
Gewinner der 6. und der 68. BlitzCodeCompo

Jan_

Ehemaliger Admin

BeitragFr, Jun 08, 2012 9:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich wollte mal sagen, das ich es ganz klasse finde, das Projekt. Großes Lob an die Ersteller!
between angels and insects

Gehe zu Seite Zurück  1, 2, 3, 4  Weiter

Neue Antwort erstellen


Übersicht Sonstiges Projekte

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group