Thread: [Dev-C++] Dev settings to remove @ symbol from dll exported functions - please, help!
Open Source C & C++ IDE for Windows
Brought to you by:
claplace
|
From: Vladimir O. <vo...@pr...> - 2003-07-18 14:18:28
|
Hi, everyone! Fairly trivial question - how to remove @ symbol from exported dll functions. To be more exact, what flags should be set _inside_ DevC. I'm using MinGW 2.0 with DevC and have no problem removing it if compiling from command prompt with gcc (--kill-at works). But for some reason i absolutely can't do that if compiling from inside DevC - looks like all compiler/linker settings are just ignored (though, well, not really ignored - i see them all in generated Makefile, but --kill-at for some reason is ignored by dllwrap.exe tool DevC is using by default in its generated Makefile). So, I managed to remove @ symbols using gcc.exe -shared -Wl, --kill-at flags, but the same flag doesn't work for dllwrap tool. Any help would be greatly appreciated! vlad |
|
From: Michal M. <mol...@se...> - 2003-07-18 15:14:47
|
Vladimir Olenin wrote:
> Hi, everyone!
>
> Fairly trivial question - how to remove @ symbol from exported dll
> functions. To be more exact, what flags should be set _inside_ DevC. I'm
> using MinGW 2.0 with DevC and have no problem removing it if compiling
> from command prompt with gcc (--kill-at works). But for some reason i
> absolutely can't do that if compiling from inside DevC - looks like all
> compiler/linker settings are just ignored (though, well, not really
> ignored - i see them all in generated Makefile, but --kill-at for some
> reason is ignored by dllwrap.exe tool DevC is using by default in its
> generated Makefile).
>
> So, I managed to remove @ symbols using gcc.exe -shared -Wl, --kill-at
> flags, but the same flag doesn't work for dllwrap tool. Any help would
> be greatly appreciated!
>
> vlad
after running "dllwrap --help" I saw:
-k Kill @<n> from exported names
--add-stdcall-alias Add aliases without @<n>
but i've never used that so I don't know if it helps :-)
|
|
From: <or...@vp...> - 2003-07-18 17:25:18
|
Vladimir Olenin wrote: > Hi, everyone! > > Fairly trivial question - how to remove @ symbol from exported dll > functions. To be more exact, what flags should be set _inside_ DevC. I'm > using MinGW 2.0 with DevC and have no problem removing it if compiling > from command prompt with gcc (--kill-at works). But for some reason i > absolutely can't do that if compiling from inside DevC - looks like all > compiler/linker settings are just ignored (though, well, not really > ignored - i see them all in generated Makefile, but --kill-at for some > reason is ignored by dllwrap.exe tool DevC is using by default in its > generated Makefile). Actually dllwrap is deprecated. Everyone uses gcc (or g++) -shared by now. At least, MinGW also recommends it. No wonder why Dev-C++ still uses deprecated stuff: it is written in Delphi. I don't think the developers of Dev-C++ know much about the GNU tools. They use Borland... No wonder the VERY often crashes of the IDE itself too... -- Greetings, Balázs |
|
From: Smurf, P. <smu...@xs...> - 2003-07-18 21:33:33
|
>No wonder why Dev-C++ still uses deprecated stuff: it is written in >Delphi. I don't think the developers of Dev-C++ know much about the GNU >tools. They use Borland... No wonder the VERY often crashes of the IDE >itself too... Oh oh some hard feelings. Well with free products and open source its like this: Cough up $2000 for Visual Studio or fix the bugs. I'm saying this as I don't think the problems your are having are the cause of Borland software. I too have sometime problems but that's with the beta software and the auto update utility. Else I think DevCPP is an excellent product. ------------------------------------------------------- This SF.net email is sponsored by: VM Ware With VMware you can run multiple operating systems on a single machine. WITHOUT REBOOTING! Mix Linux / Windows / Novell virtual machines at the same time. Free trial click here: http://www.vmware.com/wl/offer/345/0 _______________________________________________ Dev-cpp-users mailing list Dev...@li... TO UNSUBSCRIBE: http://www23.brinkster.com/noicys/devcpp/ub.htm https://lists.sourceforge.net/lists/listinfo/dev-cpp-users |
|
From: Per W. <pw...@ia...> - 2003-07-18 22:07:45
|
The only real disadvantage about the Delphi choice is that it's a bit harder to download the source code and send in patches with new features or bug fixes. Since the majority if users are using C or C++ as main language, we are not as good with Pascal and the RTL available in Delphi. Also, I haven't checked exactly what private editions of Delphi that may be downloaded from Borland, and if they allow us to build the IDE source. Also, I haven't checked which OS Kylix is running on, and if it is possible to just recompile the code with Kylix. /Per W On Fri, 18 Jul 2003, Smurf, Papa wrote: > >No wonder why Dev-C++ still uses deprecated stuff: it is written in > >Delphi. I don't think the developers of Dev-C++ know much about the GNU > >tools. They use Borland... No wonder the VERY often crashes of the IDE > >itself too... > > Oh oh some hard feelings. Well with free products and open source its like > this: Cough up $2000 for Visual Studio or fix the bugs. > > I'm saying this as I don't think the problems your are having are the cause > of Borland software. I too have sometime problems but that's with the beta > software and the auto update utility. Else I think DevCPP is an excellent > product. > > ------------------------------------------------------- > This SF.net email is sponsored by: VM Ware > With VMware you can run multiple operating systems on a single machine. > WITHOUT REBOOTING! Mix Linux / Windows / Novell virtual machines at the > same time. Free trial click here: http://www.vmware.com/wl/offer/345/0 > _______________________________________________ > Dev-cpp-users mailing list > Dev...@li... > TO UNSUBSCRIBE: http://www23.brinkster.com/noicys/devcpp/ub.htm > https://lists.sourceforge.net/lists/listinfo/dev-cpp-users > > > > ------------------------------------------------------- > This SF.net email is sponsored by: VM Ware > With VMware you can run multiple operating systems on a single machine. > WITHOUT REBOOTING! Mix Linux / Windows / Novell virtual machines at the > same time. Free trial click here: http://www.vmware.com/wl/offer/345/0 > _______________________________________________ > Dev-cpp-users mailing list > Dev...@li... > TO UNSUBSCRIBE: http://www23.brinkster.com/noicys/devcpp/ub.htm > https://lists.sourceforge.net/lists/listinfo/dev-cpp-users > |
|
From: <or...@vp...> - 2003-07-19 11:57:06
|
Hi! Well, the topic diversed a bit from the original part. My fault again. I have no trouble with "Borland" itself - more like Delphi, the language. I even used Borland some time ago. Their C++ compiler is free (not the IDE). So Borland is good. *Deplhi* is not. But to turn back to the original part: I "think", that if someone uses OTHER tools than the GNU tools for creating an IDE for GCC, then it may not turn out good. I mean, try to write an IDE for Deplhi (more accurately: for the Borland tools), using GNU tools. You would end up with partial/wrong support for the Borland compiler. So, I think the best would be to study hardly the GNU tools, and follow every change in it today, and make Dev-C++ up-to-date. For the original part: I think instead of dllwrap, gcc and g++ -shared should be used. About the IDE bugs: yes, it is quite a long time in development, and it is still beta. The bugs occured when I tried to compile bigger projects: the makefile is just not generated, then I get the exception window about "Invalid filename"s. But when I double-click the project file in Explorer, and Dev-C++ opens up, the SAME project compiles. Odd... Other: A problem with Dev-C++, is that the developers don't listen to the users at all. I have written a personal mail to one of the devs some time ago about giving support for use of environment variables (%ENV_VAR% or $(ENV_VAR)) at include and library dirs, but I haven't even got a response ever since. It would be way better, if the developers of Dev-C++ would listen, or at least, sometime read this list. And last: I have been watching the mails' subjects on this list, and most are C/C++ questions. That is not a problem, and it is good in fact, because there are many talented C/C++ programmers here. BUT: whenever someone asks about Dev-C++, THE IDE ITSELF, he RARELY gets any sort of answer: not even like: "I cannot help, ask here...". This is not good. It seems, that everyone (the good C/C++ progammers here) get lost in the details: about whether this #ifdef XXX #define AAA #endif or this #ifdef XXX # define AAA #endif is correct, and there are 20 mails arguing about this (it's just a sarcastic example). So I think, the focus on this list should be more on Dev-C++, the IDE, and secondly on C/C++ (and thirdly on cars, and ONLY fourth about MFC :) So, again, I have nothing against Borland. Their compilers are fine. I even used them. I just say... what I said above :) -- Greetings, Balázs |
|
From: Per W. <pw...@ia...> - 2003-07-19 12:25:47
|
I admit that it might be a bit hard to use ANY language and write a IDE for Delphi - since I assume that Delphi is delivered with a number of DLL etc with graphical content that isn't possible to integrate in any language. However, gcc has only a command-line interface. This means that just about any language - even shell-script languages - have a perfect control of all features available with the gcc tools. It's only a question of combining the commands and command-line parameters in suitable ways. One of the problems with gcc isn't gcc itself, but the command line of win32. Since the command line doesn't support arbitrary long command lines, some command lines that works perfectly on Unix machines will not work under Win32. For now I just build large projects by linking *.o instead of having the Makefile specify each individual file. I haven't checked if gcc supports it, but Borland and a number of other compiler wendors added support for response files in their compilers, i.e. by specifying "bcc @respfile" all command line parameters are read from the file respfile. They then added support in their make tools to emit the data to the response files. However, as you realize, these kinds of problems have nothing with the implementation language of the IDE to do. It's a question of what the gcc tools can or can not do, and any limitations of the target OS. /Per W |
|
From: Abhijit S. <mu...@gm...> - 2003-07-19 13:29:01
|
This is somewhat OT, but I'll post it anyway since it may be of use to many. > One of the problems with gcc isn't gcc itself, but the command line of > win32. Since the command line doesn't support arbitrary long command > lines, some command lines that works perfectly on Unix machines will not > work under Win32. GCC-make uses a different way of talking to other such programs - they don't use the shell at all (I read it in the DJGPP FAQ; Google should turn up more info). When I read your mail, I tried this makefile: -- Cut here -- OBJ_FILES=titan.o feebar.o losu.o foar.o into.o heaven.o andlast.o plugins.o \ notepad.o emacs.o vi.o o.stuff and.o wha.o andagain.o foobar.o reefa.o \ sumdist.o laser.oi remac.o fury.o stupid.o comma.o stupid.o comma.o stupid.o \ rehea.o historik.o lesa.o meaga.o simpson.o homer.o illiad.o anderson.o \ csda.o exams.o magic.lo distortion.zz foobarrr.ooo reak.o 3f.o andstuff.o \ like.o this.o and i suddenly realize that i don_t need the extension. all: gcc -Wall $(OBJ_FILES) -- Cut here -- And here's what GCC reported (only the last few lines are included) when I ran `make': -- Cut here -- gcc: i: No such file or directory gcc: don_t: No such file or directory gcc: need: No such file or directory gcc: the: No such file or directory gcc: extension.: No such file or directory gcc: no input files D:\CODE\MINGW\BIN\MAKE.EXE: *** [all] Error 1 -- Cut here -- Clearly, the above command-line is well over the COMMAND.COM line-length limit of 128 chars. You should have no problem at all using MinGW make. I also proceeded to repeatedly copy-paste the text so that the OBJ_FILES variable came up to 283 lines, and `make' still ran fine. This arbitrary-size command-line transfer works between any two programs compiled using GCC, so the code must be integrated with the EXE loader. I tried it with my version of MinGW32 (GCC 3.2) and my program recognized all 2302 args (from the above makefile of ~283 lines). This will NOT work if you run your program from GUMHAND.COM, only from within another GCC compiled program (I don't know about `cross-platform' programs, like DJGPP <-> MinGW32). -- Abhijit Shylanath Homepage: http://mudeth.tripod.com/ |
|
From: Per W. <pw...@ia...> - 2003-07-19 14:34:51
|
While the poor command.com is limited to 128 characters, thats no problem for 32-bit programs. cmd has a limit of just below 2kB and Win32 itself allows 32kB. Any xx.com programs hare ancient MsDos history, since they are limited to 64kB code etc, by ising original CP/M file format. /Per W On Sat, 19 Jul 2003, Abhijit Shylanath wrote: > > This is somewhat OT, but I'll post it anyway since it may be of use to many. > > > One of the problems with gcc isn't gcc itself, but the command line of > > win32. Since the command line doesn't support arbitrary long command > > lines, some command lines that works perfectly on Unix machines will not > > work under Win32. > > GCC-make uses a different way of talking to other such programs - they don't > use the shell at all (I read it in the DJGPP FAQ; Google should turn up more > info). When I read your mail, I tried this makefile: > > -- Cut here -- > > OBJ_FILES=titan.o feebar.o losu.o foar.o into.o heaven.o andlast.o plugins.o > \ > notepad.o emacs.o vi.o o.stuff and.o wha.o andagain.o foobar.o reefa.o \ > sumdist.o laser.oi remac.o fury.o stupid.o comma.o stupid.o comma.o stupid.o > \ > rehea.o historik.o lesa.o meaga.o simpson.o homer.o illiad.o anderson.o \ > csda.o exams.o magic.lo distortion.zz foobarrr.ooo reak.o 3f.o andstuff.o \ > like.o this.o and i suddenly realize that i don_t need the extension. > > all: > gcc -Wall $(OBJ_FILES) > > -- Cut here -- > > And here's what GCC reported (only the last few lines are included) when I > ran `make': > > -- Cut here -- > > gcc: i: No such file or directory > gcc: don_t: No such file or directory > gcc: need: No such file or directory > gcc: the: No such file or directory > gcc: extension.: No such file or directory > gcc: no input files > D:\CODE\MINGW\BIN\MAKE.EXE: *** [all] Error 1 > > -- Cut here -- > > Clearly, the above command-line is well over the COMMAND.COM line-length > limit of 128 chars. You should have no problem at all using MinGW make. > > I also proceeded to repeatedly copy-paste the text so that the OBJ_FILES > variable came up to 283 lines, and `make' still ran fine. > > This arbitrary-size command-line transfer works between any two programs > compiled using GCC, so the code must be integrated with the EXE loader. I > tried it with my version of MinGW32 (GCC 3.2) and my program recognized all > 2302 args (from the above makefile of ~283 lines). > > This will NOT work if you run your program from GUMHAND.COM, only from > within another GCC compiled program (I don't know about `cross-platform' > programs, like DJGPP <-> MinGW32). > > -- > Abhijit Shylanath > Homepage: http://mudeth.tripod.com/ > > |
|
From: Tony M. <to...@ho...> - 2003-07-18 22:10:33
|
I think you're being unduly harsh on the Dev-C++ developers, and on Borla= nd software in general. Dev-C++ 4.9.x is still in the "beta" stage, so it= 's more than expected to have bugs, regardless of the fact they use a Bor= land IDE/compiler. It seems you don't like the Dev-C++ bugs. Why not pick up on Object Pasca= l and fix Dev-C++ bugs yourself? :) OROSZI Bal=E1zs wrote: > No wonder why Dev-C++ still uses deprecated stuff: it is written in Del= phi. I don't think the developers of Dev-C++ know much about the GNU tool= s. They use Borland... No wonder the VERY often crashes of the IDE itself= too... |
|
From: Per W. <pw...@ia...> - 2003-07-18 22:20:30
|
Anyone in this group willing to say that M$ non-beta tools are bug-free? /Per W On Fri, 18 Jul 2003, Tony M. wrote: > I think you're being unduly harsh on the Dev-C++ developers, and on Borla= nd software in general. Dev-C++ 4.9.x is still in the "beta" stage, so it's= more than expected to have bugs, regardless of the fact they use a Borland= IDE/compiler. > > It seems you don't like the Dev-C++ bugs. Why not pick up on Object Pasca= l and fix Dev-C++ bugs yourself? :) > > OROSZI Bal=E1zs wrote: > > No wonder why Dev-C++ still uses deprecated stuff: it is written in Del= phi. I don't think the developers of Dev-C++ know much about the GNU tools.= They use Borland... No wonder the VERY often crashes of the IDE itself too= =2E.. > > > > > ------------------------------------------------------- > This SF.net email is sponsored by: VM Ware > With VMware you can run multiple operating systems on a single machine. > WITHOUT REBOOTING! Mix Linux / Windows / Novell virtual machines at the > same time. Free trial click here: http://www.vmware.com/wl/offer/345/0 > _______________________________________________ > Dev-cpp-users mailing list > Dev...@li... > TO UNSUBSCRIBE: http://www23.brinkster.com/noicys/devcpp/ub.htm > https://lists.sourceforge.net/lists/listinfo/dev-cpp-users > |
|
From: Abhijit S. <mu...@gm...> - 2003-07-18 22:31:15
|
> I think you're being unduly harsh on the Dev-C++ developers, and > on Borland software in general. Dev-C++ 4.9.x is still in the > "beta" stage, so it's more than expected to have bugs, regardless > of the fact they use a Borland IDE/compiler. Correct me if I'm wrong, but hasn't it been in Beta for (at least) half a year now, without any stable releases? > It seems you don't like the Dev-C++ bugs. Why not pick up on > Object Pascal and fix Dev-C++ bugs yourself? :) Actually, there had been a discussion a long time back about porting (rewriting) Dev on C/C++, and I think someone actually took it up (starting with the DevPak creator or something). I wonder what became of it. Unfortunately, though, I personally have grown tired of it's many quirks in the meantime (though they may have been fixed). I now use hand-written makefiles and Emacs... out of interest, how many of you here actually use Dev regularly? -- Abhijit Shylanath Homepage: http://mudeth.tripod.com/ |
|
From: Per W. <pw...@ia...> - 2003-07-18 22:42:41
|
I use the IDE regularly, but I often build with hand-made Makefiles just like I do when programming on Unix machines. /Per W On Sat, 19 Jul 2003, Abhijit Shylanath wrote: > > > I think you're being unduly harsh on the Dev-C++ developers, and > > on Borland software in general. Dev-C++ 4.9.x is still in the > > "beta" stage, so it's more than expected to have bugs, regardless > > of the fact they use a Borland IDE/compiler. > > Correct me if I'm wrong, but hasn't it been in Beta for (at least) half a > year now, without any stable releases? > > > It seems you don't like the Dev-C++ bugs. Why not pick up on > > Object Pascal and fix Dev-C++ bugs yourself? :) > > Actually, there had been a discussion a long time back about porting > (rewriting) Dev on C/C++, and I think someone actually took it up (starting > with the DevPak creator or something). I wonder what became of it. > > Unfortunately, though, I personally have grown tired of it's many quirks in > the meantime (though they may have been fixed). I now use hand-written > makefiles and Emacs... out of interest, how many of you here actually use > Dev regularly? > > -- > Abhijit Shylanath > Homepage: http://mudeth.tripod.com/ > > > > ------------------------------------------------------- > This SF.net email is sponsored by: VM Ware > With VMware you can run multiple operating systems on a single machine. > WITHOUT REBOOTING! Mix Linux / Windows / Novell virtual machines at the > same time. Free trial click here: http://www.vmware.com/wl/offer/345/0 > _______________________________________________ > Dev-cpp-users mailing list > Dev...@li... > TO UNSUBSCRIBE: http://www23.brinkster.com/noicys/devcpp/ub.htm > https://lists.sourceforge.net/lists/listinfo/dev-cpp-users > |
|
From: Marc H. <ma...@e-...> - 2003-07-19 09:41:24
|
I use Dev-Cpp as my primary (C/C++) development tool. While it has = quirks and problems, they are no worse than any other IDE I've used. I've found that as the Beta versions have kept coming out, the whole thing has = become more and more stable. Also, not having all those glorious MS wizards = means I have become better acquainted with the programming languages and APIs themselves. I like it, and I have recommended it to several fellow developers. It is = no mean feat to write a development IDE, no matter what the development language is. __________________________________ Marc Heiligers =20 -----Original Message----- From: dev...@li... [mailto:dev...@li...] On Behalf Of Abhijit Shylanath Sent: 19 July 2003 00:36 To: Tony M.; OROSZI Bal=E1zs Cc: dev...@li... Subject: RE: [Dev-C++] Dev settings to remove @ symbol from dll exported functions- please, help! Unfortunately, though, I personally have grown tired of it's many quirks = in the meantime (though they may have been fixed). I now use hand-written makefiles and Emacs... out of interest, how many of you here actually = use Dev regularly? -- Abhijit Shylanath Homepage: http://mudeth.tripod.com/ |
|
From: Luigi S. <gi...@li...> - 2003-07-19 18:10:06
|
On Sat, Jul 19, 2003 at 04:06:24AM +0530, Abhijit Shylanath wrote: > > Actually, there had been a discussion a long time back about porting > (rewriting) Dev on C/C++, and I think someone actually took it up (starting > with the DevPak creator or something). I wonder what became of it. I remember a messages telling about a C++ version of the IDE which used the Fltk library, there was also a link, those interested should search the mail archive. > > [...] I now use hand-written > makefiles and Emacs... out of interest, how many of you here actually use > Dev regularly? > I spend much of the time on GNU/Linux and use Emacs togethe with Makefiles produced by my personal makefile generating program. -- >> gisan >> |
|
From: Luc-Etienne B. <Luc...@wa...> - 2003-07-28 09:02:03
|
You are right: within the DevCpp, if you use --kill-at, you see this option in the command line, but get the error: unrecognized option `-fkill-at' -----Message d'origine----- De=A0: dev...@li... [mailto:dev...@li...] De la part de Vladimir Olenin Envoy=E9=A0: vendredi 18 juillet 2003 16:23 =C0=A0: dev...@li... Objet=A0: [Dev-C++] Dev settings to remove @ symbol from dll exported functions - please, help! Hi, everyone! Fairly trivial question - how to remove @ symbol from exported dll=20 functions. To be more exact, what flags should be set _inside_ DevC. I'm using MinGW 2.0 with DevC and have no problem removing it if compiling=20 from command prompt with gcc (--kill-at works). But for some reason i=20 absolutely can't do that if compiling from inside DevC - looks like all=20 compiler/linker settings are just ignored (though, well, not really=20 ignored - i see them all in generated Makefile, but --kill-at for some=20 reason is ignored by dllwrap.exe tool DevC is using by default in its=20 generated Makefile). So, I managed to remove @ symbols using gcc.exe -shared -Wl, --kill-at=20 flags, but the same flag doesn't work for dllwrap tool. Any help would=20 be greatly appreciated! vlad |