Jump to page: 1 28  
Page
Thread overview
Well, it's been a total failure
Sep 12, 2010
Walter Bright
Sep 12, 2010
Robert Clipsham
Sep 12, 2010
Lutger
Sep 13, 2010
Jesse Phillips
Sep 13, 2010
dsimcha
Sep 13, 2010
chmod+x
Sep 13, 2010
chmod+x
Sep 13, 2010
Andrej Mitrovic
Sep 13, 2010
BCS
Sep 13, 2010
retard
Sep 13, 2010
Justin Johansson
Sep 13, 2010
Justin Johansson
Sep 13, 2010
Andrej Mitrovic
Sep 13, 2010
Justin Johansson
Sep 13, 2010
Robert Clipsham
Sep 13, 2010
Andrej Mitrovic
Sep 13, 2010
Jonathan M Davis
Sep 13, 2010
Russel Winder
Sep 13, 2010
Walter Bright
Sep 13, 2010
Andrej Mitrovic
Sep 14, 2010
Russel Winder
Sep 13, 2010
dsimcha
Sep 13, 2010
Walter Bright
Sep 13, 2010
Daniel Gibson
Sep 14, 2010
Walter Bright
Sep 14, 2010
Walter Bright
Sep 14, 2010
Walter Bright
Sep 14, 2010
Walter Bright
Sep 14, 2010
Walter Bright
Sep 14, 2010
chmod+x
Sep 15, 2010
Stephan
Sep 14, 2010
Walter Bright
Sep 14, 2010
Denis Koroskin
Sep 14, 2010
retard
Sep 14, 2010
Nick Sabalausky
Sep 14, 2010
Walter Bright
Sep 14, 2010
retard
Sep 14, 2010
Walter Bright
Sep 15, 2010
Jonathan M Davis
Sep 15, 2010
BCS
Sep 14, 2010
Russel Winder
Sep 13, 2010
Andrej Mitrovic
Sep 13, 2010
Brad Roberts
Sep 13, 2010
Jacob Carlborg
Sep 12, 2010
Spacen Jasset
Sep 12, 2010
Daniel Gibson
Sep 12, 2010
Russel Winder
Sep 12, 2010
Walter Bright
Sep 16, 2010
Ellery Newcomer
Re: [OT] File type on UNIX
Sep 20, 2010
Michel Fortin
September 11, 2010
 I'm running Fedora 13.x86_64 and I've tried various ways of getting a
D compiler to work. None have succeeded.

1. a. I can't install dmd 2.048:

        # rpm -Uvh /downloads/dmd-2.048-0.i386.rpm
        error: Failed dependencies:
           gcc(x86-32) >= 4.2.3 is needed by dmd-2.048-0.i386
   I don't know what package will satisfy this dependency.
   b. dmd is a closed compiler. Not good. I'm really not comfortable
running a compiler for which I don't have access to the source. The
risk of undetected malware is too great.
   c. So, I give up on dmd.

2. I can't run ldc because
   a. The ldc RPM requires Tango, even though this is not an RPM
dependency for ldc, i.e. you can install ldc without any errors.
   b. The installation instructions for Fedora on the LDC web site are
incorrect. "yum install ldc" works, but "yum install tango" doesn't.
"yum install tango-devel" is the correct command. (This is the first
time I've heard of <pkg>-devel without a corresponding <pkg>.)
   c. After I've gotten everything installed, it still doesn't work. I get
        $ ldc hello.d
        hello.d(5): Error: module stdio cannot read file 'std/stdio.d'
   d. OK, so I link /usr/include/d/tango/stdc to
/usr/include/d/tango/std, but it still doesn't work. I get:
        $ ldc hello.d
        hello.d(8): Error: undefined identifier writefln
        hello.d(8): Error: function expected before (), not writefln
of type int
   e. ldc only supports D v1.
   f. All of this is too much for me. I give up on ldc.

3. I can't get gdc to compile.
   a. First I have to get gcc-4.4.4 to compile, but that requires a 4
year old version of automake. I have to downgrade.
   b. After that's fixed, I'm still running into errors that prevent a
build. The errors change from changeset to changeset. So, I'm giving
up on gdc.

Getting a D compiler to run on x86_64 Linux is too hard. I'm giving up on D.

I'm posting this message not as a plea for help, but to illustrate how hard it is to get D to run on Fedora.x86_64. The success of D depends on high quality, open source compilers being available (my belief), and so far, D doesn't seem to be mature enough to be considered, at least on Fedora.x86_64.

But, on the plus side, the existence of the book "The D Programming Language" is a major step in getting D accepted as a serious system programming language. Maybe installation will improve and D will move forward.

--- Vladimir

-- 
Vladimir G. Ivanovic                            http://www.leonora.org +1 650 450 4101                                       vladimir@acm.org




September 12, 2010
Vladimir G. Ivanovic wrote:
>  I'm running Fedora 13.x86_64 and I've tried various ways of getting a
> D compiler to work. None have succeeded.
> 
> 1. a. I can't install dmd 2.048:
> 
>         # rpm -Uvh /downloads/dmd-2.048-0.i386.rpm
>         error: Failed dependencies:
>            gcc(x86-32) >= 4.2.3 is needed by dmd-2.048-0.i386
>    I don't know what package will satisfy this dependency.
>    b. dmd is a closed compiler. Not good. I'm really not comfortable
> running a compiler for which I don't have access to the source. The
> risk of undetected malware is too great.
>    c. So, I give up on dmd.

Complete source code comes with dmd. Try downloading:

http://www.digitalmars.com/d/1.0/changelog.html
http://ftp.digitalmars.com/dmd.1.063.zip

http://www.digitalmars.com/d/2.0/changelog.html
http://ftp.digitalmars.com/dmd.2.048.zip

There are several people working on the source. Lots of D users compile their own versions of dmd. The complete dmd source code is also available here:

http://www.dsource.org/projects/dmd/browser/trunk/
September 12, 2010
On 11/09/10 23:52, Vladimir G. Ivanovic wrote:
>   I'm running Fedora 13.x86_64 and I've tried various ways of getting a
> D compiler to work. None have succeeded.
>
> 1. a. I can't install dmd 2.048:
>
>          # rpm -Uvh /downloads/dmd-2.048-0.i386.rpm
>          error: Failed dependencies:
>             gcc(x86-32)>= 4.2.3 is needed by dmd-2.048-0.i386
>     I don't know what package will satisfy this dependency.

I've never used fedora, so I'll skip anything further about rpms.

>     b. dmd is a closed compiler. Not good. I'm really not comfortable
> running a compiler for which I don't have access to the source. The
> risk of undetected malware is too great.

Only the backend is closed, and the source is still available. The front end is dual licensed under the GPL and artistic licenses:

http://www.dsource.org/projects/dmd/browser/trunk/src

>     c. So, I give up on dmd.
>
> 2. I can't run ldc because
>     a. The ldc RPM requires Tango, even though this is not an RPM
> dependency for ldc, i.e. you can install ldc without any errors.

Again, I know nothing of RPMs/Fedora, but I can say ldc doesn't require tango - it's just a lot nicer to use if you have a standard library :)

>     b. The installation instructions for Fedora on the LDC web site are
> incorrect. "yum install ldc" works, but "yum install tango" doesn't.
> "yum install tango-devel" is the correct command. (This is the first
> time I've heard of<pkg>-devel without a corresponding<pkg>.)
>     c. After I've gotten everything installed, it still doesn't work. I get
>          $ ldc hello.d
>          hello.d(5): Error: module stdio cannot read file 'std/stdio.d'

std is part of phobos, and phobos does not support ldc. A hello world using tango would look like this:
---
import tango.io.Stdout;

void main() {
	Stdout("Hello World!").newline;
}
----
>     d. OK, so I link /usr/include/d/tango/stdc to
> /usr/include/d/tango/std, but it still doesn't work. I get:
>          $ ldc hello.d
>          hello.d(8): Error: undefined identifier writefln
>          hello.d(8): Error: function expected before (), not writefln
> of type int

Again, phobos doesn't support ldc.

>     e. ldc only supports D v1.

Correct.

>     f. All of this is too much for me. I give up on ldc.
>
> 3. I can't get gdc to compile.
>     a. First I have to get gcc-4.4.4 to compile, but that requires a 4
> year old version of automake. I have to downgrade.
>     b. After that's fixed, I'm still running into errors that prevent a
> build. The errors change from changeset to changeset. So, I'm giving
> up on gdc.

I've only used gdc once, and it was a long time ago - I can't help here. Even then I do know that dmd is the only D compiler that supports D2 currently. Gdc is getting there.

> Getting a D compiler to run on x86_64 Linux is too hard. I'm giving up
> on D.

Been there, done that :/

> I'm posting this message not as a plea for help, but to illustrate how
> hard it is to get D to run on Fedora.x86_64. The success of D depends
> on high quality, open source compilers being available (my belief),
> and so far, D doesn't seem to be mature enough to be considered, at
> least on Fedora.x86_64.

This will change most likely when dmd gets 64 bit support - this is progressing rapidly.
-- 
Robert
http://octarineparrot.com/
September 12, 2010
Vladimir G. Ivanovic wrote:

>  I'm running Fedora 13.x86_64 and I've tried various ways of getting a
> D compiler to work. None have succeeded.
> 
> 1. a. I can't install dmd 2.048:
> 
>         # rpm -Uvh /downloads/dmd-2.048-0.i386.rpm
>         error: Failed dependencies:
>            gcc(x86-32) >= 4.2.3 is needed by dmd-2.048-0.i386
>    I don't know what package will satisfy this dependency.

You need the i686 versions of some packages, probably start with libgcc (yum install libgcc.i686) and glibc, I don't remember which exactly are required. I have dmd running on 64 bit fedora just fine, it can work. There is also a 64-bit dmd in the making which should solve all those problems.

>    b. dmd is a closed compiler. Not good. I'm really not comfortable
> running a compiler for which I don't have access to the source. The
> risk of undetected malware is too great.

dmd is not open source, but not closed source either :) You can compile it from scratch, the source is included with the zip file.





September 12, 2010
On 11/09/2010 23:52, Vladimir G. Ivanovic wrote:
>   I'm running Fedora 13.x86_64 and I've tried various ways of getting a
> D compiler to work. None have succeeded.
>
> 1. a. I can't install dmd 2.048:
>
>          # rpm -Uvh /downloads/dmd-2.048-0.i386.rpm
>          error: Failed dependencies:
>             gcc(x86-32)>= 4.2.3 is needed by dmd-2.048-0.i386
>     I don't know what package will satisfy this dependency.
>     b. dmd is a closed compiler. Not good. I'm really not comfortable
> running a compiler for which I don't have access to the source. The
> risk of undetected malware is too great.
>     c. So, I give up on dmd.
>
> 2. I can't run ldc because
>     a. The ldc RPM requires Tango, even though this is not an RPM
> dependency for ldc, i.e. you can install ldc without any errors.
>     b. The installation instructions for Fedora on the LDC web site are
> incorrect. "yum install ldc" works, but "yum install tango" doesn't.
> "yum install tango-devel" is the correct command. (This is the first
> time I've heard of<pkg>-devel without a corresponding<pkg>.)
>     c. After I've gotten everything installed, it still doesn't work. I get
>          $ ldc hello.d
>          hello.d(5): Error: module stdio cannot read file 'std/stdio.d'
>     d. OK, so I link /usr/include/d/tango/stdc to
> /usr/include/d/tango/std, but it still doesn't work. I get:
>          $ ldc hello.d
>          hello.d(8): Error: undefined identifier writefln
>          hello.d(8): Error: function expected before (), not writefln
> of type int
>     e. ldc only supports D v1.
>     f. All of this is too much for me. I give up on ldc.
>
> 3. I can't get gdc to compile.
>     a. First I have to get gcc-4.4.4 to compile, but that requires a 4
> year old version of automake. I have to downgrade.
>     b. After that's fixed, I'm still running into errors that prevent a
> build. The errors change from changeset to changeset. So, I'm giving
> up on gdc.
>
> Getting a D compiler to run on x86_64 Linux is too hard. I'm giving up
> on D.
>
> I'm posting this message not as a plea for help, but to illustrate how
> hard it is to get D to run on Fedora.x86_64. The success of D depends
> on high quality, open source compilers being available (my belief),
> and so far, D doesn't seem to be mature enough to be considered, at
> least on Fedora.x86_64.
>
> But, on the plus side, the existence of the book "The D Programming
> Language" is a major step in getting D accepted as a serious system
> programming language. Maybe installation will improve and D will move
> forward.
>
> --- Vladimir
>

when installing an rpm package it's usually best to try yum localinstall /downloads/dmd-2.048-0.i386.rpm first

and yum will then go off and fetch the dependencies if (a) they are available and (b) they have been specified properly in the rpm package
September 12, 2010
On 09/11/2010 05:52 PM, Vladimir G. Ivanovic wrote:
>   I'm running Fedora 13.x86_64 and I've tried various ways of getting a
> D compiler to work. None have succeeded.
>
> 1. a. I can't install dmd 2.048:
>
>          # rpm -Uvh /downloads/dmd-2.048-0.i386.rpm
>          error: Failed dependencies:
>             gcc(x86-32)>= 4.2.3 is needed by dmd-2.048-0.i386
>     I don't know what package will satisfy this dependency.
>     b. dmd is a closed compiler. Not good. I'm really not comfortable
> running a compiler for which I don't have access to the source. The
> risk of undetected malware is too great.
>     c. So, I give up on dmd.

Apologies for the poor experience. It's because you don't have the 32-bit portability libraries on your 64-bit system. A 64-bit edition is in the works and would certainly make everything smoother.

In the meantime you'd need to run:

sudo apt-get install gcc-multilib libc6-i386 lib6-dev-i386
sudo apt-get install gcc-multilib
sudo apt-get install g++-multilib

We need to add these instructions to the download page.


Andrei
September 12, 2010
Andrei Alexandrescu schrieb:
> On 09/11/2010 05:52 PM, Vladimir G. Ivanovic wrote:
>>   I'm running Fedora 13.x86_64 and I've tried various ways of getting a
>> D compiler to work. None have succeeded.
>>
>> 1. a. I can't install dmd 2.048:
>>
>>          # rpm -Uvh /downloads/dmd-2.048-0.i386.rpm
>>          error: Failed dependencies:
>>             gcc(x86-32)>= 4.2.3 is needed by dmd-2.048-0.i386
>>     I don't know what package will satisfy this dependency.
>>     b. dmd is a closed compiler. Not good. I'm really not comfortable
>> running a compiler for which I don't have access to the source. The
>> risk of undetected malware is too great.
>>     c. So, I give up on dmd.
> 
> Apologies for the poor experience. It's because you don't have the 32-bit portability libraries on your 64-bit system. A 64-bit edition is in the works and would certainly make everything smoother.
> 
> In the meantime you'd need to run:
> 
> sudo apt-get install gcc-multilib libc6-i386 lib6-dev-i386
> sudo apt-get install gcc-multilib
> sudo apt-get install g++-multilib
> 
> We need to add these instructions to the download page.
> 
> 
> Andrei

The information is there:
http://www.digitalmars.com/d/2.0/dmd-linux.html#installation

However apt-get is Debian/Ubuntu specific, so these commands are not *directly* applicable for fedora.
However equivalent packages should be available on fedora and instead of apt-get install it's something like yum install gcc-multilib etc (or whatever the packages are called there).

Cheers,
- Daniel
September 12, 2010
On Sun, 2010-09-12 at 12:12 -0500, Andrei Alexandrescu wrote:
> On 09/11/2010 05:52 PM, Vladimir G. Ivanovic wrote:
> >   I'm running Fedora 13.x86_64 and I've tried various ways of getting a
> > D compiler to work. None have succeeded.
> >
> > 1. a. I can't install dmd 2.048:
> >
> >          # rpm -Uvh /downloads/dmd-2.048-0.i386.rpm
> >          error: Failed dependencies:
> >             gcc(x86-32)>= 4.2.3 is needed by dmd-2.048-0.i386
> >     I don't know what package will satisfy this dependency.
> >     b. dmd is a closed compiler. Not good. I'm really not comfortable
> > running a compiler for which I don't have access to the source. The
> > risk of undetected malware is too great.
> >     c. So, I give up on dmd.
> 
> Apologies for the poor experience. It's because you don't have the 32-bit portability libraries on your 64-bit system. A 64-bit edition is in the works and would certainly make everything smoother.
> 
> In the meantime you'd need to run:
> 
> sudo apt-get install gcc-multilib libc6-i386 lib6-dev-i386
> sudo apt-get install gcc-multilib
> sudo apt-get install g++-multilib
> 
> We need to add these instructions to the download page.

I wonder if part of the problem for OP was using rpm rather than yum?  I found using aptitude on Ubuntu and Debian on x86_64 it was relatively easy to get the downloaded D distribution working, all that was needed was to install the 32-bit libraries and the multilib GCC.  Not a big deal to be honest.

Of course this only gives a 32-bit D, which isn't really what is needed these days on a 64-bit platform.  So the sooner the 64-bit version of D comes out, the better -- preferably last year ;-)


-- 
Russel. ============================================================================= Dr Russel Winder      t: +44 20 7585 2200   voip: sip:russel.winder@ekiga.net 41 Buckmaster Road    m: +44 7770 465 077   xmpp: russel@russel.org.uk London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder


September 12, 2010
Russel Winder wrote:
> Of course this only gives a 32-bit D, which isn't really what is needed
> these days on a 64-bit platform.  So the sooner the 64-bit version of D
> comes out, the better -- preferably last year ;-)

Don't I know it!
September 12, 2010
Vladimir G. Ivanovic wrote:
>  I'm running Fedora 13.x86_64 and I've tried various ways of getting a
> D compiler to work. None have succeeded.
>
> 1. a. I can't install dmd 2.048:
> 
>         # rpm -Uvh /downloads/dmd-2.048-0.i386.rpm
>         error: Failed dependencies:
>            gcc(x86-32) >= 4.2.3 is needed by dmd-2.048-0.i386
>    I don't know what package will satisfy this dependency.
>    b. dmd is a closed compiler. Not good. I'm really not comfortable
> running a compiler for which I don't have access to the source. The
> risk of undetected malware is too great.
>    c. So, I give up on dmd.

Because DMD is a 32-bit compiler and you have a 64-bit OS install ?
yum whatprovides "gcc(x86-32)" tells (or rpm --aid -Uvh before it).

Currently gcc-4.4.4-10.fc13.i686.rpm provides the dependency, to
use --aid you need rpmdb-fedora and a RPM version that supports it.

> 2. I can't run ldc because
>    a. The ldc RPM requires Tango, even though this is not an RPM
> dependency for ldc, i.e. you can install ldc without any errors.
>    b. The installation instructions for Fedora on the LDC web site are
> incorrect. "yum install ldc" works, but "yum install tango" doesn't.
> "yum install tango-devel" is the correct command. (This is the first
> time I've heard of <pkg>-devel without a corresponding <pkg>.)

This is because Tango (or Phobos) only provides static libraries,
if there had been a shared library it would have been "tango"...

In the previous packaging one of the "runtime" library providers
were required, since the compiler is not very useful without one.

>    c. After I've gotten everything installed, it still doesn't work. I get
>         $ ldc hello.d
>         hello.d(5): Error: module stdio cannot read file 'std/stdio.d'
>    d. OK, so I link /usr/include/d/tango/stdc to
> /usr/include/d/tango/std, but it still doesn't work. I get:
>         $ ldc hello.d
>         hello.d(8): Error: undefined identifier writefln
>         hello.d(8): Error: function expected before (), not writefln
> of type int
>    e. ldc only supports D v1.
>    f. All of this is too much for me. I give up on ldc.

But LDC is the D compiler that Fedora has chosen for inclusion in 14...
See https://fedoraproject.org/wiki/Features/D_Programming for details.

> 3. I can't get gdc to compile.
>    a. First I have to get gcc-4.4.4 to compile, but that requires a 4
> year old version of automake. I have to downgrade.
>    b. After that's fixed, I'm still running into errors that prevent a
> build. The errors change from changeset to changeset. So, I'm giving
> up on gdc.

If you use an older GCC, it is much easier. (GCC 4.1.2 was supported)
There's some GDC packages available at http://gdcgnu.sourceforge.net/

> Getting a D compiler to run on x86_64 Linux is too hard. I'm giving up
> on D.

Seems like you ran into these, all at once:
- 32-bit compiler
- static runtime
- wrong stdlib
- older version
Some of these will be fixed, when/if updated.

--anders
« First   ‹ Prev
1 2 3 4 5 6 7 8