libtool: add page (#11454)

* libtool: add page

* Update libtool.md

Co-authored-by: K.B.Dharun Krishna <kbdharunkrishna@gmail.com>

* Update libtool.md

Co-authored-by: K.B.Dharun Krishna <kbdharunkrishna@gmail.com>

* Update libtool.md

Co-authored-by: K.B.Dharun Krishna <kbdharunkrishna@gmail.com>

* Update libtool.md

---------

Co-authored-by: K.B.Dharun Krishna <kbdharunkrishna@gmail.com>
pull/23/head
Sebastiaan Speck 2023-11-12 21:41:39 +01:00 committed by GitHub
parent 84fceb978b
commit 613f30030f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 32 additions and 0 deletions

32
pages/linux/libtool.md Normal file
View File

@ -0,0 +1,32 @@
# libtool
> Libtool is a generic library support script that hides the complexity of using shared libraries behind a consistent, portable interface.
> More information: <https://www.gnu.org/software/libtool/manual/libtool.html#Invoking-libtool>.
- Compile a source file into a `libtool` object:
`libtool --mode=compile gcc -c {{path/to/source.c}} -o {{path/to/source.lo}}`
- Create a library or an executable:
`libtool --mode=link gcc -o {{path/to/library.lo}} {{path/to/source.lo}}`
- Automatically set the library path so that another program can use uninstalled `libtool` generated programs or libraries:
`libtool --mode=execute gdb {{path/to/program}}`
- Install a shared library:
`libtool --mode=install cp {{path/to/library.la}} {{path/to/installation_directory}}`
- Complete the installation of `libtool` libraries on the system:
`libtool --mode=finish {{path/to/installation_dir}}`
- Delete installed libraries or executables:
`libtool --mode=uninstall {{path/to/installed_library.la}}`
- Delete uninstalled libraries or executables:
`libtool --mode=clean rm {{path/to/source.lo}} {{path/to/library.la}}`