digitalmars.D - trouble getting started with D
- Andrew Marlow (2/2) Mar 18 2010 I would like to start using D but am running into some problems. I am us...
- bearophile (4/5) Mar 18 2010 ldc is a D1 compiler that comes with Tango standard lib, so it doesn't h...
- Andrew Marlow (2/6) Mar 18 2010 Well, thanks for that, at least I know now. But I am a bit peeved. What ...
- Steven Schveighoffer (10/19) Mar 18 2010 It does. Tango is an alternative standard library, and in order to avoi...
- bearophile (4/5) Mar 18 2010 Please, ask questions like those ones on the learn newsgroup.
- grauzone (3/9) Mar 18 2010 When will it be renamed to "D.users"?
- Nick Sabalausky (3/12) Mar 18 2010 Of course not. "D.bikeshed" would be much better!
- Paul D. Anderson (9/27) Mar 18 2010 I don't care what you call it, as long as it is one of the following:
- Lars T. Kyllingstad (15/22) Mar 18 2010 Back in the days, some people found D1's standard library, Phobos (aka.
- qwerty (2/13) Mar 18 2010 Personally I never had any real problems with there being two standard l...
- Lars T. Kyllingstad (11/14) Mar 18 2010 Hi!
- Andrew Marlow (2/12) Mar 18 2010 Wow, I tried this and it works. Many thanks!
- Walter Bright (3/15) Mar 18 2010 Thanks, I added this information to the install page:
- Lars T. Kyllingstad (4/22) Mar 19 2010 For completeness' sake you should probably also add a 'sudo' in front of...
- Walter Bright (2/4) Mar 19 2010 Ok.
I would like to start using D but am running into some problems. I am using 64 bit ubuntu, Karmic Koala. I tried using the GNU D compiler (gdc) but even a hello world type program core dumps in the print statement. So I tried ldc but it complains that it can't import std.stdio. So I tried the Digital Mars compiler and I couldn't get it to install. The deb file says it is for the wrong architecture. Presumably it is for 32 bit and I am on 64 so no go. Where do I go from here? I would really like to try it? If there is a 64 bit install for ubuntu can someone post a URL please?
Mar 18 2010
Andrew Marlow Wrote:So I tried ldc but it complains that it can't import std.stdio.<ldc is a D1 compiler that comes with Tango standard lib, so it doesn't have the std.stdio. You have to use Tango I/O functions. Bye, bearophile
Mar 18 2010
bearophile Wrote:Andrew Marlow Wrote:Well, thanks for that, at least I know now. But I am a bit peeved. What is the point in calling something 'std' if it is not standard. I am used to 'std' meaning 'it comes with the compiler environment'.So I tried ldc but it complains that it can't import std.stdio.<ldc is a D1 compiler that comes with Tango standard lib, so it doesn't have the std.stdio. You have to use Tango I/O functions.
Mar 18 2010
On Thu, 18 Mar 2010 08:43:40 -0400, Andrew Marlow <marlow.andrew googlemail.com> wrote:bearophile Wrote:It does. Tango is an alternative standard library, and in order to avoid naming conflicts with D's standard library Phobos, the root package is named tango instead of std. LDC is an alternative compiler to the D reference compiler, their choice of Tango as a standard library cannot be controlled by D or the spec. It is a constant source of confusion and contention that there are "two" standard libraries. -SteveAndrew Marlow Wrote:Well, thanks for that, at least I know now. But I am a bit peeved. What is the point in calling something 'std' if it is not standard. I am used to 'std' meaning 'it comes with the compiler environment'.So I tried ldc but it complains that it can't import std.stdio.<ldc is a D1 compiler that comes with Tango standard lib, so it doesn't have the std.stdio. You have to use Tango I/O functions.
Mar 18 2010
Andrew Marlow:Well, thanks for that, at least I know now. But I am a bit peeved. What is the point in calling something 'std' if it is not standard. I am used to 'std' meaning 'it comes with the compiler environment'.Please, ask questions like those ones on the learn newsgroup. Bye, bearophile
Mar 18 2010
bearophile wrote:Andrew Marlow:When will it be renamed to "D.users"? Also we can rename this newsgroup to "D.bikeshedding".Well, thanks for that, at least I know now. But I am a bit peeved. What is the point in calling something 'std' if it is not standard. I am used to 'std' meaning 'it comes with the compiler environment'.Please, ask questions like those ones on the learn newsgroup.Bye, bearophile
Mar 18 2010
"grauzone" <none example.net> wrote in message news:hntpft$1ddq$1 digitalmars.com...bearophile wrote:Of course not. "D.bikeshed" would be much better!Andrew Marlow:When will it be renamed to "D.users"? Also we can rename this newsgroup to "D.bikeshedding".Well, thanks for that, at least I know now. But I am a bit peeved. What is the point in calling something 'std' if it is not standard. I am used to 'std' meaning 'it comes with the compiler environment'.Please, ask questions like those ones on the learn newsgroup.
Mar 18 2010
Nick Sabalausky Wrote:"grauzone" <none example.net> wrote in message news:hntpft$1ddq$1 digitalmars.com...I don't care what you call it, as long as it is one of the following: D.shedforbikes D.greenbikeshed D.notbluebikeshed D.velocipedeshed D.dicycleshed (for those pedantic about mixing Greek and Latin terms) D.alliaskisforyoutodoitmywaywhatcouldbesimpler Paulbearophile wrote:Of course not. "D.bikeshed" would be much better!Andrew Marlow:When will it be renamed to "D.users"? Also we can rename this newsgroup to "D.bikeshedding".Well, thanks for that, at least I know now. But I am a bit peeved. What is the point in calling something 'std' if it is not standard. I am used to 'std' meaning 'it comes with the compiler environment'.Please, ask questions like those ones on the learn newsgroup.
Mar 18 2010
Andrew Marlow wrote:bearophile Wrote:Back in the days, some people found D1's standard library, Phobos (aka. the std namespace), a bit too simplistic, and so they went and created an alternative "standard library", Tango: http://www.dsource.org/projects/tango Some see this as a problem, but personally I don't agree. If you prefer a simple, C-like standard library, use Phobos. If you prefer a more comprehensive Java-like standard library, use Tango. (Before, you could even use both together, with the 'tangobos' package, which I believe is outdated now.) Or just switch to D2, for which the "problem" doesn't exist. There is only Phobos2, and it has become a lot more extensive than Phobos1. And you can expect major improvements to Phobos over the next few months since the language itself now has been frozen. -LarsAndrew Marlow Wrote:Well, thanks for that, at least I know now. But I am a bit peeved. What is the point in calling something 'std' if it is not standard. I am used to 'std' meaning 'it comes with the compiler environment'.So I tried ldc but it complains that it can't import std.stdio.<ldc is a D1 compiler that comes with Tango standard lib, so it doesn't have the std.stdio. You have to use Tango I/O functions.
Mar 18 2010
Lars T. Kyllingstad Wrote:Back in the days, some people found D1's standard library, Phobos (aka. the std namespace), a bit too simplistic, and so they went and created an alternative "standard library", Tango: http://www.dsource.org/projects/tango Some see this as a problem, but personally I don't agree. If you prefer a simple, C-like standard library, use Phobos. If you prefer a more comprehensive Java-like standard library, use Tango. (Before, you could even use both together, with the 'tangobos' package, which I believe is outdated now.)Personally I never had any real problems with there being two standard libraries, if only all projects on dsource would have chosen the lib I am familiar with ;)
Mar 18 2010
Andrew Marlow wrote:I would like to start using D but am running into some problems. I am using 64 bit ubuntu, Karmic Koala. I tried using the GNU D compiler (gdc) but even a hello world type program core dumps in the print statement. So I tried ldc but it complains that it can't import std.stdio. So I tried the Digital Mars compiler and I couldn't get it to install. The deb file says it is for the wrong architecture. Presumably it is for 32 bit and I am on 64 so no go. Where do I go from here? I would really like to try it? If there is a 64 bit install for ubuntu can someone post a URL please?Hi! The 32-bit DMD compiler works fine on 64-bit Ubuntu, even though the .deb file is marked as i386. Try this: dpkg -i --force-architecture dmd_2.041-0_i386.deb Note that since the compiler is 32-bit, it only works with 32-bit libraries. You must therefore install the following packages: sudo apt-get install gcc-multilib g++-multilib libc6-i386 libc6-dev-i386 In addition, you might like to install the ia32-libs package, as it contains 32-bit versions of a bunch of libraries. -Lars
Mar 18 2010
Lars T. Kyllingstad Wrote:Where do I go from here? I would really like to try it? If there is a 64 bit install for ubuntu can someone post a URL please?The 32-bit DMD compiler works fine on 64-bit Ubuntu, even though the .deb file is marked as i386. Try this: dpkg -i --force-architecture dmd_2.041-0_i386.deb Note that since the compiler is 32-bit, it only works with 32-bit libraries. You must therefore install the following packages: sudo apt-get install gcc-multilib g++-multilib libc6-i386 libc6-dev-i386Wow, I tried this and it works. Many thanks!
Mar 18 2010
Lars T. Kyllingstad wrote:The 32-bit DMD compiler works fine on 64-bit Ubuntu, even though the .deb file is marked as i386. Try this: dpkg -i --force-architecture dmd_2.041-0_i386.deb Note that since the compiler is 32-bit, it only works with 32-bit libraries. You must therefore install the following packages: sudo apt-get install gcc-multilib g++-multilib libc6-i386 libc6-dev-i386 In addition, you might like to install the ia32-libs package, as it contains 32-bit versions of a bunch of libraries.Thanks, I added this information to the install page: http://www.digitalmars.com/d/2.0/dmd-linux.html#installation
Mar 18 2010
Walter Bright wrote:Lars T. Kyllingstad wrote:For completeness' sake you should probably also add a 'sudo' in front of 'dpkg'. I forgot that in my post. -LarsThe 32-bit DMD compiler works fine on 64-bit Ubuntu, even though the .deb file is marked as i386. Try this: dpkg -i --force-architecture dmd_2.041-0_i386.deb Note that since the compiler is 32-bit, it only works with 32-bit libraries. You must therefore install the following packages: sudo apt-get install gcc-multilib g++-multilib libc6-i386 libc6-dev-i386 In addition, you might like to install the ia32-libs package, as it contains 32-bit versions of a bunch of libraries.Thanks, I added this information to the install page: http://www.digitalmars.com/d/2.0/dmd-linux.html#installation
Mar 19 2010
Lars T. Kyllingstad wrote:For completeness' sake you should probably also add a 'sudo' in front of 'dpkg'. I forgot that in my post.Ok.
Mar 19 2010