Sponsored Content
Full Discussion: static and shared libraries
Top Forums UNIX for Advanced & Expert Users static and shared libraries Post 302157802 by JamesByars on Saturday 12th of January 2008 02:08:52 PM
Old 01-12-2008
static and shared libraries

can someone explain whether my understanding is correct

lets suppose we have a program that uses library x.

if x is static then the code of x will be part of our program, so if we're going to have 5 executables of our program, then each executable will have x as part of it.
Also, x does not have to be stored anywhere on the filesystem as it will be part of all execujtables.

if x is dynamic then the code of x will not be part of the program. Instead x will need to be placed somewhere on the system and the program x will look for x when it is run.

Thanks.
 

10 More Discussions You Might Find Interesting

1. Programming

Shared libraries

Hello everybody, I am having major problems at the moment with shared libraries and I have to little knowledge of them to solve them. So please, please help me :) Ok this is the problem: I have a library A, which uses B and C, and C uses again D. If I try to run A as plugin in apache,... (0 Replies)
Discussion started by: Micky
0 Replies

2. Programming

shared libraries

I am compiling code which produces .a and .la libraries. How can I produce .so libraries? I know that gcc -shared does but how? (2 Replies)
Discussion started by: thalex
2 Replies

3. UNIX for Dummies Questions & Answers

Clarification about shared Libraries

I have a doubt about the shared libraries. Where do you set the path for the shared libaries, for the dynamic loader to locate. Any suggestion would be of great help. thanks (3 Replies)
Discussion started by: ramkumar_gr
3 Replies

4. Programming

Static objects in libraries

Hi! I have the following problem with C++ programs on Unix: There is a binary executable program called, e.g. Main. It is dynamically linked with two shared libraries: Shared1 and Shared2. Both of these libraries, in turn, are statically linked with a static library called Static. This static... (0 Replies)
Discussion started by: maestro@altiris
0 Replies

5. Linux

Shared Libraries

How do i make a library shared say i have a library a.so which i have just compiled. I want to make it shared how do i make it Next Queation is what is the difference between a.so.0 a.so.1 a.so.2 & a.so :rolleyes: (1 Reply)
Discussion started by: wojtyla
1 Replies

6. UNIX for Advanced & Expert Users

Shared Libraries- CRITICAL !!

Hi, I am trying to create a shared library from a .c file using gcc -c -fpic -I/usr/local/include Chksum.C -o Chksum.o gcc -shared -o libtclcksum.so Chksum.o when i try to load this shared library libtclcksum.so in tclsh % load libtclcksum.so I get the following error: couldn't load... (1 Reply)
Discussion started by: archana485
1 Replies

7. Programming

Static libraries and fork()

Hi, Let's say there's an application compiled with a static library. So, if the application forks processes, then the static library is copied, also? Or the static library codes are shared between the processes of the application? Thanks in advance. (2 Replies)
Discussion started by: xyzt
2 Replies

8. Programming

Question about what Static Libraries are...

im used to windows dll which gets loaded at runtime, are static libraries the same? the ones i link with -l on gcc? i mean, if my app used libpng for example, and i compiled it to a single ELF executable and took it to another pc that have no libpng on it, will it work? or it will complain... (2 Replies)
Discussion started by: JonhyM
2 Replies

9. Red Hat

shared libraries problem

hi, while running the below query it gives the shared libraries prmblem, $ cd /oracle/app/product/fmw/asinst_1/bin/ $ ./opmnctl status /oracle/app/product/fmw/Oracle_IDM1/opmn/bin/opmn: error while loading shared libraries: libgcc_s.so.1: cannot open shared object file: Permission... (0 Replies)
Discussion started by: rahulsword
0 Replies

10. Solaris

Self contained shared libraries

Does anyone know whether it is possible to make self contained shared libraries ? (.so files). If so, what is the way to do it ? ---------- Post updated at 08:03 AM ---------- Previous update was at 07:56 AM ---------- On Solaris that is. (6 Replies)
Discussion started by: lkb
6 Replies
GLUSEPROGRAM(3G)						    OpenGL 3.3							  GLUSEPROGRAM(3G)

NAME
glUseProgram - Installs a program object as part of current rendering state C SPECIFICATION
void glUseProgram(GLuint program); PARAMETERS
program Specifies the handle of the program object whose executables are to be used as part of current rendering state. DESCRIPTION
glUseProgram installs the program object specified by program as part of current rendering state. One or more executables are created in a program object by successfully attaching shader objects to it with glAttachShader(), successfully compiling the shader objects with glCompileShader(), and successfully linking the program object with glLinkProgram(). A program object will contain an executable that will run on the vertex processor if it contains one or more shader objects of type GL_VERTEX_SHADER that have been successfully compiled and linked. A program object will contain an executable that will run on the geometry processor if it contains one or more shader objects of type GL_GEOMETRY_SHADER that have been successfully compiled and linked. Similarly, a program object will contain an executable that will run on the fragment processor if it contains one or more shader objects of type GL_FRAGMENT_SHADER that have been successfully compiled and linked. While a program object is in use, applications are free to modify attached shader objects, compile attached shader objects, attach additional shader objects, and detach or delete shader objects. None of these operations will affect the executables that are part of the current state. However, relinking the program object that is currently in use will install the program object as part of the current rendering state if the link operation was successful (see glLinkProgram() ). If the program object currently in use is relinked unsuccessfully, its link status will be set to GL_FALSE, but the executables and associated state will remain part of the current state until a subsequent call to glUseProgram removes it from use. After it is removed from use, it cannot be made part of current state until it has been successfully relinked. If program is zero, then the current rendering state refers to an invalid program object and the results of shader execution are undefined. However, this is not an error. If program does not contain shader objects of type GL_FRAGMENT_SHADER, an executable will be installed on the vertex, and possibly geometry processors, but the results of fragment shader execution will be undefined. NOTES
Like buffer and texture objects, the name space for program objects may be shared across a set of contexts, as long as the server sides of the contexts share the same address space. If the name space is shared across contexts, any attached objects and the data associated with those attached objects are shared as well. Applications are responsible for providing the synchronization across API calls when objects are accessed from different execution threads. ERRORS
GL_INVALID_VALUE is generated if program is neither 0 nor a value generated by OpenGL. GL_INVALID_OPERATION is generated if program is not a program object. GL_INVALID_OPERATION is generated if program could not be made part of current state. GL_INVALID_OPERATION is generated if transform feedback mode is active. ASSOCIATED GETS
glGet() with the argument GL_CURRENT_PROGRAM glGetActiveAttrib() with a valid program object and the index of an active attribute variable glGetActiveUniform() with a valid program object and the index of an active uniform variable glGetAttachedShaders() with a valid program object glGetAttribLocation() with a valid program object and the name of an attribute variable glGetProgram() with a valid program object and the parameter to be queried glGetProgramInfoLog() with a valid program object glGetUniform() with a valid program object and the location of a uniform variable glGetUniformLocation() with a valid program object and the name of a uniform variable glIsProgram() SEE ALSO
glAttachShader(), glBindAttribLocation(), glCompileShader(), glCreateProgram(), glDeleteProgram(), glDetachShader(), glLinkProgram(), glUniform(), glValidateProgram(), glVertexAttrib() COPYRIGHT
Copyright (C) 2003-2005 3Dlabs Inc. Ltd. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999. http://opencontent.org/openpub/. OpenGL 3.3 03/08/2011 GLUSEPROGRAM(3G)
All times are GMT -4. The time now is 04:00 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy