Programming :: Can't Load Shared Library (but It's Right There!)?
Feb 15, 2011
I have visited these boards a few times, but never posted. Here's my problem: I was given the source to a program and asked to get it running on a 64-bit Debian 2.6.26 machine. Currently it is working on 2 64-bit OpenSUSE machines.
The application uses TCL TK for a GUI and everything compiles just fine; however, on startup, the user must enter one of three possible modules to load; when attempting to load these modules (tcl 'load' function), I receive this error:
Code:
Error in startup script: couldn't load file "../Build/libMpf.so": libTransReaders.so: cannot open shared object file: No such file or directory
while executing
"load ../Build/libMpf.so Mpf"
("eval" body line 1)
invoked from within
"eval load ../Build/${px}${i}${sx} $i"
[Code]...
View 8 Replies
ADVERTISEMENT
Aug 25, 2010
Our application uses a dynamically loaded shared object library (codec library) to compress and decompress audio streams.
There happens to be several static and global variables in this shared object library. Hence it is not possible to process two interleaved unrelated media streams using this shared object codec library because each stream corrupts/changes the contents of these static/global variables.
Is there a way through which a context save (save contents of data segment of shared object) and a context load (load previously saved contents of data segment of shared object)operation can be performed on the shared object library. This way the context for each media stream can be saved and loaded before and after processing the "other" media stream respectively.
View 3 Replies
View Related
Apr 7, 2009
I'm reading about shared, static, and dynamic libraries. What is SDL? Is it static, shared, or dynamic?
I always thought a library would be a lot of .h and .cpp files compiled separately into .o files and then if you compiled your own program you could use the -l parameter to link the library and it was all compiled together. Now I'm not so sure.
I don't even see any SDL .cpp files in my system anywhere. All I have are lots of SDL .h files in /usr/include/SDL and I don't really understand the code in them.
I'm making a wild guess here: SDL is a shared library. SDL itself is NOT compiled into my program, therefore SDL must be on any system my program tries to run on. When I compile and link SDL all it needs is the header files to know what SDL function and objects it can use. And then on every system it uses an already compiled SDL shared library thingy somewhere.
So... where is that part of SDL? All I can find are header files.
I'm thinking the advantage of shared libraries is that someone could say update SDL on their own system and take advantage of the new features without having to download new executables with the new version of SDL compiled into them for every program that uses SDL.
So if I'm making an editor and a game engine and they both use a lot of the same .cpp and .h files that I wrote and I'm tired of updating one and then the other and I need to turn them into a library, then a shared library might be kind of a silly solution. I could just make a static library. Right? Because it's not SDL. Nobody else is ever going to use this library.
View 6 Replies
View Related
Jun 7, 2010
I have tried to compile the fakeroot 1.15 on centos 5, but it always failed to load the shared library libfakeroot.so file. I tried compiling 32 as well as 64 bit version of library but always it failed to load the library and give the following error:
ERROR: ld.so: object 'libfakeroot.so' from LD_PRELOAD cannot be preloaded: ignored.
any workaround to get this working?
View 1 Replies
View Related
Aug 27, 2009
My code needs to link to some libraries. In my project file, I specify linker to link to abc library, for example. By default, does gcc link to libabc.a or libabc.so ? What if I really need to specify static or shared, how do I do that?
View 4 Replies
View Related
Feb 26, 2010
I have written a simple library and ended up with a .so file. I have a header file from writing the code that describes how to use the functions in the source code I have written. I think this .h files needs to be available to other programs that access this code.
I have seen lots of tutorials on how to copy the .so file to the relevant directories and make links with the version number. What I can't find is where to put the header file so that any programs I write to use my new library can access the header.
Hope this makes sense. For example, I might use <stdio.h> normally, I will need to access <mylibrary.h> once mylibrary.so is loaded (as far as I understand!)
It's weird, I've been using C compilers for embedded processors over ten years now and never given a second thought to how libraries and headers work behind the scenes!
View 6 Replies
View Related
May 27, 2010
I think that the solution is very simple, but I cannot reach this solution. I'm trying to build an B.so that uses A.so.
A.so is compiled using C;
B.so is compiled using C++;
Inside "Aso.h" file I'had declared:
Code:
#ifdef __cplusplus
extern "C" {
#endif
[code]....
There's no error to compile that, this library seems to be compiled correctly, but using the "nm" command the Aso.so functions appear with "U" of undefined. Trying to build an executable using the Bso.so library, I got this error: /lib/../lib/libBso.so: undefined reference to `foo(int, int, int)' I think that to solve this problem it's only link the Aso.so with the .o files generated at the compilation phase of my Bso. Using the "ldd" command I'm able to see that Bso.so depends on Aso.so, so what am I missing?
View 2 Replies
View Related
Apr 12, 2014
I have written a shared library and successfully used debhelper 9 to create a Debian package from source using a Makefile generated by cmake. I then went about writing a python wrapper to that library and wish to package that wrapper in with the library so I can have a single distributable rather than 2 separate ones.
All of my attempts so far have me placing my python source and a setup.py file in the same directory as the makefile at the time where I call debuild.
From here I have tried a couple different configurations to my debian/rules file as seen below:
Attempt 1:
# -*- makefile -*-
%:
dh $@ --with-python2 --buildsystem=python_distutils
This try seemed to package up the python stuff nicely but proceeded to ignore my makefile for the shared library and therefore ultimately failed.
Attempt 2:
# -*- makefile -*-
%:
dh $@ --with-python2
This try ran make, but completely ignored the python stuff. From some research I have gathered that the --buildsystem flag tells debuild to ignore any makefiles in the directory, which obviously causes a problem in my case.
Another attempt was to modify the build dependency to first run make and then call the python build process that file looked like this
Attempt 3:
# -*- makefile -*-
build:
dh $@
dh $@ --with-python2 --buildsystem=python_distutils
%:
dh $@ --with-python2 --buildsystem=python_distutils
This appears to somewhat work as both processes do build, but a few of the python files are still not getting installed.
Is this the way I should be going about doing this? I've noticed that most python wrappers tend to package themselves individually and then make that package dependent on the library it is attempting to wrap.
View 0 Replies
View Related
Mar 18, 2010
I am currently having an application package which provides some applications.however API's for the same will be provided by third party.Currently i am using a dummy functions in my code.Now i have a release by the third party for the first Api version.They have given a set of .so libraries.How do i integrate this with my application?Also i need an idea in general to how to go ahead with programming in such a development scenario where in it is distribued?
View 3 Replies
View Related
Feb 11, 2009
I am using Centos 5.2, and I installed all of the available gnome and gnome development libraries available via the "add software" menu item. Still, when running some programs, I get the following error message:
"error while loading shared libraries: libzvt.so.2: cannot open shared object file: No such file or directory"
If I understood it correctly, libzvt.so.2 is part of some gnome libs... where to find and how to install them?
View 5 Replies
View Related
Jul 13, 2011
How can I see if a shared library is currently loaded? (i.e. system-wide, process agnostic)How can I see all shared libraries loaded by a process?
View 2 Replies
View Related
May 2, 2011
I built a shared library for some API functions (C files) and compiled them with gcc. Now I'm writing a c++ application (compiling with g++) and want to link my C API shared library and be able to use it from my application. Is this possible? At first instance, it's not quite working for me. I was able to link my shared lib just fine with a C application but got an "undefined reference to `apiFunction()'" error when attempting to do it with g++. Just want to see if anyone has any insight on this subject and make sure this mix is even is allowed.
View 1 Replies
View Related
Feb 18, 2010
I am trying to install the WebSphere MQ Client on a Red Hat Version 5 server with OS x86_64bit.. When I try the first step of there process it fails trying to find shared libraries:ERROR: Installation will not succeed unless the license agreement can be accepted. The MQ Client is 32 bit, but I am told it should work on 64 bit server...
View 2 Replies
View Related
Nov 19, 2010
I need a design which requires complete modularity and speed. I have a huge monolithic process that i'm seperating now with individual modules as libraries.I'm just worried how to go about the no of shared libraries? for example can i have 10 shared libraries in place of 1? what will be the advantage in that case?
View 2 Replies
View Related
Feb 17, 2011
I installed alsaequal URL....l and dependencies ladspa-sdk and caps, all via sbopkg.I'm getting this 'cannot open shared library' error even though that file does in fact exist at the indicated location.Has anyone run into this or successfully installed alsaequal? I also tried on a 13.1 install and got the same result.
View 4 Replies
View Related
Jan 12, 2010
I am trying to add some functions to a Postgresql database. The functions use a shared library which they think is: /usr/lib/pgsql/postgis-1.4.so They say: "ERROR: could not load library "/usr/lib/pgsql/postgis-1.4.so": libgeos_c.so.1: cannot open shared object file: No such file or directory"
I cd to /usr/lib/pgsql/ and do an ls. postgis-1.4.so is there. libgeos_c.so.1 is as well (and it's in /usr/lib/ )
Both the files seem to exist. I cannot copy either of them (cp says "cannot stat '[file]': No such file or directory".
View 6 Replies
View Related
Oct 10, 2010
I'd like to know if it is possible to play shared music library of iTunes on Ubuntu.
View 2 Replies
View Related
Apr 8, 2010
I've been looking awhile now, but no patch for this is yet to be found. Does anyone have more info, or better, a fix? Last version from GNU's ftp server is also vuln as of this writing.
View 3 Replies
View Related
Jul 13, 2011
I am trying to test a shared library that I made in MATLAB. I'm not an expert, so if you need other info, or if i'm just not making sense I can try to clarify, or provide further info.First off:I'm using MATLAB 2011a, compiling c with the MATLAB compatible gcc-4.3, and all of this is running on 64 bit opensuse 11.3.
1) I've made a c shared library, header, and wrapper.
2) I've set the environment variable.
3) I'm having trouble creating an executable to test my .so with
I've also contacted MATLAB tech support, and they didn't help much. They said the wrapper (libatr2.c) is intended to be a template, and may not actually run my library unless eddited. Perhaps I should edit it to reference something called main? I'm not sure how to do that if that's the case.
View 1 Replies
View Related
Jun 24, 2010
I've decided to make the plunge and switch to linux! Actually, I plan to dualboot Win XP and Ubuntu 10.04. I figure I might as well keep XP for a few games and for syncing my iPod nano with iTunes.I want to set up my computer so that my music library on my windows partition will be accessible to Banshee (or perhaps another program) so that I can listen to my tunes in Linux. However, I want to make it so that Banshee can't actually edit my files/tags (I want to leave iTunes in charge of that). I just want it to be able to play the mp3s and aac's (none of my files are in DRM format luckily). So I guess what I am asking, is can I make my iTunes folder on the Windows partition READ-ONLY to the Linux OS maybe?
View 1 Replies
View Related
Jun 22, 2011
I am able to build a shared library under solaris with
/usr/local/bin/g++ -G -o output.so file1.o file2.o file3.o.
How do I build the shared library under linux using the same files?
I have tried to use the same command /usr/local/bin/g++ -g -o but I got some undefined references, even if those references are defined in one of the object files.
View 3 Replies
View Related
Oct 12, 2010
I'm trying to install Google Chrome on Slackware 13.1 (32 bit) and I have a little problem with shared libraries.The google-chrome applications looks for nss libraries with file names ending in apparently non-standard ways (for me and my system, at least): for example, it looks for libnns3.so.1d, but I have libnss3.so, so I created a symbolic link libnss3.so.1d -> libnss3.so. The problem now is that if I run google-chrome as my usual regular user I still get the missing library error, but if I run it as root I don't get the error anymore (well, it still complains about other libraries missing for the same naming reason, but anyway it's able to find the one I just renamed). The permissions seems fine to me:
Code:
/usr/lib# ls -l | grep seamonkey
lrwxrwxrwx 1 root root 15 Jun 16 22:03 seamonkey -> seamonkey-2.0.4
drwxr-xr-x 14 root root 4096 Oct 12 10:47 seamonkey-2.0.4
[code].....
View 7 Replies
View Related
Nov 30, 2010
I need to find the memory usage of a shared library loaded in Linux environment.
I need this information for deciding on whether to make the library part in to application or a seperate application itself.
View 3 Replies
View Related
Feb 15, 2011
I want to create a Java Servlet that will interface with a shared object (.so) library. The library is a component provided by a SDK manufacturer. This Java Servlet will be hosted on Apache Tomcat running in the Amazon Web Service (AWS) Cloud.
View 2 Replies
View Related
Jul 2, 2010
I have downloaded CDemu from http://sourceforge.net/projects/cdemu/ and installed it without errors. However when I go to /usr/local/bin and run ./cdemud it returns the following error,
Quote:
ben@Scottie /usr/local/bin $ ./cdemud
./cdemud: error while loading shared libraries: libmirage.so.2: cannot open shared object file: No such file or directory
I find this confusing as I have installed libmirage - http://sourceforge.net/projects/cdem...r.bz2/download - and I have found libmirage.so.2 in /usr/local/lib.
View 5 Replies
View Related
May 29, 2009
I am trying to use a shared bzip2 library in a program I'm writing. For the life of me I can't figure out the correct gcc switch to link it in. I've tried pkg-config, but i don't know the name of the .pc file. Is there any rule for these things?
View 3 Replies
View Related
Oct 14, 2010
I recently installed a Slackware-13.1 32 bit system and I encountered an odd problem. I had a texlive-2010 package from slackbuilds.org, previously compiled on another 32 bit Slack-13.1 system. I just installed the precompiled package on the new system. However, whenever I tried to issue a latex command, kpathsea complained that it cannot find the shared library file libkpathsea.so.6. I googled a bit and I found that this could be circumvented by setting the environment variable LD_LIBRARY_PATH to "/usr/share/texmf/lib", where the library in question actually is.
This solved the problem. The weird thing is that on other machines I have installed, kpathsea had no issues whatsoever and I did not have to set the LD_LIBRARY_PATH. The only difference is that on those systems I had compiled and installed texlive, not just installing a precompiled package. Could that be causing the issue?
View 6 Replies
View Related
Jun 11, 2010
I want to create a "Shared Memory" in linux, then create multiple "Shared Objects" that can access to a Table for example; And one of them can write something into the Table and the other can access and read it, so that these operations can be handled by programmer! I'm using Ubuntu 9.04 and I've set it's runlevel at 3 (I have commandline environment now!) I've searched the Internet so much, but couldn't find a good sample code for this! I have no experience about it and need your help to introduce me a sample code about it and advise me how to compile and use it with "GCC"?!
View 6 Replies
View Related
Nov 18, 2009
How can we convert a dynamic library (filename.so) to a static library (filename.a) using gnu gcc . Can we get a static library form a dynamic library . I saw a few post in which the conversion form a static library to a dynamic library is mentioned but, unfortunately, not the other way.
View 4 Replies
View Related
Nov 22, 2010
I have installed oci8 from the remi repo and can not get it to work.I have been trying all day but still end up with the same error in my apache error log when I start httpd.If anyone can suggest something more I can try or where I should look next that would be nice.In the mean time I am going to build a VM and try from a fresh install and see what happens.
View 1 Replies
View Related