FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

build doesnt pass compiler options correctly to gdc?

 
Post new topic   Reply to topic     Forum Index -> Build
View previous topic :: View next topic  
Author Message
funsheep



Joined: 24 Jan 2007
Posts: 25

PostPosted: Wed Jan 24, 2007 4:11 pm    Post subject: build doesnt pass compiler options correctly to gdc? Reply with quote

hi there,

ok, im new. i m using the gdc compiler, since the dmd doesnt work on my linux system.

so i downloaded bud 3.0.4, compiled it with the makefile. then i tried, like the project page says, to compile the tool with itself:

Code:
./build build -full -op


but then gdc says:
Code:
gdc: cannot specify -o with -c or -S with multiple files


Code:
./build -full
works. there is no problem.

i also tried some other projects, like gld and Derelict. there were also those strange errors, that gdc does not recognize certain options.

like:
Code:

gdc: unrecognized option '-v1'
gdc: unrecognized option '-release'
gdc: cannot specify -o with -c or -S with multiple files


so. where is the problem, is it gdc in general, or is it bud, or or or? help me please.

regards
funsheep
Back to top
View user's profile Send private message
Derek Parnell



Joined: 22 Apr 2004
Posts: 408
Location: Melbourne, Australia

PostPosted: Wed Jan 24, 2007 6:18 pm    Post subject: Re: build doesnt pass compiler options correctly to gdc? Reply with quote

funsheep wrote:
hi there,

ok, im new. i m using the gdc compiler, since the dmd doesnt work on my linux system.

so i downloaded bud 3.0.4, compiled it with the makefile. then i tried, like the project page says, to compile the tool with itself:

Code:
./build build -full -op


but then gdc says:
Code:
gdc: cannot specify -o with -c or -S with multiple files


Code:
./build -full
works. there is no problem.

i also tried some other projects, like gld and Derelict. there were also those strange errors, that gdc does not recognize certain options.

like:
Code:

gdc: unrecognized option '-v1'
gdc: unrecognized option '-release'
gdc: cannot specify -o with -c or -S with multiple files


so. where is the problem, is it gdc in general, or is it bud, or or or? help me please.

regards
funsheep

It sounds like GDC is not compatible with DMD. You will need to create/update the build.cfg file to supply the appropriate switches for your environment. I don't have GDC or a usable Linux enviroment to test it out. (Why is everything so bloody hard to install and set up with Linux???)
_________________
--
Derek
skype name: derek.j.parnell
Back to top
View user's profile Send private message
Auria



Joined: 29 May 2006
Posts: 44

PostPosted: Wed Jan 24, 2007 6:53 pm    Post subject: Reply with quote

you can probably use gdmd, to use your current dmd arguments with dmd. AFAIK GDC doesn't support anything like -op

Quote:
Why is everything so bloody hard to install and set up with Linux???


Because you don't know Unix? Smile Or because you tried slackware instead of Ubuntu Wink Honestly i'm on PPC, which is usually poorly supported and yet i got an ubuntu dual-boot working ok super easily without playing that much with the terminal
Back to top
View user's profile Send private message
Derek Parnell



Joined: 22 Apr 2004
Posts: 408
Location: Melbourne, Australia

PostPosted: Wed Jan 24, 2007 7:43 pm    Post subject: Reply with quote

Auria wrote:

Quote:
Why is everything so bloody hard to install and set up with Linux???


Because you don't know Unix? Smile Or because you tried slackware instead of Ubuntu Wink Honestly i'm on PPC, which is usually poorly supported and yet i got an ubuntu dual-boot working ok super easily without playing that much with the terminal

I've been using Unix (SCO, DEC, AIX, Concurrent, and lately Linux) on a daily basis since 1995. I've got RedHat Enterprise 4 on one machine and Fedora 7 on another. Fedora can't recognise my ethernet card. But the problem is that even when one does download a Linix application, there is no standard way to place it anywhere or to configure it. Often, I can't even work out how to install it! Or there is a lot of manual work to place everything "just so" - and some even require that you compile the application too! Crazy!. Windows is a lot easier to work with in this regard.
I Still can't get some Linux apps to run correctly, e.g. Apache, Samba, Subversion, MySQL, ... and it goes on. Whereas the same apps on Windows just install and work - no mystically command line programs (mostly undocumented) to run.
_________________
--
Derek
skype name: derek.j.parnell
Back to top
View user's profile Send private message
funsheep



Joined: 24 Jan 2007
Posts: 25

PostPosted: Thu Jan 25, 2007 8:44 am    Post subject: cant compile bud with dmd properly Reply with quote

Ok, here is what if done in the last 4 hours or so:

im on linux. i have a ~/bin directoy where softlinks to dmd, dmd.conf and bud are set.

when comiling with dmd
Code:
dmd helloWorld.d
it works fine.

compiling build:
i can compile build with the makefile "Makefile.unix". link: compiler output
when i now try to compile build.d with build, it says "memory access violation". on the same computer, but with another account, it says, it cant find -lphobos.

when i now try to build helloWorld.d with bud, i get "cant find -lphobos". this can be solved with
Code:
bud helloWorld.d -L-L/home/funsheep/dmd/lib


i tried to compile the Derelict-Library and it worked fine, when passing the -L-L/home/funsheep/dmd/lib parameter to it.

seems, as if dmd, when used with bud, cant find its conf-file? or cant use/parse the conf-file. the file looks like (im using a tcsh shell)
Code:
[Environment]

DFLAGS=-I/home-e/funsheep/dmd/src/phobos -L-L/home-e/funsheep/dmd/lib
Back to top
View user's profile Send private message
afb



Joined: 26 Jan 2005
Posts: 137
Location: Sweden

PostPosted: Thu Jan 25, 2007 1:54 pm    Post subject: Re: build doesnt pass compiler options correctly to gdc? Reply with quote

Derek Parnell wrote:

I don't have GDC or a usable Linux enviroment to test it out. (Why is everything so bloody hard to install and set up with Linux???)


Does http://gdcgnu.sourceforge.net/ help you anything ? On my Fedora Core, I double-click the RPMs and it installs.
Back to top
View user's profile Send private message
funsheep



Joined: 24 Jan 2007
Posts: 25

PostPosted: Thu Jan 25, 2007 3:01 pm    Post subject: Reply with quote

i also have gdc with gdmd running. but when using gdc, not all projects (e.g. bud/build or dgl) can be build, since their "buildme"s require dmd as compiler.

since i got everything to work, i just wanted to document it, for other persons, having the same problem, and for improvements for bud/build
Back to top
View user's profile Send private message
funsheep



Joined: 24 Jan 2007
Posts: 25

PostPosted: Fri Jan 26, 2007 8:14 am    Post subject: Re: cant compile bud with dmd properly Reply with quote

funsheep wrote:

compiling build:
i can compile build with the makefile "Makefile.unix". link: compiler output
when i now try to compile build.d with build, it says "memory access violation". on the same computer, but with another account, it says, it cant find -lphobos.


as i mentioned earlier, i cant build bud with bud itself - and any other application, which uses modules in subdirectory (e.g. derelict).

yesterday (25.02.) dmd 1.002 was released. when i now try to build these applications "bud build.d -full -clean -v", i get this

also, for other projects with subdirectories i get a similar output for the subdirectories.
Back to top
View user's profile Send private message
funsheep



Joined: 24 Jan 2007
Posts: 25

PostPosted: Fri Jan 26, 2007 1:20 pm    Post subject: Re: cant compile bud with dmd properly Reply with quote

funsheep wrote:

as i mentioned earlier, i cant build bud with bud itself - and any other application, which uses modules in subdirectory (e.g. derelict).

yesterday (25.02.) dmd 1.002 was released. when i now try to build these applications "bud build.d -full -clean -v", i get this

also, for other projects with subdirectories i get a similar output for the subdirectories.


i solved this problem by passing the "-op" switch to the dmd compiler.
Back to top
View user's profile Send private message
JJR



Joined: 22 Feb 2004
Posts: 1104

PostPosted: Fri Jan 26, 2007 6:17 pm    Post subject: Reply with quote

I'm afraid there are too many issues to really name for getting gdc to work with bud on linux (especially gdc). dmd is a lesser problem as long as you remember to add the -op switch.

For gdc, I can't setup a config file --even the ones submitted by Gregor -- to get bud to recognize them. The config file is not read no matter where I put it despite what the documentation states. This is even true if I specify the path on the commandline. There are no messages to indicate why it doesn't work.

And further, I was surprised that one has to use a bud built with dmd to work with dmd/linux and bud built with gdc to work with gdc/linux. With gdc... it seems hardcoded to call gdc... There's no way to make gdmd work especially since the config file is ignored... thus no -op switch so all objects still get dumped int the same directory.

All this is frustrating, but I understand the limitations of trying to develop for a system that's unfamiliar (read: don't have guru knowledge of). I too find low-level linux shell admin and configuration excessivley complex (and I've used it for years to a limited extent)... but I really hope we can get the basics fixed in bud because it's not going to be the easy configure, easy compile system it's supposed to be as it stands. It would be good, I think, to open up bud a bit with some platform developers to make sure it gets properly functional on all platforms... I mean let the platform gurus work there magic: NO NEW features. Just fix it so it runs like a greased wheel. Easy install, easy build.

All Derek's work is hugely appreciated. This is just a suggestion. Nobody can be expert in everything.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic     Forum Index -> Build All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group