Help a newbie

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • konijn_
    Hellband maintainer
    • Jul 2007
    • 367

    Help a newbie

    So,

    I finally got Hellband to compile on my new Mac, and put it in a dmg and fix a major mac bug.

    However, there is still 2 things I would like to find out :

    * So I can compile with make -fmakefile.osx, how can I debug, is anybody able to debug any band on Mac ?

    * Hellband shows lowercase 'hellband' in the mac menu, how can I make it show 'Hellband' with uppercase H ?

    Cheers,
    T.
    * Are you ready for something else ? Hellband 0.8.8 is out! *
  • Marble Dice
    Swordsman
    • Jun 2008
    • 412

    #2
    Originally posted by konijn_
    * Hellband shows lowercase 'hellband' in the mac menu, how can I make it show 'Hellband' with uppercase H ?
    This is a complete guess, but what if you change the name of the generated binary executable so that it's got a capital H?

    Comment

    • konijn_
      Hellband maintainer
      • Jul 2007
      • 367

      #3
      Originally posted by Marble Dice
      This is a complete guess, but what if you change the name of the generated binary executable so that it's got a capital H?
      No dice ;\
      I also changed the descriptions in the plist file. Still no dice.

      T.
      * Are you ready for something else ? Hellband 0.8.8 is out! *

      Comment

      • Pete Mack
        Prophet
        • Apr 2007
        • 6883

        #4
        Compile with
        $ make -f Makefile.osx OPT=-g
        $ cd ..
        $ gdb Hellband.app
        OR
        $gdb Hellband.app/Contents/MacOS/hellband
        (This is approximate--actual path should be obvious.)

        You don't want the executable to be named Hellband, you want the package to be named Hellband.app

        Set the NAME macro in Makefile.osx to
        NAME = Hellband
        rather than
        NAME = Angband
        Note that the variable definitions in Makefile.osx are all important -- they are used to replace the appropriate values in the plist file.

        EDIT:
        If you don't like command-line arguments to make, or editing Makefile.osx, you can create override values in
        src/config

        I don't recommend this for debug flags and the like, because it's easy to forget when you want to make a distribution.
        Last edited by Pete Mack; December 31, 2009, 22:31.

        Comment

        • konijn_
          Hellband maintainer
          • Jul 2007
          • 367

          #5
          Originally posted by Pete Mack
          Compile with
          $ make -f Makefile.osx OPT=-g
          $ cd ..
          $ gdb Hellband.app
          OR
          $gdb Hellband.app/Contents/MacOS/hellband
          (This is approximate--actual path should be obvious.)

          You don't want the executable to be named Hellband, you want the package to be named Hellband.app

          Set the NAME macro in Makefile.osx to
          NAME = Hellband
          rather than
          NAME = Angband
          Note that the variable definitions in Makefile.osx are all important -- they are used to replace the appropriate values in the plist file.

          EDIT:
          If you don't like command-line arguments to make, or editing Makefile.osx, you can create override values in
          src/config

          I don't recommend this for debug flags and the like, because it's easy to forget when you want to make a distribution.
          Thanks!!

          T.
          * Are you ready for something else ? Hellband 0.8.8 is out! *

          Comment

          • Pete Mack
            Prophet
            • Apr 2007
            • 6883

            #6
            BTW: if you are using the very latest Makefiles, you will have something called Makefile.src
            This contains VERSION and COPYRIGHT variables, which are used for in appropriate places in the executable and plist.


            This holds for the current version of Makefile.osx. If you are using older versions (pre-3.0.8) of main-crb.c and Makefile.osx, you are on your own.

            EDIT:
            One more thing: if you have a replacement icon for the Finder, replace Angband.icns in the osx folder. Use as large as possible a bitmap to create OSX icons. (They render much better in the dock and in the finder as large icons.)
            Last edited by Pete Mack; January 1, 2010, 01:04.

            Comment

            • konijn_
              Hellband maintainer
              • Jul 2007
              • 367

              #7
              Originally posted by Pete Mack
              BTW: if you are using the very latest Makefiles, you will have something called Makefile.src
              This contains VERSION and COPYRIGHT variables, which are used for in appropriate places in the executable and plist.


              This holds for the current version of Makefile.osx. If you are using older versions (pre-3.0.8) of main-crb.c and Makefile.osx, you are on your own.

              EDIT:
              One more thing: if you have a replacement icon for the Finder, replace Angband.icns in the osx folder. Use as large as possible a bitmap to create OSX icons. (They render much better in the dock and in the finder as large icons.)
              Well, hmm,

              I honestly tried, but the current set up was too confusing for me :\
              so I compiled what I had ( an ancient NPP main-crb.c ) and stole from Angband what did not work ( like open savefiles ).

              After playing further with the mac build, I found one more minor problem, probably because of that, I keep getting
              setuid(): cannot set permissions correctly!

              For the icons, I think I am set, although my personal setting of the dock shows rather small icons

              T.
              * Are you ready for something else ? Hellband 0.8.8 is out! *

              Comment

              • Pete Mack
                Prophet
                • Apr 2007
                • 6883

                #8
                Appears there needs to be a wiki page for the build system...

                1. Makefile.src contains all the information common to all builds (source files, version info, etc. You can trim down the other Makefiles by a lot using this, and it can reduce build errors dramatically.)
                2. Makefile.inc is automatically regenerated dependency info.
                Use
                $ make -f Makefile.osx depgen
                $ mv Makefile.new Makefile.inc
                (for instance)
                3. .../mk/*, configure*, and the *.m4 files are used for automake stuff on Linux. You don't need it.
                If you want a barebones *NIX build (gcu and X11), Makefile.std replaces all that stuff fairly reliably.

                Comment

                Working...
                😀
                😂
                🥰
                😘
                🤢
                😎
                😞
                😡
                👍
                👎