Next: Build system options, Previous: Target code compilation options, Up: Invocation [Contents][Index]
-o filename
--output-file filename
Specify the name of the final executable. (The default executable name is the same as the name of the first module on the command line, but without the ‘.m’ extension.) This option is ignored by ‘mmc --make’.
--ld-flags options
--ld-flags option
Specify options to be passed to the command
invoked by ‘mmc’ to link an executable.
Use mmc --output-link-command
to find out
which command is used.
‘--ld-flag’ should be used for single words which need
to be quoted when passed to the shell.
--ld-libflags options
--ld-libflag option
Specify options to be passed to the command
invoked by ‘mmc’ to link a shared library.
Use mmc --output-shared-lib-link-command
to find out which command is used.
‘--ld-libflag’ should be used for single words which need
to be quoted when passed to the shell.
-L directory
--library-directory directory
Append directory to the list of directories in which to search for libraries.
-R directory
--runtime-library-directory directory
Append directory to the list of directories in which to search for shared libraries at runtime.
--no-default-runtime-library-directory
Do not add any directories to the runtime search path automatically.
--shlib-linker-install-name-path directory
Specify the path where a shared library will be installed. This option is useful on systems where the runtime search path is obtained from the shared library and not via the -R option (such as Mac OS X).
-l library
--library library
Link with the specified library.
--link-object file
Link with the specified object file or archive of object files.
--search-lib-files-dir directory
--search-library-files-directory directory
Search directory for Mercury library files have not yet been installed. Similar to adding directory using all of the ‘--search-directory’, ‘--intermod-directory’, ‘--library-directory’, ‘--init-file-directory’, and ‘--c-include-directory’ options, but does the right thing when ‘--use-subdirs’ or ‘--use-grade-subdirs’ options are used.
--mld directory
--mercury-library-directory directory
Append directory to the list of directories to be searched for Mercury libraries. This will add ‘--search-directory’, ‘--library-directory’, ‘--init-file-directory’ and ‘--c-include-directory’ options as needed. See Using installed libraries with mmc --make.
--ml library
--mercury-library library
Link with the specified Mercury library. See Using installed libraries with mmc --make.
--mercury-standard-library-directory directory
--mercury-stdlib-dir directory
Search directory for the Mercury standard library. Implies ‘--mercury-library-directory directory’ and ‘--mercury-configuration-directory directory’.
--no-mercury-standard-library-directory
--no-mercury-stdlib-dir
Don’t use the Mercury standard library. Implies ‘--no-mercury-configuration-directory’.
--init-file-directory directory
Append directory to the list of directories to be searched for ‘.init’ files by ‘c2init’.
--init-file file
Append file to the list of ‘.init’ files to be passed to ‘c2init’.
--trace-init-file file
Append file to the list of ‘.init’ files to be passed to ‘c2init’ when tracing is enabled.
--linkage {shared,static}
Specify whether to use shared or static linking for executables. Shared libraries are always linked with ‘--linkage shared’.
--mercury-linkage {shared,static}
Specify whether to use shared or static linking when linking an executable with Mercury libraries. Shared libraries are always linked with ‘--mercury-linkage shared’.
--no-demangle
Don’t pipe link errors through the Mercury demangler.
--no-main
Don’t generate a C main() function. The user’s code must provide a main() function.
--no-allow-undefined
Do not allow undefined symbols in shared libraries.
--no-use-readline
Disable use of the readline library in the debugger.
--runtime-flags flags
Specify flags to pass to the Mercury runtime.
--extra-initialization-functions
--extra-inits
Search ‘.c’ files for extra initialization functions. (This may be necessary if the C files contain hand-coded C code with ‘INIT’ comments, rather than containing only C code that was automatically generated by the Mercury compiler.)
--link-executable-command command
Specify the command used to invoke the linker when linking an executable.
--link-shared-lib-command command
Specify the command used to invoke the linker when linking a shared library.
--no-strip
Do not strip executables.
--strip-executable-command command
Specify the command used to strip executables if no linker flag to do so is available. This option has no effect on ‘ml’.
--strip-executable-shared-flags options
Specify options to pass to the strip executable command when linking against Mercury shared libraries.
--stripe-executable-static-flags options
Specify options to pass to the strip executable command when linking against Mercury static libraries.
--java-archive-command command
Specify the command used to produce Java archive (JAR) files.
--framework framework
Build and link against the specified framework. (Mac OS X only.)
-F directory
--framework-directory directory
Append the specified directory to the framework search path. (Mac OS X only.)
--sign-assembly keyfile
Sign the current assembly with the strong name contained in the specified key file. (This option is only meaningful when generating library assemblies with the C# back-end.)
--cstack-reserve-size size
Set the total size of the C stack in virtual memory for executables. The stack size is given in bytes. This option is only supported (and indeed only necessary) on systems running Microsoft Windows.
Next: Build system options, Previous: Target code compilation options, Up: Invocation [Contents][Index]