Announcement

Collapse
No announcement yet.

COMPILE: Linux Port

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • I now receive an error about "Please make sure the CD is in the CD-ROM tray" and then it exits. I have the CD in the cd tray and it is mounted as /media/cdrom1. Is there a command line switch, text file something to tell it to look for the CD in /media/cdrom1?

    Comment


    • Fixed my previous problem. I needed to move the texture.dat file from the CD to my ctp2_program/ctp directory so the CD check would work. Also, the README.linux file does not mention having to move crater.la, crater.so, geometric.la, geometric.so, plasma2.la & plasma2.so to the ctp2_program/dll/map directory. You also have to edit the userprofile.txt file to add the RuleSets=../../ctp2_data;../../media/cdrom1/ctp2_data to make the program work. Great job so far!

      I have a problem with the sprites flashing in and out and the program crashing everytime I try to battle something. There is some screen redraws due to, I think, the resolution is hardcoded to 800x600 when I have a 1024x768 resolution monitor. Other than that it works better than the version on WinXP. Is there anything you would like me to check?

      Comment


      • Here is my new problem:

        Making all in slic
        make[3]: Entering directory `/media/hda3/terry/Shared/LinGames/CTP2/ctp2_code/gs/slic'
        if /bin/sh ../../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I. -I../../../ctp2_code/os/include -I../../../ctp2_code/os/nowin32 -I../../../ctp2_code -I../../.. -I../../../ctp2_code/os/include -I../../../ctp2_code/ctp -I../../../ctp2_code/ctp/ctp2_utils -I../../../ctp2_code/ctp/ctp2_rsrc -I../../../ctp2_code/ctp/debugtools -I../../../ctp2_code/ui/interface -I../../../ctp2_code/ui/netshell -I../../../ctp2_code/robot/utility -I../../../ctp2_code/robot/pathing -I../../../ctp2_code/robot/aibackdoor -I../../../ctp2_code/gfx/spritesys -I../../../ctp2_code/gfx/tilesys -I../../../ctp2_code/gfx/gfx_utils -I../../../ctp2_code/gs/database -I../../../ctp2_code/gs/fileio -I../../../ctp2_code/gs/gameobj -I../../../ctp2_code/gs/utility -I../../../ctp2_code/gs/world -I../../../ctp2_code/net/io -I../../../ctp2_code/net/general -I../../../ctp2_code/ui/aui_utils -I../../../ctp2_code/ui/aui_sdl -I../../../ctp2_code/ui/aui_directx -I../../../ctp2_code/ui/aui_ctp2 -I../../../ctp2_code/ui/aui_common -I../../../ctp2_code/libs/anet/h -I../../../ctp2_code/mm -I../../../ctp2_code/robotcom/backdoor -I../../../ctp2_code/gs/slic -I../../../ctp2_code/gs/slic -I../../../ctp2_code/gfx/layers -I../../../ctp2_code/mapgen -I../../../ctp2_code/ui/freetype -I../../../ctp2_code/sound -I../../../ctp2_code/GameWatch/gamewatch -I../../../ctp2_code/GameWatch/gwciv -I../../../ctp2_code/ctp/fingerprint -I../../../ctp2_code/ui/slic_debug -I../../../ctp2_code/gs/outcom -I../../../ctp2_code/ctp -I../../../ctp2_code/ui/aui_common -I../../../ctp2_code/ui/ldl -I../../../ctp2_code/ui/ldl -I../../../ctp2_code/gs/events -I../../../ctp2_code/gs/newdb -I../../../ctp2_code/gs/newdb -I../../../ctp2_code/ai/diplomacy -I../../../ctp2_code/ai/mapanalysis -I../../../ctp2_code/ai/strategy/scheduler -I../../../ctp2_code/ai/strategy/agents -I../../../ctp2_code/ai/strategy/goals -I../../../ctp2_code/ai/strategy/squads -I../../../ctp2_code/ai -I../../../ctp2_code/ai/CityManagement -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Wall -Wno-unused-variable -fms-extensions -fmessage-length=0 -frtti -fexceptions -g -MT QuickSlic.lo -MD -MP -MF ".deps/QuickSlic.Tpo" -c -o QuickSlic.lo QuickSlic.cpp; \
        then mv -f ".deps/QuickSlic.Tpo" ".deps/QuickSlic.Plo"; else rm -f ".deps/QuickSlic.Tpo"; exit 1; fi
        g++ -DHAVE_CONFIG_H -I. -I. -I../../../ctp2_code/os/include -I../../../ctp2_code/os/nowin32 -I../../../ctp2_code -I../../.. -I../../../ctp2_code/os/include -I../../../ctp2_code/ctp -I../../../ctp2_code/ctp/ctp2_utils -I../../../ctp2_code/ctp/ctp2_rsrc -I../../../ctp2_code/ctp/debugtools -I../../../ctp2_code/ui/interface -I../../../ctp2_code/ui/netshell -I../../../ctp2_code/robot/utility -I../../../ctp2_code/robot/pathing -I../../../ctp2_code/robot/aibackdoor -I../../../ctp2_code/gfx/spritesys -I../../../ctp2_code/gfx/tilesys -I../../../ctp2_code/gfx/gfx_utils -I../../../ctp2_code/gs/database -I../../../ctp2_code/gs/fileio -I../../../ctp2_code/gs/gameobj -I../../../ctp2_code/gs/utility -I../../../ctp2_code/gs/world -I../../../ctp2_code/net/io -I../../../ctp2_code/net/general -I../../../ctp2_code/ui/aui_utils -I../../../ctp2_code/ui/aui_sdl -I../../../ctp2_code/ui/aui_directx -I../../../ctp2_code/ui/aui_ctp2 -I../../../ctp2_code/ui/aui_common -I../../../ctp2_code/libs/anet/h -I../../../ctp2_code/mm -I../../../ctp2_code/robotcom/backdoor -I../../../ctp2_code/gs/slic -I../../../ctp2_code/gs/slic -I../../../ctp2_code/gfx/layers -I../../../ctp2_code/mapgen -I../../../ctp2_code/ui/freetype -I../../../ctp2_code/sound -I../../../ctp2_code/GameWatch/gamewatch -I../../../ctp2_code/GameWatch/gwciv -I../../../ctp2_code/ctp/fingerprint -I../../../ctp2_code/ui/slic_debug -I../../../ctp2_code/gs/outcom -I../../../ctp2_code/ctp -I../../../ctp2_code/ui/aui_common -I../../../ctp2_code/ui/ldl -I../../../ctp2_code/ui/ldl -I../../../ctp2_code/gs/events -I../../../ctp2_code/gs/newdb -I../../../ctp2_code/gs/newdb -I../../../ctp2_code/ai/diplomacy -I../../../ctp2_code/ai/mapanalysis -I../../../ctp2_code/ai/strategy/scheduler -I../../../ctp2_code/ai/strategy/agents -I../../../ctp2_code/ai/strategy/goals -I../../../ctp2_code/ai/strategy/squads -I../../../ctp2_code/ai -I../../../ctp2_code/ai/CityManagement -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -Wall -Wno-unused-variable -fms-extensions -fmessage-length=0 -frtti -fexceptions -g -MT QuickSlic.lo -MD -MP -MF .deps/QuickSlic.Tpo -c QuickSlic.cpp -fPIC -DPIC -o .libs/QuickSlic.o
        ../../../ctp2_code/os/include/noCOMBase.h:11: warning: 'class ICTP2Unknown' has virtual functions but non-virtual destructor
        ../../../ctp2_code/gs/outcom/Ic3CivArchive.h:54: warning: 'class IC3CivArchive' has virtual functions but non-virtual destructor
        ../../../ctp2_code/gs/world/MapPoint.h:235: warning: 'class SquareIterator' has virtual functions but non-virtual destructor
        ../../../ctp2_code/gs/world/MapPoint.h:258: warning: 'class RadiusIterator' has virtual functions but non-virtual destructor
        ../../../ctp2_code/gs/gameobj/CityRadius.h:48: warning: 'class CityRadiusCallback' has virtual functions but non-virtual destructor
        ../../../ctp2_code/gs/gameobj/player.h:1049: error: extra qualification 'Player::' on member 'GetAllTileValue'
        ../../../ctp2_code/gs/gameobj/Advances.h:132: error: extra qualification 'Advances::' on member 'GetCostOfWhatHeKnows'
        make[3]: *** [QuickSlic.lo] Error 1
        make[3]: Leaving directory `/media/hda3/terry/Shared/LinGames/CTP2/ctp2_code/gs/slic'
        make[2]: *** [all-recursive] Error 1
        make[2]: Leaving directory `/media/hda3/terry/Shared/LinGames/CTP2/ctp2_code/gs'
        make[1]: *** [all-recursive] Error 1
        make[1]: Leaving directory `/media/hda3/terry/Shared/LinGames/CTP2/ctp2_code'
        make: *** [all-recursive] Error 1

        Does anyone know how to correct this?

        Comment


        • Originally posted by NeoFax
          ../../../ctp2_code/gs/gameobj/player.h:1049: error: extra qualification 'Player::' on member 'GetAllTileValue'
          ../../../ctp2_code/gs/gameobj/Advances.h:132: error: extra qualification 'Advances::' on member 'GetCostOfWhatHeKnows'
          It looks to me like you can just delete the extra qualifications in question. I suspect that they arise from copy/paste errors in days of yore.

          Comment


          • Originally posted by NeoFax
            I have a problem with the sprites flashing in and out and the program crashing everytime I try to battle something.
            I fixed a problem which made sprites invisible ages ago. This might be related. Unfortunately I can't remember anything about it any more...

            Can you describe the crashes any more? Are they segfaults or something else?

            Comment


            • Originally posted by J Bytheway


              It looks to me like you can just delete the extra qualifications in question. I suspect that they arise from copy/paste errors in days of yore.
              Do you mean just go into the header file *.h and comment out the "extra" lines? Or is it in say a Makefile? Sorry, but I don't know much about C/C++, but would love to learn, VBA/Basic background.

              Comment


              • Yes. Edit e.g. Advances.h, and look for a line starting with
                Code:
                sint32 Advances::GetCostOfWhatHeKnows() ...
                Just remove the "Advances::" qualifier, to make it read
                Code:
                sint32 GetCostOfWhatHeKnows() ...
                I am not sure where the linux branch is at the moment, but we have rewritten the sprite handling in the trunk quite a bit, to prevent either having memory leaks or crashes/invisible sprites. IIRC, it had to do with copies of sprites sharing a pointer to created memory (being managed by the original), but sometimes the copies having longer lifetime than the original.

                Comment


                • Fromafar: Thanks for the help! I greatly appreciate it. I so far have had to change about ten different header files to run make. Why does C/C++ need this to compile?(Just trying to understand)

                  New problem:

                  cc1: warnings being treated as errors
                  In file included from ../../../h/dp2.h:99,
                  from ../../../h/dp.h:21,
                  from ../uudp/uudps.c:69:
                  ../../../h/hkeytab.h:48: warning: 'packed' attribute ignored for field of type 'char'
                  ../../../h/hkeytab.h:49: warning: 'packed' attribute ignored for field of type 'char[12]'
                  ../../../h/hkeytab.h:50: warning: 'packed' attribute ignored for field of type 'char[1]'
                  In file included from ../../../h/dp2.h:103,
                  from ../../../h/dp.h:21,
                  from ../uudp/uudps.c:69:
                  ../../../h/anet.h:228: warning: 'packed' attribute ignored for field of type 'char'
                  ../../../h/anet.h:229: warning: 'packed' attribute ignored for field of type 'dp_uint8_t[10]'
                  ../../../h/anet.h:241: warning: 'packed' attribute ignored for field of type 'dp_char_t[32]'
                  ../../../h/anet.h:242: warning: 'packed' attribute ignored for field of type 'dp_char_t[10]'
                  ../../../h/anet.h:243: warning: 'packed' attribute ignored for field of type 'dp_char_t[10]'
                  ../../../h/anet.h:247: warning: 'packed' attribute ignored for field of type 'dp_uchar_t[12]'
                  ../../../h/anet.h:264: warning: 'packed' attribute ignored for field of type 'dp_uint8_t[10]'
                  ../../../h/anet.h:265: warning: 'packed' attribute ignored for field of type 'char[24]'
                  ../../../h/anet.h:356: warning: 'packed' attribute ignored for field of type 'dp_char_t[24]'
                  ../../../h/anet.h:383: warning: 'packed' attribute ignored for field of type 'dp_session_t'
                  ../../../h/anet.h:550: warning: 'packed' attribute ignored for field of type 'char[12]'
                  ../../../h/anet.h:554: warning: 'packed' attribute ignored for field of type 'char[12]'
                  In file included from ../../../h/dp2.h:106,
                  from ../../../h/dp.h:21,
                  from ../uudp/uudps.c:69:
                  ../../../h/dppkt.h:158: warning: 'packed' attribute ignored for field of type 'unsigned char'
                  ../../../h/dppkt.h:159: warning: 'packed' attribute ignored for field of type 'unsigned char[250]'
                  ../../../h/dppkt.h:185: warning: 'packed' attribute ignored for field of type 'unsigned char[10]'
                  ../../../h/dppkt.h:196: warning: 'packed' attribute ignored for field of type 'unsigned char[10]'
                  ../../../h/dppkt.h:204: warning: 'packed' attribute ignored for field of type 'dp_playerId_t'
                  ../../../h/dppkt.h:207: warning: 'packed' attribute ignored for field of type 'char[10]'
                  ../../../h/dppkt.h:233: warning: 'packed' attribute ignored for field of type 'struct dp_playerId_t[1]'
                  ../../../h/dppkt.h:265: warning: 'packed' attribute ignored for field of type 'unsigned char[10]'
                  ../../../h/dppkt.h:266: warning: 'packed' attribute ignored for field of type 'unsigned char[10]'
                  ../../../h/dppkt.h:288: warning: 'packed' attribute ignored for field of type 'unsigned char'
                  ../../../h/dppkt.h:310: warning: 'packed' attribute ignored for field of type 'unsigned char'
                  ../../../h/dppkt.h:311: warning: 'packed' attribute ignored for field of type 'unsigned char[250]'
                  ../../../h/dppkt.h:319: warning: 'packed' attribute ignored for field of type 'char'
                  ../../../h/dppkt.h:327: warning: 'packed' attribute ignored for field of type 'dpio_data_packet_t'
                  ../../../h/dppkt.h:353: warning: 'packed' attribute ignored for field of type 'char[24]'
                  ../../../h/dppkt.h:392: warning: 'packed' attribute ignored for field of type 'unsigned char[10]'
                  ../../../h/dppkt.h:395: warning: 'packed' attribute ignored for field of type 'unsigned char[10]'
                  ../../../h/dppkt.h:433: warning: 'packed' attribute ignored for field of type 'unsigned char[10]'
                  ../../../h/dppkt.h:441: warning: 'packed' attribute ignored for field of type 'unsigned char[10]'
                  ../../../h/dppkt.h:456: warning: 'packed' attribute ignored for field of type 'dp_session_t'
                  ../../../h/dppkt.h:457: warning: 'packed' attribute ignored for field of type 'unsigned char'
                  ../../../h/dppkt.h:458: warning: 'packed' attribute ignored for field of type 'char[1]'
                  In file included from ../../../h/dp2.h:109,
                  from ../../../h/dp.h:21,
                  from ../uudp/uudps.c:69:
                  ../../../h/dptab.h:804: warning: 'packed' attribute ignored for field of type 'unsigned char'
                  ../../../h/dptab.h:805: warning: 'packed' attribute ignored for field of type 'unsigned char'
                  ../../../h/dptab.h:806: warning: 'packed' attribute ignored for field of type 'char[1]'
                  ../../../h/dptab.h:817: warning: 'packed' attribute ignored for field of type 'unsigned char'
                  ../../../h/dptab.h:818: warning: 'packed' attribute ignored for field of type 'unsigned char'
                  ../../../h/dptab.h:819: warning: 'packed' attribute ignored for field of type 'unsigned char'
                  ../../../h/dptab.h:820: warning: 'packed' attribute ignored for field of type 'unsigned char'
                  ../../../h/dptab.h:821: warning: 'packed' attribute ignored for field of type 'char[1]'
                  ../../../h/dptab.h:830: warning: 'packed' attribute ignored for field of type 'unsigned char'
                  ../../../h/dptab.h:876: warning: 'packed' attribute ignored for field of type 'unsigned char'
                  ../../../h/dptab.h:877: warning: 'packed' attribute ignored for field of type 'unsigned char'
                  ../../../h/dptab.h:878: warning: 'packed' attribute ignored for field of type 'char[1]'
                  ../../../h/dptab.h:886: warning: 'packed' attribute ignored for field of type 'unsigned char'
                  ../../../h/dptab.h:887: warning: 'packed' attribute ignored for field of type 'char[1]'
                  In file included from ../../../h/../src/tca/tca.h:27,
                  from ../../../h/../src/tca/tserv.h:41,
                  from ../../../h/dp2.h:111,
                  from ../../../h/dp.h:21,
                  from ../uudp/uudps.c:69:
                  ../../../h/../src/tca/tcapw.h:70: warning: 'packed' attribute ignored for field of type 'unsigned char[16]'
                  ../../../h/../src/tca/tcapw.h:84: warning: 'packed' attribute ignored for field of type 'tcapw_uname_t'
                  ../../../h/../src/tca/tcapw.h:85: warning: 'packed' attribute ignored for field of type 'tcapw_hpw_t'
                  ../../../h/../src/tca/tcapw.h:86: warning: 'packed' attribute ignored for field of type 'char[64]'
                  In file included from ../../../h/../src/tca/tserv.h:41,
                  from ../../../h/dp2.h:111,
                  from ../../../h/dp.h:21,
                  from ../uudp/uudps.c:69:
                  ../../../h/../src/tca/tca.h:47: warning: 'packed' attribute ignored for field of type 'unsigned char[8]'
                  ../../../h/../src/tca/tca.h:53: warning: 'packed' attribute ignored for field of type 'unsigned char[16]'
                  ../../../h/../src/tca/tca.h:54: warning: 'packed' attribute ignored for field of type 'char'
                  ../../../h/../src/tca/tca.h:62: warning: 'packed' attribute ignored for field of type 'unsigned char[32]'
                  ../../../h/../src/tca/tca.h:64: warning: 'packed' attribute ignored for field of type 'unsigned char'
                  ../../../h/../src/tca/tca.h:65: warning: 'packed' attribute ignored for field of type 'char[64]'
                  ../../../h/../src/tca/tca.h:71: warning: 'packed' attribute ignored for field of type 'unsigned char[24]'
                  ../../../h/../src/tca/tca.h:73: warning: 'packed' attribute ignored for field of type 'unsigned char'
                  ../../../h/../src/tca/tca.h:74: warning: 'packed' attribute ignored for field of type 'unsigned char'
                  In file included from ../../../h/dp2.h:111,
                  from ../../../h/dp.h:21,
                  from ../uudp/uudps.c:69:
                  ../../../h/../src/tca/tserv.h:150: warning: 'packed' attribute ignored for field of type 'unsigned char[10]'
                  ../../../h/../src/tca/tserv.h:151: warning: 'packed' attribute ignored for field of type 'unsigned char[10]'
                  ../../../h/../src/tca/tserv.h:156: warning: 'packed' attribute ignored for field of type 'unsigned char'
                  ../../../h/../src/tca/tserv.h:165: warning: 'packed' attribute ignored for field of type 'union '
                  make[6]: *** [libdp2_la-uudps.lo] Error 1
                  make[6]: Leaving directory `/media/hda3/terry/Shared/LinGames/CTP2/ctp2_code/libs/anet/src/linux/dp'
                  make[5]: *** [all-recursive] Error 1
                  make[5]: Leaving directory `/media/hda3/terry/Shared/LinGames/CTP2/ctp2_code/libs/anet/src/linux'
                  make[4]: *** [all-recursive] Error 1
                  make[4]: Leaving directory `/media/hda3/terry/Shared/LinGames/CTP2/ctp2_code/libs/anet/src'
                  make[3]: *** [all-recursive] Error 1
                  make[3]: Leaving directory `/media/hda3/terry/Shared/LinGames/CTP2/ctp2_code/libs/anet'
                  make[2]: *** [all-recursive] Error 1
                  make[2]: Leaving directory `/media/hda3/terry/Shared/LinGames/CTP2/ctp2_code/libs'
                  make[1]: *** [all-recursive] Error 1
                  make[1]: Leaving directory `/media/hda3/terry/Shared/LinGames/CTP2/ctp2_code'
                  make: *** [all-recursive] Error 1


                  Thanksa again!
                  Last edited by NeoFax; September 4, 2006, 22:18.

                  Comment


                  • plz commit your changes to the repository too!
                    Formerly known as "E" on Apolyton

                    See me at Civfanatics.com

                    Comment


                    • OK, how do I submit my changes upstream? Second, how do I fix my last error? It doesn't even show an error other than the final lines. It looks as though it has to deal with anet, but I am not positive. Nor, do I know where to begin to fix the problem.

                      Comment


                      • Originally posted by NeoFax
                        Second, how do I fix my last error? It doesn't even show an error other than the final lines. It looks as though it has to deal with anet, but I am not positive. Nor, do I know where to begin to fix the problem.
                        I think this can be safely ignored, so the best solution is to disable the set of warnings which includes this warning. This will be some argument to gcc of the form -Wno-*, such as -Wno-packed. I'm not sure what it would be exactly. Search the gcc man page. Then, to actually pass the argument to gcc you need it in your CFLAGS (or maybe CXXFLAGS) when you call configure. Something like
                        Code:
                        CFLAGS=-Wno-packed ./configure
                        or maybe
                        Code:
                        ./configure CFLAGS=-Wno-packed
                        ...or you might want to include more flags. In the long run this should probably be added to the anet Makefile.am somewhere.

                        Comment


                        • J Bytheway tried both ways from above and tried adding the CFLAG to the Makefile in the anet directory. No luck.

                          Comment


                          • Originally posted by NeoFax
                            J Bytheway tried both ways from above and tried adding the CFLAG to the Makefile in the anet directory. No luck.
                            Did you confirm what option was actually required? When you run make look at the command it is executing which results in the errors and check that it really does include the extra option you've added.

                            Comment


                            • try this:
                              ./configure CC=gcc32

                              Comment


                              • Originally posted by NeoFax
                                New problem:

                                cc1: warnings being treated as errors
                                In file included from ../../../h/dp2.h:99,
                                from ../../../h/dp.h:21,
                                from ../uudp/uudps.c:69:
                                ../../../h/hkeytab.h:48: warning: 'packed' attribute ignored for field of type 'char'
                                ../../../h/hkeytab.h:49: warning: 'packed' attribute ignored for field of type 'char[12]'
                                [... lots of similar warnings]
                                Welcome to the marvelous world of compiler compatibility . Are you using gcc 4.1? Stuff like the above used to compile just fine with earlier versions, but the guys at GNU have decided to change the place where you have to insert the 'packed' attribute.

                                In the past, you had to repeat the attribute for every item, as in
                                Code:
                                struct Whatever
                                {
                                    SomeType        Item1 __attribute__((packed));
                                    SomeOtherType Item2 __attribute__((packed));
                                };
                                but now they want you to write
                                Code:
                                struct Whatever
                                {
                                    SomeType        Item1;
                                    SomeOtherType Item2;
                                } __attribute__((packed));
                                If you only play SP games, you can safely ignore the warnings. If you want to support MP, you do need the packed attribute, to prevent incorrect interpretation of received and sent messages (byte streams).

                                Comment

                                Working...
                                X