Sponsored Content
Top Forums Programming How to make use others' C library installed not for the system-wide (Ubuntu/Linux)? Post 303043071 by GRMartin on Friday 17th of January 2020 09:50:13 AM
Old 01-17-2020
rpath is actually a linker option rather then a compiler option. gcc passes it to ld.



Well, th estandard way to use shared objects (.so) is to install them in the system directories used for that purpose (/usr/lib etc.) but that's not always possible. The archive (.a) allows you to link objects into your executable which produces a larger exectable but gets around the problem. If the library is updated you must recompile whereas with a shared object you only need to recompile if the update breaks your code.


For the loader to load a shared object at runtime it must know where to find them. rpath tells the linker to embed the path in the header of the executable but if the so is moved the loader won't be able to load it. ORIGIN resolves to whereeve the binary is at runtime so as long as the library stays with the executable it works.


-Greg.
This User Gave Thanks to GRMartin For This Post:
 

9 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

links working system wide

I have created symbolic links to several frequently used commands, for example: "lt" is a link to "ls -ltrgo|tail". What can I do to make these links available system-wide, or at least in the directories my coworkers are in most of the time? I have copied the link to several directories, and... (6 Replies)
Discussion started by: jpprial
6 Replies

2. UNIX for Advanced & Expert Users

System wide CDE setup

Does anyone know how to make system wide changes to the CDE's front panel icons? I dont know if it matters but im running Solaris 9. THanks (1 Reply)
Discussion started by: meyersp
1 Replies

3. UNIX for Dummies Questions & Answers

FIND function - system wide

Hi, I have a task to search for a file called 'Xstartup' in the whole system because there might be different versions of it which overrite eachother. Can anyone suggest a smart command to run this search ? The machine needs to scan every single folder beginning from root. Please help, I am... (5 Replies)
Discussion started by: DGoubine
5 Replies

4. Filesystems, Disks and Memory

How to mount/make a FAT system on Linux

Yea i was wondering how i would mount, and create a FAT directory that way i can save files in the FAT directory in a windows system and be able to access them on Linux systems. Or if there is any other way to share files between Linux and Windows. Any responds will help... thanks! (2 Replies)
Discussion started by: kyoist
2 Replies

5. Shell Programming and Scripting

system wide password change

Hello, I am new to shell scripting and I was trying to write a script that would force a system wide password change except for admins. I am having some trouble and any help that someone could give me would be greatly appreciated. I am trying to do it by using the UID as the marker for anyone... (6 Replies)
Discussion started by: kilemark
6 Replies

6. Linux

System wide find and sort

Hi, I need to look for a config file (ldap.conf) and pick the latest modified file. `locate` tells me there are many ldap.conf's, some in /etc, /usr, /home, etc. Is there some way I can sort them by last modified time via bash? I was thinking maybe I could pipe the output of `locate` to `ls... (4 Replies)
Discussion started by: Housni
4 Replies

7. Linux

How to run User-mode Linux installed with synaptic package manager in Ubuntu 10.10

I have installed user-mode linux kernel in Ubuntu 10.10 with the help of Synaptic package manager. But I'm not getting how to run it. If we install it manually, we've to run it using the executable binary file. But here, I'm unable to locate any such file. Please help.... Thanking You.... ... (0 Replies)
Discussion started by: rohitadeshmukh1
0 Replies

8. Red Hat

Changing system-wide for umask

Hi everybody, How can I change the default UMASK for non root users, e.g. I want the umask for every new created user will be 0044. Thanks (6 Replies)
Discussion started by: leo_ultra_leo
6 Replies

9. Shell Programming and Scripting

System-wide search

When looking for wherever a program or a filename appears in the system, a short scrip is "findinner" which another script calls with a long parameter list consisting of path names ending with ".sh" or ".menu". "findinner" looks like this: # If not .savenn file, show name and result of grep. #... (4 Replies)
Discussion started by: wbport
4 Replies
ldd_pa(1)						      General Commands Manual							 ldd_pa(1)

NAME
ldd_pa: ldd - list dynamic dependencies of executable files or shared libraries on PA-RISC systems SYNOPSIS
filename... Remarks This manpage describes on PA-RISC systems. For on Integrity systems, see ldd_ia(1). DESCRIPTION
is a command that can list the dynamic dependencies of incomplete executable files or shared libraries. lists verbose information about dynamic dependencies and symbol references. If the object file is an executable file, lists all shared libraries that would be loaded as a result of executing the file. If it is a shared library, lists all shared libraries that would be loaded as a result of loading the library. uses the same algorithm as the dynamic loader and to locate the shared libraries. See and sections in dld.sl(5) for more information. Options recognizes the following options: PA-RISC 32-bit only. Used in conjunction with and/or to force to bind all dependent libraries and report unsats. By default the smartbind mechanism in only binds libraries whose symbols are explicitly referenced. Check reference to data symbols. Check reference to data and code symbols. Display the search path used to locate the shared libraries. Display all dependency relationships. EXTERNAL INFLUENCES
Environment Variables uses the following environment variables to locate shared libraries. PA-RISC 64-bit mode: A colon-separated list of path names which defines the search path for shared libraries at runtime. See in dld.sl(5) for more information. A colon-separated or space-separated list of libraries which the dynamic loader implicitly loads first at runtime. See in dld.sl(5) for more information. A colon-separated list of path names which defines the search path for shared libraries at runtime. See and in dld.sl(5) for more information. The following internationalization variables affect the execution of Determines the locale category for native language, local customs and coded character set in the absence of and other environment variables. If is not specified or is set to the empty string, a default of (see lang(5)) is used instead of Determines the values for all locale categories and has precedence over and other environment variables. Determines the locale that should be used to affect the format and contents of diagnostic messages written to standard error. Determines the locale category for numeric formatting. Determines the locale category for character handling functions. Determines the location of message catalogs for the processing of If any internationalization variable contains an invalid setting, behaves as if all internationalization variables are set to See envi- ron(5). DIAGNOSTICS
prints the record of shared library path names to stdout. The optional list of symbol resolution problems are printed to stderr. returns zero when the operation is successful. A non-zero return code indicates that an error occurred. EXAMPLES
By default prints a simple dynamic path information. This consists of the dependencies recorded in the executable (or the shared library) followed by the physical location where these libraries are found. The option causes to print dependency relationship along with the dynamic path information. The option causes to analyze all symbol references and print information about unsatisfied code and data symbols. The option causes to print the dynamic search path lists used to load the libraries in the order that the path lists are referenced: WARNINGS
does not list shared libraries explicitly loaded using dlopen(3C) or shl_load(3X). FILES
output file 32-bit PA-RISC dynamic loader 64-bit PA-RISC dynamic loader 32-bit dummy executable loaded to check the dependencies of shared libraries. 64-bit dummy executable loaded to check the dependencies of shared libraries. message catalog SEE ALSO
System Tools ld(1) invoke the link editor Miscellaneous a.out(4) assembler, compiler, and linker output dld.sl(5) PA-RISC dynamic loader Texts and Tutorials
All times are GMT -4. The time now is 08:33 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy