1LIBTOOL(1) User Commands LIBTOOL(1)
2
3
4
6 libtool - manual page for libtool 2.4.2
7
9 libtool [OPTION]... [MODE-ARG]...
10 libtool [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
11 libtool [OPTION]... --mode=link LINK-COMMAND...
12 libtool [OPTION]... --mode=execute COMMAND [ARGS]...
13 libtool [OPTION]... --mode=install INSTALL-COMMAND...
14 libtool [OPTION]... --mode=finish [LIBDIR]...
15 libtool [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE...
16 libtool [OPTION]... --mode=clean RM [RM-OPTION]... FILE...
17
19 Provide generalized library-building support services.
20
21 --config
22 show all configuration variables
23
24 --debug
25 enable verbose shell tracing
26
27 -n, --dry-run
28 display commands without modifying any files
29
30 --features
31 display basic configuration information and exit
32
33 --mode=MODE
34 use operation mode MODE
35
36 --preserve-dup-deps
37 don't remove duplicate dependency libraries
38
39 --quiet, --silent
40 don't print informational messages
41
42 --no-quiet, --no-silent
43 print informational messages (default)
44
45 --no-warn
46 don't display warning messages
47
48 --tag=TAG
49 use configuration variables from tag TAG
50
51 -v, --verbose
52 print more informational messages than default
53
54 --no-verbose
55 don't print the extra informational messages
56
57 --version
58 print version information
59
60 -h, --help, --help-all
61 print short, long, or detailed help message
62
63 MODE must be one of the following:
64
65 clean remove files from the build directory
66
67 compile
68 compile a source file into a libtool object
69
70 execute
71 automatically set library path, then run a program
72
73 finish complete the installation of libtool libraries
74
75 install
76 install libraries or executables
77
78 link create a library or an executable
79
80 uninstall
81 remove libraries from an installed directory
82
83 MODE-ARGS vary depending on the MODE. When passed as first option,
84 `--mode=MODE' may be abbreviated as `MODE' or a unique abbreviation of
85 that.
86
87 GNU libtool home page: <http://www.gnu.org/software/libtool/>. General
88 help using GNU software: <http://www.gnu.org/gethelp/>.
89
90 Description of compile mode:
91
92 Compile a source file into a libtool library object.
93
94 This mode accepts the following additional options:
95
96 -o OUTPUT-FILE
97 set the output file name to OUTPUT-FILE
98
99 -no-suppress
100 do not suppress compiler output for multiple passes
101
102 -prefer-pic
103 try to build PIC objects only
104
105 -prefer-non-pic
106 try to build non-PIC objects only
107
108 -shared
109 do not build a `.o' file suitable for static linking
110
111 -static
112 only build a `.o' file suitable for static linking
113
114 -Wc,FLAG
115 pass FLAG directly to the compiler
116
117 COMPILE-COMMAND is a command to be used in creating a `standard' object
118 file from the given SOURCEFILE.
119
120 The output file name is determined by removing the directory component
121 from SOURCEFILE, then substituting the C source code suffix `.c' with
122 the library object suffix, `.lo'.
123
124 Description of link mode:
125
126 Link object files or libraries together to form another library, or to
127 create an executable program.
128
129 LINK-COMMAND is a command using the C compiler that you would use to
130 create a program from several object files.
131
132 The following components of LINK-COMMAND are treated specially:
133
134 -all-static
135 do not do any dynamic linking at all
136
137 -avoid-version
138 do not add a version suffix if possible
139
140 -bindir BINDIR
141 specify path to binaries directory (for systems where libraries
142 must be found in the PATH setting at runtime)
143
144 -dlopen FILE
145 `-dlpreopen' FILE if it cannot be dlopened at runtime
146
147 -dlpreopen FILE
148 link in FILE and add its symbols to lt_preloaded_symbols
149
150 -export-dynamic
151 allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
152
153 -export-symbols SYMFILE
154 try to export only the symbols listed in SYMFILE
155
156 -export-symbols-regex REGEX
157 try to export only the symbols matching REGEX
158
159 -LLIBDIR
160 search LIBDIR for required installed libraries
161
162 -lNAME OUTPUT-FILE requires the installed library libNAME
163
164 -module
165 build a library that can dlopened
166
167 -no-fast-install
168 disable the fast-install mode
169
170 -no-install
171 link a not-installable executable
172
173 -no-undefined
174 declare that a library does not refer to external symbols
175
176 -o OUTPUT-FILE
177 create OUTPUT-FILE from the specified objects
178
179 -objectlist FILE
180 Use a list of object files found in FILE to specify objects
181
182 -precious-files-regex REGEX
183 don't remove output files matching REGEX
184
185 -release RELEASE
186 specify package release information
187
188 -rpath LIBDIR
189 the created library will eventually be installed in LIBDIR
190
191 -R[ ]LIBDIR
192 add LIBDIR to the runtime path of programs and libraries
193
194 -shared
195 only do dynamic linking of libtool libraries
196
197 -shrext SUFFIX
198 override the standard shared library file extension
199
200 -static
201 do not do any dynamic linking of uninstalled libtool libraries
202
203 -static-libtool-libs
204 do not do any dynamic linking of libtool libraries
205
206 -version-info CURRENT[:REVISION[:AGE]]
207 specify library version info [each variable defaults to 0]
208
209 -weak LIBNAME
210 declare that the target provides the LIBNAME interface
211
212 -Wc,FLAG
213
214 -Xcompiler FLAG
215 pass linker-specific FLAG directly to the compiler
216
217 -Wl,FLAG
218
219 -Xlinker FLAG
220 pass linker-specific FLAG directly to the linker
221
222 -XCClinker FLAG
223 pass link-specific FLAG to the compiler driver (CC)
224
225 All other options (arguments beginning with `-') are ignored.
226
227 Every other argument is treated as a filename. Files ending in `.la'
228 are treated as uninstalled libtool libraries, other files are standard
229 or library object files.
230
231 If the OUTPUT-FILE ends in `.la', then a libtool library is created,
232 only library objects (`.lo' files) may be specified, and `-rpath' is
233 required, except when creating a convenience library.
234
235 If OUTPUT-FILE ends in `.a' or `.lib', then a standard library is cre‐
236 ated using `ar' and `ranlib', or on Windows using `lib'.
237
238 If OUTPUT-FILE ends in `.lo' or `.o', then a reloadable object file is
239 created, otherwise an executable program is created.
240
241 Description of execute mode:
242
243 Automatically set library path, then run a program.
244
245 This mode accepts the following additional options:
246
247 -dlopen FILE
248 add the directory containing FILE to the library path
249
250 This mode sets the library path environment variable according to
251 `-dlopen' flags.
252
253 If any of the ARGS are libtool executable wrappers, then they are
254 translated into their corresponding uninstalled binary, and any of
255 their required library directories are added to the library path.
256
257 Then, COMMAND is executed, with ARGS as arguments.
258
259 Description of install mode:
260
261 Install executables or libraries.
262
263 INSTALL-COMMAND is the installation command. The first component
264 should be either the `install' or `cp' program.
265
266 The following components of INSTALL-COMMAND are treated specially:
267
268 -inst-prefix-dir PREFIX-DIR
269 Use PREFIX-DIR as a staging area for installation
270
271 The rest of the components are interpreted as arguments to that command
272 (only BSD-compatible install options are recognized).
273
274 Description of finish mode:
275
276 Complete the installation of libtool libraries.
277
278 Each LIBDIR is a directory that contains libtool libraries.
279
280 The commands that this mode executes may require superuser privileges.
281 Use the `--dry-run' option if you just want to see what would be exe‐
282 cuted.
283
284 Description of uninstall mode:
285
286 Remove libraries from an installation directory.
287
288 RM is the name of the program to use to delete files associated with
289 each FILE (typically `/bin/rm'). RM-OPTIONS are options (such as `-f')
290 to be passed to RM.
291
292 If FILE is a libtool library, all the files associated with it are
293 deleted. Otherwise, only FILE itself is deleted using RM.
294
295 Description of clean mode:
296
297 Remove files from the build directory.
298
299 RM is the name of the program to use to delete files associated with
300 each FILE (typically `/bin/rm'). RM-OPTIONS are options (such as `-f')
301 to be passed to RM.
302
303 If FILE is a libtool library, object or program, all the files associ‐
304 ated with it are deleted. Otherwise, only FILE itself is deleted using
305 RM.
306
307 When reporting a bug, please describe a test case to reproduce it and
308 include the following information:
309
310 host-triplet:
311 x86_64-apple-darwin11.2.0
312
313 shell: /bin/sh
314
315 compiler:
316 gcc
317
318 compiler flags:
319 -g -O2
320
321 linker:
322 /usr/llvm-gcc-4.2/libexec/gcc/i686-apple-darwin11/4.2.1/ld (gnu?
323 no)
324
325 libtool:
326 (GNU libtool) 2.4.2
327
328 automake:
329 automake (GNU automake) 1.11.1
330
331 autoconf:
332 autoconf (GNU Autoconf) 2.68
333
335 Written by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
336
338 Report bugs to <bug-libtool@gnu.org>.
339
341 Copyright © 2011 Free Software Foundation, Inc.
342 This is free software; see the source for copying conditions. There is
343 NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
344 PURPOSE.
345
347 The full documentation for libtool is maintained as a Texinfo manual.
348 If the info and libtool programs are properly installed at your site,
349 the command
350
351 info libtool
352
353 should give you access to the complete manual.
354
355
356
357libtool 2.4.2 October 2011 LIBTOOL(1)