Sponsored Content
Top Forums Programming How to make use others' C library installed not for the system-wide (Ubuntu/Linux)? Post 303043076 by yifangt on Friday 17th of January 2020 12:36:01 PM
Old 01-17-2020
Thanks Greg, and Neo---although your input is more than I expected.
I found the topic deviated from the original point I was asking, because there are many aspects hidden behind my question that I do not know. However, It is easier for me to learn by example, especially on coding.
Normally, I found there is one layer missing to me when others library is installed in the system. Simply sudo apt-get install / sudo yum install etc does not help me in actual C coding from scratch.

Here, I want to stick to the tech and only the tech part, i.e: "In my this example, what is the correct/standard way to make use the downloaded htslib not installed system-wide? "

1) I want to confirm the options of my command line that are correct in general, while I'm trying to find the official reference (which normally do not have real hands-on example, e.g $ORIGIN);

2) Trying to catch the standard way to use non-system *.a and *.so files in C coding on top of point 1). Here "standard way" can be replaced with "common way" if there is not all-for-one solution, which is normally the case.
Two examples, (1) the standard way to use shared objects (.so) is to install them in the system directories Thanks Greg! This cleared my confusion. The not-answered part is how to make use of the *.so file when it is not installed system wide. (2) I saw people usually use static library for *.a files and dynamic library for *.so files, but Greg consistently use archives for *.a files and shared objects for *.so ones. It seems to me that they are different names for the same thing, but I might be wrong.
This was a so big confusing wording! And I owe an apology to all who read this post!
3) My point is what the right way(s)---may not be the best way--- is to use them.
Can I ask in another way:
What is the best practice to use others library (static *.a and shared *.so) not installed system-wide in C programming? I may need to start a new thread before the topic is veered too far off.

Thank you so much for your time!

Last edited by yifangt; 01-18-2020 at 02:47 PM..
 

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
SYNCPACKAGE(1)						      General Commands Manual						    SYNCPACKAGE(1)

NAME
syncpackage - copy source packages from Debian to Ubuntu SYNOPSIS
syncpackage [options] <.dsc URL/path or package name> DESCRIPTION
syncpackage causes a source package to be copied from Debian to Ubuntu. syncpackage allows you to upload files with the same checksums of the Debian ones, as the common script used by Ubuntu archive administra- tors does, this way you can preserve source files integrity between the two distributions. syncpackage will detect source tarballs with mismatching checksums, and can perform fake syncs. WARNING
The use of syncpackage --no-lp, which generates a changes file to be directly uploaded to the Ubuntu primary archive or a PPA, is discour- aged by the Ubuntu Archive Administrators, as it introduces an unnecessary window for error. This only exists for backward compatibility, for unusual corner cases (such as fakesyncs), and for uploads to archives other than the Ubuntu primary archive. Omitting this option will cause Launchpad to perform the sync request directly, which is the preferred method for uploads to the Ubuntu primary archive. OPTIONS
-h, --help Show help message and exit -d DIST, --distribution=DIST Debian distribution to sync from. Default is testing during LTS cycles, and unstable otherwise. -r RELEASE, --release=RELEASE Specify target Ubuntu release. Default: current development release. -V DEBVERSION, --debian-version=DEBVERSION Specify the version to sync from. -c COMPONENT, --component=COMPONENT Specify the component to sync from. -b BUG, --bug=BUG Mark a Launchpad bug as being fixed by this upload. -s USERNAME, --sponsor=USERNAME Sponsor the sync for USERNAME (a Launchpad username). -v, --verbose Display more progress information. -F, --fakesync Perform a fakesync, to work around a tarball mismatch between Debian and Ubuntu. This option ignores blacklisting, and performs a local sync. It implies --no-lp, and will leave a signed .changes file for you to upload. -f, --force Force sync over the top of Ubuntu changes. --no-conf Do not read any configuration files, or configuration from environment variables. -l INSTANCE, --lpinstance=INSTANCE Launchpad instance to connect to (default: production). --simulate Show what would be done, but don't actually do it. LOCAL SYNC PREPARATION OPTIONS
Options that only apply when using --no-lp: --no-lp Construct sync locally, rather than letting Launchpad copy the package directly. It will leave a signed .changes file for you to upload. See the WARNING above. -n UPLOADER_NAME, --uploader-name=UPLOADER_NAME Use UPLOADER_NAME as the name of the maintainer for this upload instead of evaluating DEBFULLNAME and UBUMAIL. This option may only be used in --no-lp mode. -e UPLOADER_EMAIL, --uploader-email=UPLOADER_EMAIL Use UPLOADER_EMAIL as the email address of the maintainer for this upload instead of evaluating DEBEMAIL and UBUMAIL. This option may only be used in --no-lp mode. -k KEYID, --key=KEYID Specify the key ID to be used for signing. --dont-sign Do not sign the upload. -d DEBIAN_MIRROR, --debian-mirror=DEBIAN_MIRROR Use the specified mirror. Should be in the form http://ftp.debian.org/debian. If the package isn't found on this mirror, syncpack- age will fall back to the default mirror. -s UBUNTU_MIRROR, --debsec-mirror=UBUNTU_MIRROR Use the specified Debian security mirror. Should be in the form http://archive.ubuntu.com/ubuntu. If the package isn't found on this mirror, syncpackage will fall back to the default mirror. ENVIRONMENT
DEBFULLNAME, DEBEMAIL, UBUMAIL Used to determine the uploader (if not supplied as options). See ubuntu-dev-tools(5) for details. All of the CONFIGURATION VARIABLES below are also supported as environment variables. Variables in the environment take precedence to those in configuration files. CONFIGURATION VARIABLES
The following variables can be set in the environment or in ubuntu-dev-tools(5) configuration files. In each case, the script-specific variable takes precedence over the package-wide variable. SYNCPACKAGE_DEBIAN_MIRROR, UBUNTUTOOLS_DEBIAN_MIRROR The default value for --debian-mirror. SYNCPACKAGE_UBUNTU_MIRROR, UBUNTUTOOLS_DEBSEC_MIRROR The default value for --ubuntu-mirror. SYNCPACKAGE_KEYID, UBUNTUTOOLS_KEYID The default value for --key. SEE ALSO
requestsync(1), ubuntu-dev-tools(5) AUTHOR
syncpackage was written by Martin Pitt <martin.pitt@canonical.com> and Benjamin Drung <bdrung@ubuntu.com>. This manual page were written by Luca Falavigna <dktrkranz@ubuntu.com> Both are released under GNU General Public License, version 3. ubuntu-dev-tools June 2010 SYNCPACKAGE(1)
All times are GMT -4. The time now is 05:21 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy