Terminus Est: Difference between revisions

From Bitpost wiki
No edit summary
No edit summary
 
(2 intermediate revisions by the same user not shown)
Line 4: Line 4:
We'll need fmod and SDL.
We'll need fmod and SDL.


[[Terminus SDL and fmod under linux]]
[[Terminus SDL and fmod under linux]] (done)


[[Terminus autotools setup]]
[[Terminus autotools setup]] (done)


<font style="color:green">
[[Terminus Making the code portable to linux]] (done)
world/bullet.hpp:23: error: type specifier omitted for parameter `szBullet'


To me this looks like it is not finding the Sint32 type in SDL_types.h?
Go to [http://soloforge.com Soloforge] for the latest updates!
Either that or it is not finding my util/graph.h?
</font>
 
<font style="color:blue">
But hey, on the positive side, main.cpp and config.cpp have successfully compiled!  :> 
 
Compiling craftselect.cpp... here's the full first error:
 
In file included from world/weapon.hpp:8,
                  from world/craft.hpp:11,
                  from craftselect.hpp:9,
                  from craftselect.cpp:5:
world/bullet.hpp:23: error: type specifier omitted for parameter `szBullet'
world/bullet.hpp: In member function `TeRect TeBullet::getBoundRect()':
world/bullet.hpp:236: error: request for member `CenteredAt' in `rclBullet',
    which is of non-aggregate type `const TeRect ()(TePoint (*)())'
 
"non-aggregate" apparently means the compiler doesn't think the return value from CenteredAt is a class or struct. 
It looks fine to me:
 
TeRect CenteredAt( TePoint pt ) const;
 
Lemme sleep on it, I'll give you an answer in the morning...
</font>
 
<font style="color:green">
I emailed you the entire makefile generated by Dev-Cpp.
 
Here is the portion that applies to craftselect.cpp:
 
craftselect.o: craftselect.cpp craftselect.hpp util/gui.hpp
  util/graph.hpp util/fixmath.hpp util/text.hpp  util/image.hpp 
  util/element.hpp util/../system.hpp util/../util/log.hpp  util/../util/graph.hpp util/../config.hpp
  util/../xml/xmlutils.h  util/../xml/tinyxml.h util/../profile.hpp util/../util/audio.hpp
  util/../util/graph.hpp util/../xml/xmlutils.h util/blit.hpp  world/craft.hpp world/../gamedef.hpp
  world/../util/image.hpp  world/../util/smoke.hpp world/../util/element.hpp  world/../util/body.hpp
  world/../util/../system.hpp  world/../util/graph.hpp world/../util/fixmath.hpp world/weapon.hpp
  world/bullet.hpp world/../util/anim.hpp world/../util/blit.hpp  world/../util/audio.hpp
  world/../util/exhaust.hpp  world/../util/smoke.hpp world/../util/../gamedef.hpp
  world/../xml/xmlutils.h world/target.hpp world/../util/log.hpp  gamesys.hpp system.hpp
  game.hpp scene.hpp util/text.hpp  util/element.hpp mainmenu.hpp results.hpp world/capital.hpp
  world/block.hpp world/../util/body.hpp world/target.hpp  util/message.hpp world/event.hpp
  world/../util/graph.hpp $(CPP) -c craftselect.cpp -o craftselect.o $(CXXFLAGS)
 
where
 
CPP  = g++.exe -D__DEBUG__
CXXFLAGS = $(CXXINCS)  -fexceptions -g3
CXXINCS =
 
</font>
 
<font style="color:blue">
I'm thinking it's a [const] issue... checking...
</font>
 
 
<font style="color:green">
On the side, there is a new Windows demo available at http://soloforge.com/files/TerminusDemo.zip
</font>
 
 
<font style="color:blue">
Dang John!  The content is BURSTING FORTH!  This is fun stuff... like a graphic novel come to life...
</font>
 
 
<font style="color:green">
Cool :-)  Oh, the fighter melee tutorial is broken.  The latest SVN version fixes it.
</font>
 
 
<font style="color:blue">
Trying to isolate the error in bullet.hpp...
 
cd terminus/terminus/world
cp bullet.hpp test.cpp
g++ -I/home/m/development/terminus/fmod/api -I/usr/include/SDL test.cpp
 
That does it.  Now to play with test.cpp...
OK, looks like g++ sees these and thinks they are function declarations:
 
const TeSize szBullet( nBulletW, nBulletH );
const TeRect rclBullet( TePoint(), szBullet );
 
Change to this and g++ "gets" it:
 
const TeSize szBullet = TeSize( nBulletW, nBulletH );
const TeRect rclBullet = TeRect( TePoint(), szBullet );
 
John, I hope you don't mind, I checked in that change, and one other similar change in world/craft.hpp.  I want to be EXTREMELY careful about breaking anything of yours, can you see if it still works for you?
 
I suppose to do this right, I should have both Linux and Windows builds set up and test in both... eventually... :>
 
Next up: replace _finddata_t in the Linux build with a Linux equivalent...
 
profile.cpp:6:16: io.h: No such file or directory
profile.cpp: In member function `void
    TeProfileMgr::Load(std::basic_string<char, std::char_traits<char>,
    std::allocator<char> >)':
profile.cpp:449: error: `_finddata_t' undeclared (first use this function)
 
</font>

Latest revision as of 20:18, 11 February 2007

Terminus Est is John's awesome space shooter. See his Soloforge website.

Mike is hoping to help John build Terminus under linux. We'll need fmod and SDL.

Terminus SDL and fmod under linux (done)

Terminus autotools setup (done)

Terminus Making the code portable to linux (done)

Go to Soloforge for the latest updates!