shared-libraries

Symbol not found when dynamic library is moved.

Hi, I have an app that depends on a dynamic library that is not in a system location. If the library is located in the location from which the executable was linked and LD_LIBRARY_PATH is set to that directory, the application runs. If the libraries are copied to another directory and LD_LIBRARY_PATH is reset, the application won't st...

Error including shared library

Hi there, I am new to g++ and Makefile. I am trying to link this BeBOP SMC library, which is in my lib directory. Under the lib directory are bebop_util and sparse_matrix_converter, both of which have already been built without errors. I see libbebop_util.a, libbebop_util.so under bebop_util and libsparse_matrix_converter.a, libsparse_m...

ExpressionEngine 2: Sharing Libraries, or Loading Libraries from other Modules

I’ve got a number of custom modules that use a few of the same common libraries, in particular my database class. Is there a place I can put this commonly used class for use in modules via $this->EE->load->library('mydb'); or, is there a way to load that class in one module when it’s located in the libraries folder of another module? ...

Linux FreeBSD shared object problem

Hi Guys, I am trying to build an application for freebsd which links to a shared object "share.so" built on linux. I also have freebsd linux compatible libraries under /usr/compat/linux/lib. I am able to compile my application. But while linking to "share.so" I am getting bunch of errors as share.so(built on linux) needs to access librar...

Static / global variables in shared library in C language

Possible Duplicate: Is global variable in a shared library / dll, shared across process Hi stackoverflow, I have just a little question about using .so in C programming. I want to use static and global variables in a shared library. If this library is loaded and used by several processes, will these processes share the global ...

What is a reliable way to determine which shared library will be loaded across linux platforms?

Hello, I need to find out which library will be loaded given in the information returned from /sbin/ldconfig. I came up with the following: #!/bin/bash echo $(dirname $(/sbin/ldconfig -p | awk "/$1/ {print \$4}" | head -n 1)) Running this results with: $ whichlib libGL.so /usr/X11R6/lib This a two part question: Will this produ...

How do I determine the version of a library in Unix without 'strings' or 'what'

I have a copy of the expat XML processing library on an embedded system running busybox 0.61. I need to find out the version of the library, but I don't have the 'strings' or 'what' applications on the image, nor can I recompile the image. These busybox images that I'm forced to use a grossly impaired. Is there any way for me to find ...

Methods of managing source code

I've written a fair amount of software over recent years, most of which all tend to share one or more common libraries. (The most common library, being one that I use for calling SQL stored procedures and returning arrays of objects) I'm not happy with the way I manage the libraries, and I'm looking for suggestions to improve the way I ...

Reference to Library Binary - Debug or Release version?

I asked a question earlier today (Methods of Managing Source Code) as I've been unhappy with the way I manage my shared libraries' source code. As a result of the answers posted, I have found a better method. I'm now working through my repository tidying up all my source code, however as a result I now have another question... Whilst I...

Force GCC to notify about undefined references in shared libraries

I have a shared library that is linked with another (third-party) shared library. My shared library is then loaded using dlopen in my application. All this works fine (assuming files are in the proper path etc). Now, the problem is that I don't even need to specify to link against the third-party shared library when I link my library. G...

How to write C .so library to subsitute existing C++ .so library?

Hi, all Let me explain the scenario. We have a legacy C++ compiled .so library. The functions in this library are declared with extern "c" {}, so the library can be used by both C and C++ program, plus, for some reason it was created with--static-libgcc option. This old library is very old and hard to maintain. Now we haved managed to...

Simple libtool alternative?

Being perfectly satisfied with old-style Makefiles, I am looking for a simple alternative to libtool. I do not want to switch to automake, and I keep running into problems with libtool when I try to use it directly. The latest one is 'unsupported hardcode properties', and I am getting fed up with the lack of complete documentation that j...

Set path to .dylib path in Cocoa app

I'm developing a Mac OS X Cocoa app and want to use several .dylib libraries. How do I set the path to a .dylib which resides somewhere in my Application folder? What if the path resides in different directories on different computers or is not existent at all? ...

Unix program using the wrong function from shared libraries

Hello, I'm working on refactoring a suite of old utilities and creating a new server that's going to use common code from all of them to unify their functionality and allow external access by remote clients. For each utility, I'm taking the code I need for the server and refactoring it out into a shared library so that the utility and ...

When running a shell script, how can you protect it from overwriting or truncating files?

If while an application is running one of the shared libraries it uses is written to or truncated, then the application will crash. Moving the file or removing it wholesale with 'rm' will not cause a crash, because the OS (Solaris in this case but I assume this is true on Linux and other *nix as well) is smart enough to not delete the in...

OpenGl Deployment: Running it on other peoples computers!

I'm kind of confused here. Im using a mac trying to develop an opengl game. The Opengl frame work is dynamically linked. So therefore i need to force static or bundle it right? Wait, wait, i read that opengl is on all macs now, yet there's extra stuff u get if u install Xcode.(i have it installed). Anyways, I want this to work on OSX, w...

Making a 64 bit shared library that dynamically links to a 32 bit library on Mac OS X Snow Leopard

Update: After some more reading I see that this problem is totally general, you can't mix architectures in the same process, so 64 bit Java cannot dlopen() a 32 bit library like FMOD. Is there any possible workaround for this, keeping in mind I'm writing my own C interface to the FMOD library? I need to make a 64-bit dylib on Max OS X b...

gcc -fvisibility problem

I have the problem described here: http://gcc.gnu.org/wiki/Visibility Exception class exported from shared library cannot be caught when used outside of the library, and the program terminates. I added __attribute__((visibility("default"))) to the class declaration: class __attribute__((visibility("default"))) MyException { ... ...

C++ -malign-double compiler flag

I need some help on compiler flags in c++. I'm using a library that is a port to linux from windows, that has to be compiled with the -malign-double flag, "for Win32 compatibility". It's my understanding that this mean I absolutely have to compile my own code with this flag as well? How about other .so shared libraries, do they have be r...

How should platform specific lib files be named?

Hello, I'm working on a C++ project that produces a lib that other teams use. It's being produced in a few different flavours: Win32 Debug Dynamic Win32 Debug Static Win32 Release Dynamic Win32 Release Static x64 Debug Dynamic x64 Debug Static x64 Release Dynamic x64 Release Static I'm wondering what the best wisdom is on how to nam...