64 Bit Build

2008-06-04
2013-06-12
  • leigh stewart

    leigh stewart - 2008-06-04

    I need to use 64 bit cmd.exe instances with Console.

    It seems that whenever I try to start a 64bit cmd.exe in Console I always end up with a 32 bit instance instead.

    Anyway idea why?

    Any ideas how I might get around the issue?

    How hard would it be to build a 64 bit Console?

    I need 64 bit cmd.exe's because I run build scripts that assume the characteristics of the cmd.exe they are run from, and must be run in 64 bit environments.

    Thanks

     
    • Marko Bozikovic

      Marko Bozikovic - 2008-06-06

      I have no access to 64-bit Windows, so I don't know why 32-bit cmd.exe is started. Maybe becuase Console itself is a 32-bit process.

      As for a 64-bit build of Console, that shouldn't be much of a problem, but there are some issues that need to be resolved and tested.

      The first issue is that I have to buy a new machine :)

       
    • Humangenom

      Humangenom - 2008-08-14

      You could try to use
      c:\windows\sysnative\cmd.exe
      to start a 65 bit shell.

       
    • Trey Valenta

      Trey Valenta - 2008-09-16

      The sysnative directory doesn't exist on Win2k3 systems. My understanding is that Visual Studio on a 32bit machine can cross-compile and build AMD64 targets (you just can't test them), and as someone who could really use a 64bit version of Console, I'd be happy to test it. Reason being -- I have a few Win2k3 x64 systems that I manage via remote desktop. It's petty, but without the 64bit version I have to pull up cmd.exe to run "logoff.exe".

       
    • Ronald Blaschke

      Ronald Blaschke - 2008-12-03

      Just to let you guys know: The latest source (b141) seems to build and run quite fine on x64.

       
      • leigh stewart

        leigh stewart - 2008-12-03

        awesome!

         
    • leigh stewart

      leigh stewart - 2008-12-04

      now, what are the odds we get a regular x64 build goin?

       
    • Ronald Blaschke

      Ronald Blaschke - 2008-12-04

      Well, anyone interested can have my "unofficial" binaries.  If you'd like, I can bundle them up and provide a link here.

       
    • Ronald Blaschke

      Ronald Blaschke - 2008-12-06

      I have now put up my Console binaries for x64.  The link is <http://www.rblasch.org/projects/console/Console-x64-2.00b141-Beta.zip>.  Note that the binaries are not heavily tested, but I've come across no issues in my daily use.  Just remember that your mileage may vary, though.

      Many thanks to Marko for making this fine program.  I'm pretty impressed that it compiles quite painless on x64.

      Ron

       
      • Sherwin

        Sherwin - 2008-12-06

        I get an error popup w/ the folllowing:

        "Failed to open cygwin tab!
        The process could still be running (use the TaskManager to find it and end it)"

        Any clues? Thanks in advance.

        Note: Opened it as an administrator.

         
        • Ronald Blaschke

          Ronald Blaschke - 2008-12-06

          The only time I have ever seen this, and that's not x64 specific, is with a wrong tab configuration, when the "Shell" command can't be executed.  Is your cygwin tab configuration working with the x86 Console binaries?

           
          • leigh stewart

            leigh stewart - 2008-12-07

            thanks rblasch. it would be nice to get this building regularly too

             
      • Kirill

        Kirill - 2009-01-29

        Ronald,

        would you compare what you had to do to produce x64 build with my steps, described below? Well... besides getting WTL, TabbingFramework, Boost.

        What I did in addition to the usual build:
        - got FreeImage 3.11 [because otherwise I got link errors and thought that I need to build 64-bit version of it];

        - changed Source/LibOpenJPEG/opj_includes.h [to workaround the use of _asm in OpenJPEG].
          /* MSVC does not have lrintf */
          #ifdef _MSC_VER
        + #if _MSC_VER < 1400
          static INLINE long lrintf(float f){
              int i;
         
              _asm{
                  fld f
                  fistp i
              };
         
              return i;
          }
        + #else
        +     #define    lrintf(flt)        ((long int)(flt))
          #endif /* _MSC_VER < 1400 */
          #endif

        - need to build in Release (as described http://social.msdn.microsoft.com/Forums/en-US/vcgeneral/thread/c1d855fa-43d8-482a-8399-3e0bab63d267/\)

        - modify architectureType in Console.exe.manifest to read "*"

        Without the latter two, my build crashes in Vista64's ntdll.dll with exception code 0xc000007b @ 0x1d28.

        Somewhat interesting post that I came accross during my search for a solution is by Ben Anderson MSFT at http://social.msdn.microsoft.com/forums/en-US/vcgeneral/thread/1ff3c0f4-e2e9-48af-a7c8-d1d9cbd88231

        For everybody with real x64 systems, the version with a different workaround is available on http://kirill.ca

        --
        Kirill.

         
        • Ronald Blaschke

          Ronald Blaschke - 2009-01-31

          > would you compare what you had to do to produce x64 build with my steps,
          > described below? Well... besides getting WTL, TabbingFramework, Boost.

          Sure.

          > What I did in addition to the usual build:
          > - got FreeImage 3.11 [because otherwise I got link errors and thought that I
          > need to build 64-bit version of it];

          Yep.  A process (including DLLs) must be all 32-bit or 64-bit.

          > - changed Source/LibOpenJPEG/opj_includes.h [to workaround the use of _asm in OpenJPEG].

          Did the same thing.

          > - need to build in Release (as described
          > http://social.msdn.microsoft.com/Forums/en-US/vcgeneral/thread/c1d855fa-43d8-482a-8399-3e0bab63d267/\)
          > - modify architectureType in Console.exe.manifest to read "*"
          > Without the latter two, my build crashes in Vista64's ntdll.dll with exception code 0xc000007b @ 0x1d28.

          Yes, this happens when a binary does not properly declare its dependencies in the manifest.
          I just deleted the source manifest file.  The one created by the linker is good enough.
          Here's some information on Side-by-side Assemblies (which the manifest is
          about): http://msdn.microsoft.com/en-us/library/dd408052%28VS.85%29.aspx

           
    • Ronald Blaschke

      Ronald Blaschke - 2009-01-31

      Here are the x64 binaries for 2.00b142: http://www.rblasch.org/projects/console/Console-x64-2.00b142-Beta.zip

      I haven't tested them myself yet, though.

       
      • Shane

        Shane - 2009-02-05

        Thanks, those bins work for me on Vista x64.  No issues yet.

         

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks