shared-libraries

gcc: Enabling debug symbols in shared library

I am creating a shared library using gcc and suspect that there may be some memory leaks from the shared library. To debug, I need to enable debug symbols when creating the shared library. To build, I am using gcc -g ... [-g is for enabling debug information] But the library [.so file] size is not changing for both -g, and without -g. B...

Dlls unloading order in Unix and Windows

I have 2 dlls: A and B. From a code in dll A, I am loading dynamically the dll B (using dlopen on Unix and LoadLibrary on Windows). Is it guaranteed that B will be unloaded before A? Is there any difference between Unix and Windows behavior? ...

Makefile for Shared Libraries?

I've just written a Makefile to build a shared library, similar to the following: libmystuff.so: CFLAGS+=-fPIC -shared libmystuff.so: libmystuff.o otherstuff.o $(CC) $(CFLAGS) -o $@ $^ I like to avoid doing explicit actions when this seems like a common operation, but it seems there's no implicit rule or other built-ins to standar...

Merge multiple .so shared libraries

Say I have a.so and b.so. Can I produce c.so as a single shared library with all the functions exported by a and b, of course resolving all intra-dependencies (i.e. all functions of b.so called by a.so and the other way around)? I tried gcc -shared -Wl,soname,c.so -o c.so a.so b.so but it doesn't work. Same goes if I archive a.o and ...

what are the pros and cons of using a DLL?

Windows still use DLLs and Mac programs seem to not use DLL at all. Are they benefits or disadvantages of using either technique? If a program installation includes all the DLL it requires so that it will work 100% well, will it be the same as statically linking all the libraries? ...

nm reports symbol is defined but ldd reports symbol is undefined

I'm having a linking problem. I need to link against a shared library libfoo.so that depends on a function read which I would like to define myself in the file read.c. I compile and link everything together but at runtime I get the error /home/bar/src/libfoo.so: undefined symbol: sread. nm reports the symbol is defined $nm baz | g...

Linux Shared Libraries c++

Hi all. I have a Shared Library wise.so. How I can use it in my programm? Do I need to include headers of that library? I work with Eclipce under Linux. I have set a path to the library using -L and -l. But my function is not visible in the program. Could you explain me how does Shared Library work? Regards. EDIT: I get the follow...

Creating program libraries in Windows and LINUX [C++]

I am planning to use libraries in my C++ program. Development is happening on LINUX but application is designed to compile on both LINUX and Windows. I understand direct equivalent for shared libraries(.so) in windows is DLL, right? In LINUX using g++, I can create shared library using -fPIC and -shared flags. AFAIK, there is no other ...

undefined reference to the shared library function

Hi all! I have implemented a shared library in Linux and try to test it, but I get an error "undefined reference to `CEDD(char*)'". I use Eclipse with following parameters: Path to include files (here is everything ok) Path to the library and its name. Path is correct and the name is WISE_C (full name: libWISE_C.so) My Code: Test...

C programming with Eclipse (library mystery)

When I connect a library to my program, Eclipse doesn't generate any executable file, I get only an object file. When I disconnect the library from my program (delete all paths and library functions), I get an executable. However, I don't get any error in the first case. What is going wrong? I work with: Linux, C, Eclipse. Log: ** ...

How to deal with Libraries which are needed in many projects (+ svn)

Good morning! We have a SVN-Repository, which holds a VS-Solution. In this solution are many web-projects and each of them is using a JavaScript-Lib which is atm developed in an extra project (let's call it DemoWeb) and deployed manually to the other Web-Projects. This construct has many disadvantages: You can forget a project to copy...

Installing shared assemblies into the GAC for development and build

I've read a few posts around here about the GAC and why you should never deploy applications by installing shared assemblies into the GAC. This i can see sense in as it should make updating applications on client machines easier. However, there are two areas where i could see the GAC being useful is for during development and on a buil...

Static class members in shared library

I have a class like class K { static int a; static int b; } I would like to create a shared library (dll) containing this class K. In a cpp file compliled in the library I call int K::a = 0; int K::b = 0; to instantiate the static variables. The dll does compile without errors, but when I use the library, I get the unresolved e...

GCC How to export a function from static library

Hi, I want to create a shared library from several static libs using GCC under OS X. In some static libs, there's no code in shared library call it, I just want to export the symbols in these static libs. This works under debug mode, but doesn't under release mode (especially when I enable the dead code striping). I can understand the ...

Can a Singleton Class inside a DLL be shared across processes?

I am creating a custom .net hardware framework that will be used by other programmers to control some hardware. They will add a reference to our DLL to get to our hardware framework. I am in need of a shared class that will be accessed from multiple applications (processes). The singleton pattern seems to be what I need but it only wor...

Can two versions of the same library coexist in the same Python install?

The C libraries have a nice form of late binding, where the exact version of the library that was used during linking is recorded, and thus an executable can find the correct file, even when several versions of the same library are installed. Can the same be done in Python? To be more specific, I work on a Python project that uses some...

Creating a custom Document Library in SharePoint

I have a document library in my SharePoint page and there are 10 documents in it. If UserA is logged in i want him to only see 5 of those doucments in that document library. How can i create some custom document library for this to work? I have MOSS installed as well. Thanks in advanced! ...

Error while opening shared object: SunGrid Engine

Hi all, My application uses the Sun N1 grid engine through the API DRMAA present as shared object libdrmaa.so . I am using dlopen and dlsym to acess functions of the library. That works fine. Now if I try to link it form command line the executable is built but executing it gives the error " Cannot open shared object file". Can anyone s...

Alternatives to dlsym() and dlopen() in C++

Hi all, I have an application a part of which uses shared libraries. These libraries are linked at compile time. At Runtime the loader expects the shared object to be in the LD_LIBRARY_PATH , if not found the entire application crashes with error "unable to load shared libraries".Note that there is no guarantee that client would be hav...

Problem in using C dynamic loading routines

Hi all I have an application consisting of different modules written in C++. One of the modules is meant for handling distributed tasks on SunGrid Engine. It uses the DRMAA API for submitting and monitoring grid jobs.If the client doesn't supports grid, local machine should be used The shared object of the API libdrmaa.so is linked at c...