Thread: 32 bit to 64 bit Ubuntu

  1. #1
    Hail to the king, baby. Akkernight's Avatar
    Join Date
    Oct 2008
    Location
    Faroe Islands
    Posts
    717

    Question 32 bit to 64 bit Ubuntu

    Hello
    I'm thinking about getting Ubuntu 64bit, 'cause I just saw that my PC supports 64bit. Now, I already have installed Ubuntu 32bit, is there any way to just change it to 64 bit without having to remove it first?
    And if I have to remove it, how do I do that? I have partioned(?) my HDD, if that plays any role :P
    Oh, and one last thing... I stumbled on a thread saying something about programming in 64 bit is harder or something... So, is it massive headache to program in 64 bit?
    Thanks in advance.
    Currently research OpenGL

  2. #2
    Kernel hacker
    Join Date
    Jul 2007
    Location
    Farncombe, Surrey, England
    Posts
    15,677
    As long as you have a relatively standard OS setup, you can realistically just recompile the OS as 64-bit instead of 32-bit. Of course, you need a 64-bit cross compiler, but I think that for most distros, the gcc that gets distributed is a 64-bit version of the compiler. Try compiling a small C program with -m64 and see if the compiler says something like "don't know what -m64 means or -m64 invalid option in this compiler". If it compiles correctly, you should be able to compile the OS.

    Once the OS is compiled, you should be able to add the new 64-bit kernel to your boot menu (grub or lilo or whatever boot-loader you choose to use). To begin with, make sure that you keep your original 32-bit kernel in place, as you may want to go back to it if there's some problem(s) with the new kernel [this applies when compiling a new 32-bit kernel too, of course].

    It should also be perfectly possible to install a 64-bit OS on your existing system as an "upgrade" - it shouldn't really matter than you are upgrading version X.Y.Z-32 to X.Y.Z-64 instead of to X.Y+1.Z or some such.

    --
    Mats
    Compilers can produce warnings - make the compiler programmers happy: Use them!
    Please don't PM me for help - and no, I don't do help over instant messengers.

  3. #3
    Cat without Hat CornedBee's Avatar
    Join Date
    Apr 2003
    Posts
    8,895
    While this is possible, it's not in any way supported by the distro, so you won't get the integrated environment of your distro - it's basically linux from scratch.

    But if you have a bit of space on some hard disk left, you can multi-boot easily.
    All the buzzt!
    CornedBee

    "There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code."
    - Flon's Law

  4. #4
    and the hat of sweating
    Join Date
    Aug 2007
    Location
    Toronto, ON
    Posts
    3,545
    Recompiling the Kernel... What about all the programs? Shouldn't they be 64-bit too?

    Before doing anything, I'd make sure to have a complete backup of the hard drive in case something gets messed up.
    "I am probably the laziest programmer on the planet, a fact with which anyone who has ever seen my code will agree." - esbo, 11/15/2008

    "the internet is a scary place to be thats why i dont use it much." - billet, 03/17/2010

  5. #5
    Hail to the king, baby. Akkernight's Avatar
    Join Date
    Oct 2008
    Location
    Faroe Islands
    Posts
    717
    Distro o.O? What's that?
    And there is a Ubuntu 64 version... Is it a scratch version?
    And I have almost nothing on the Ubuntu partion of the HDD, so I'll just get what I have back, to 64bit.
    Currently research OpenGL

  6. #6
    and the hat of sweating
    Join Date
    Aug 2007
    Location
    Toronto, ON
    Posts
    3,545
    Why do you want to go to a 64-bit OS anyways? Do you have more than 4GB of RAM?
    "I am probably the laziest programmer on the planet, a fact with which anyone who has ever seen my code will agree." - esbo, 11/15/2008

    "the internet is a scary place to be thats why i dont use it much." - billet, 03/17/2010

  7. #7
    Hail to the king, baby. Akkernight's Avatar
    Join Date
    Oct 2008
    Location
    Faroe Islands
    Posts
    717
    I have 4GB's of RAM... I just wanted to try it, but when I got to the partitioning of the install, it wouldn't let me use manual, just said something about some root thing... And the guided just didn't do anything :/
    Currently research OpenGL

  8. #8
    Registered User
    Join Date
    Dec 2006
    Location
    Canada
    Posts
    3,229
    You won't feel any difference except the loads of problems that come with 64-bit (incompatibilities etc). It won't give you a 100% speed boost contrarily to popular belief. If you don't have a clear reason why you need 64-bit, don't switch.

    I switched from 32-bit to 64-bit a few months ago and there is absolutely no noticeable increase in speed except in very special cases (programs that use lots of 64-bit data types AND are bound by the CPU. Probably not your everyday programs).

  9. #9
    C++ Witch laserlight's Avatar
    Join Date
    Oct 2003
    Location
    Singapore
    Posts
    28,412
    Quote Originally Posted by cyberfish
    I switched from 32-bit to 64-bit a few months ago and there is absolutely no noticeable increase in speed except in very special cases (programs that use lots of 64-bit data types AND are bound by the CPU. Probably not your everyday programs).
    Heh, I know a friend who switched to 64-bit primarily for the speed boost for running chess playing programs.
    Quote Originally Posted by Bjarne Stroustrup (2000-10-14)
    I get maybe two dozen requests for help with some sort of programming or design problem every day. Most have more sense than to send me hundreds of lines of code. If they do, I ask them to find the smallest example that exhibits the problem and send me that. Mostly, they then find the error themselves. "Finding the smallest program that demonstrates the error" is a powerful debugging tool.
    Look up a C++ Reference and learn How To Ask Questions The Smart Way

  10. #10
    Registered User
    Join Date
    Dec 2006
    Location
    Canada
    Posts
    3,229
    Hmm. Am I that friend? =)

  11. #11
    C++ Witch laserlight's Avatar
    Join Date
    Oct 2003
    Location
    Singapore
    Posts
    28,412
    Okay, now I know two friends like that, one of whom I have yet to meet in person
    Quote Originally Posted by Bjarne Stroustrup (2000-10-14)
    I get maybe two dozen requests for help with some sort of programming or design problem every day. Most have more sense than to send me hundreds of lines of code. If they do, I ask them to find the smallest example that exhibits the problem and send me that. Mostly, they then find the error themselves. "Finding the smallest program that demonstrates the error" is a powerful debugging tool.
    Look up a C++ Reference and learn How To Ask Questions The Smart Way

  12. #12
    Registered User
    Join Date
    Dec 2006
    Location
    Canada
    Posts
    3,229
    Ah, I am on the wrong side of the Earth . Is your friend a chess master? The strongest program playing on a modern 32-bit machine is already a few hundred Elo points stronger than the world champion ... =), or is s/he a chess programmer, too? I suppose not many people would change their OS for a chess engine?

    I need to rely on 64-bit to get the last few drops of strength because my program plays at throwing-stones-randomly level.

  13. #13
    C++ Witch laserlight's Avatar
    Join Date
    Oct 2003
    Location
    Singapore
    Posts
    28,412
    Quote Originally Posted by cyberfish
    I need to rely on 64-bit to get the last few drops of strength because my program plays at throwing-stones-randomly level.
    hmm... sounds like you need to work on the algorithms instead
    Quote Originally Posted by Bjarne Stroustrup (2000-10-14)
    I get maybe two dozen requests for help with some sort of programming or design problem every day. Most have more sense than to send me hundreds of lines of code. If they do, I ask them to find the smallest example that exhibits the problem and send me that. Mostly, they then find the error themselves. "Finding the smallest program that demonstrates the error" is a powerful debugging tool.
    Look up a C++ Reference and learn How To Ask Questions The Smart Way

  14. #14
    Cat without Hat CornedBee's Avatar
    Join Date
    Apr 2003
    Posts
    8,895
    Having a 64-bit kernel and 32-bit userland can be a pretty good combination if you have more than 4 gigs of RAM and run many memory-hungry programs in parallel, for example compilation of big programs. While every process still only gets 2 gigs of address space, it can actually map it all and another program can, too, and neither has to swap. Ubuntu might even support such a setup.

    Distro is short for distribution and refers to things like Ubuntu, Fedora Core, Debian, etc. - they pack the GNU/Linux core together with various tools (usually an installer, a package manager, and a configuration manager), many, many user programs, check that they work together well, and distribute the whole thing. They are the reason that it doesn't take an absolute expert to install and run a Linux system.
    All the buzzt!
    CornedBee

    "There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code."
    - Flon's Law

  15. #15
    Kernel hacker
    Join Date
    Jul 2007
    Location
    Farncombe, Surrey, England
    Posts
    15,677
    Quote Originally Posted by cyberfish View Post
    You won't feel any difference except the loads of problems that come with 64-bit (incompatibilities etc). It won't give you a 100% speed boost contrarily to popular belief. If you don't have a clear reason why you need 64-bit, don't switch.
    Whilst I agree in principle, I would say that the drivers problems are MUCH more of a "Windows 64-bit problem" than a "64-bit problem". I think you'd have to hunt for quite some time to find a driver that doesn't work on 64-bit in Linux, as all the standard drivers are regularly compiled for Linux in both 32- and 64-bit since about 2002 when 64-bit came into the x86 world.

    --
    Mats
    Compilers can produce warnings - make the compiler programmers happy: Use them!
    Please don't PM me for help - and no, I don't do help over instant messengers.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. 32 bit or 64 bit allignment ?! gcc options??
    By mynickmynick in forum C Programming
    Replies: 3
    Last Post: 07-29-2008, 02:43 AM
  2. If the RGB color is (64, 64, 255), change it to (64, 255, 64).
    By Grayson_Peddie in forum C# Programming
    Replies: 2
    Last Post: 06-14-2003, 04:26 PM
  3. 64 bit variables
    By Yawgmoth in forum C Programming
    Replies: 11
    Last Post: 12-19-2002, 01:55 PM
  4. 16 bit or 32 bit
    By Juganoo in forum C Programming
    Replies: 9
    Last Post: 12-19-2002, 07:24 AM
  5. 64 bit
    By stormbringer in forum C Programming
    Replies: 2
    Last Post: 10-29-2002, 06:51 PM