www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - No .o or executable left behind?

reply "Unknown W. Brackets" <unknown simplemachines.org> writes:
Inspired by the new regular expression support and such, I thought I'd
take a script I'd been meaning to convert from a scripting language to
D/similar anyway and see how they were.

The script essentially takes a 30 megabyte text file, parses it, and
then puts the information into a MySQL database.

Since we also have the -run feature now, I thought I'd also try it while
I was playing with new D features.  The command I used is:

dmd mysql.d -L/usr/lib/libmysqlclient.so -run parse_log.d

This works fine, even if the order is a bit weird to me, but it doesn't
exactly follow the documentation; in fact, it does indeed generate a
"mysql" executable as well as "mysql.o" and "parse_log.o" files.

Does -run only work if it's the first argument, and you're compiling
only one source file?  Or am I using this wrongly?  Is it not supported
as well on Linux?

Still, it does run it for me, and I'm sure it works well for its
intended use.  That said, one of the major gains of a scripting language
is that I don't need to put things like mysql.d on the command line; the
source file tells the compiler what other files to compile.

Thanks,
-[Unknown]
Feb 18 2006
parent "Unknown W. Brackets" <unknown simplemachines.org> writes:
This also appears to be Linux-only from what I can tell; linking 
multiple files together on Windows appears to work correctly.

Is the documentation for Linux incorrect?

Thanks,
-[Unknown]


 Inspired by the new regular expression support and such, I thought I'd
 take a script I'd been meaning to convert from a scripting language to
 D/similar anyway and see how they were.
 
 The script essentially takes a 30 megabyte text file, parses it, and
 then puts the information into a MySQL database.
 
 Since we also have the -run feature now, I thought I'd also try it while
 I was playing with new D features.  The command I used is:
 
 dmd mysql.d -L/usr/lib/libmysqlclient.so -run parse_log.d
 
 This works fine, even if the order is a bit weird to me, but it doesn't
 exactly follow the documentation; in fact, it does indeed generate a
 "mysql" executable as well as "mysql.o" and "parse_log.o" files.
 
 Does -run only work if it's the first argument, and you're compiling
 only one source file?  Or am I using this wrongly?  Is it not supported
 as well on Linux?
 
 Still, it does run it for me, and I'm sure it works well for its
 intended use.  That said, one of the major gains of a scripting language
 is that I don't need to put things like mysql.d on the command line; the
 source file tells the compiler what other files to compile.
 
 Thanks,
 -[Unknown]
Feb 24 2006