Next: Build system options, Previous: Target code compilation options, Up: Invocation [Contents][Index]
-o filename--output-file filenameSpecify 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 optionSpecify 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 optionSpecify 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 directoryAppend directory to the list of directories in which to search for libraries.
-R directory--runtime-library-directory directoryAppend directory to the list of directories in which to search for shared libraries at runtime.
--no-default-runtime-library-directoryDo not add any directories to the runtime search path automatically.
--shlib-linker-install-name-path directorySpecify 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 libraryLink with the specified library.
--link-object fileLink with the specified object file or archive of object files.
--search-lib-files-dir directory--search-library-files-directory directorySearch 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 directoryAppend 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 libraryLink with the specified Mercury library. See Using installed libraries with mmc --make.
--mercury-standard-library-directory directory--mercury-stdlib-dir directorySearch directory for the Mercury standard library. Implies ‘--mercury-library-directory directory’ and ‘--mercury-configuration-directory directory’.
--no-mercury-standard-library-directory--no-mercury-stdlib-dirDon’t use the Mercury standard library. Implies ‘--no-mercury-configuration-directory’.
--init-file-directory directoryAppend directory to the list of directories to be searched for ‘.init’ files by ‘c2init’.
--init-file fileAppend file to the list of ‘.init’ files to be passed to ‘c2init’.
--trace-init-file fileAppend 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-demangleDon’t pipe link errors through the Mercury demangler.
--no-mainDon’t generate a C main() function. The user’s code must provide a main() function.
--no-allow-undefinedDo not allow undefined symbols in shared libraries.
--no-use-readlineDisable use of the readline library in the debugger.
--runtime-flags flagsSpecify flags to pass to the Mercury runtime.
--extra-initialization-functions--extra-initsSearch ‘.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 commandSpecify the command used to invoke the linker when linking an executable.
--link-shared-lib-command commandSpecify the command used to invoke the linker when linking a shared library.
--no-stripDo not strip executables.
--strip-executable-command commandSpecify 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 optionsSpecify options to pass to the strip executable command when linking against Mercury shared libraries.
--stripe-executable-static-flags optionsSpecify options to pass to the strip executable command when linking against Mercury static libraries.
--java-archive-command commandSpecify the command used to produce Java archive (JAR) files.
--framework frameworkBuild and link against the specified framework. (Mac OS X only.)
-F directory--framework-directory directoryAppend the specified directory to the framework search path. (Mac OS X only.)
--sign-assembly keyfileSign 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 sizeSet 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]