General :: Can't Find A Library - Get A 32-bit Executable To Run On 64-bit Ubuntu?
Mar 10, 2010
I am trying to get a 32-bit executable to run on 64-bit Ubuntu. I had to install multilib, and then when I ran the executable, I got this error:
Code:
./x86/bin/target_base_mac: error while loading shared libraries: libxml2.so.2: cannot open shared object file: No such file or directory
So I installed libxml2, but I still get that same error. The file does exist:
We have a 32bit Gui application created using C++. We ported the application from Solaris to Linux. Issue we are facing is the size of the library and executable is very large in LINUX compared to Solaris. Red Hat Enterprise Linux 5.4 is the Linux version we using. Please find a sample dynamic library created. We would like to know the following behavior of LINUX is normal or not. Consider we created two files test1.cc and test2.cc. Both having a single line of code.
I need to strip the executable flag from all files within a certain directory and sub directories. Right now I'm doing it with a 2 step process
find /dir/ -type f -exec chmod ugo-x {} ; find /dir/ -type d -exec chmod ugo+rx {} ;
Is it possible to modify the first line so that I can strip exec flag from all non-directory files? Since this needs to be done on a fairly regular basis across a lot of directories and files, I'd prefer not to use a bash script which would slow it down.
Is there a way to find out with what options a library was configured with when it was installed? I am trying to install a library on my system that depends on gasnet and it requires me to configure it with the very same options that gasnet was configured with. Gasnet was not originally installed by me, so I cannot tell. I can see bin/, include/, lib/ and share/ directories in the gasnet folder and no other information in it. To be specific, I need to use the same CFLAGS that were used during installation of gasnet. For example, if it was installed using '-g -O2', I have to make sure I use the same CFLAGS here.
I am using Slackware 13.1 with the uname -a output:
Quote:
Linux darkstar 2.6.33.4 #2 Thu May 13 00:27:45 CDT 2010 i686 Intel(R) Atom(TM) CPU N450 @ 1.66GHz GenuineIntel GNU/Linux
When the binary smbpasswd is executed it gives the following output
Quote:
smbpasswd: error while loading shared libraries: libwbclient.so.0: cannot open shared object file: no such file or directory ldd /usr/local/samba/bin/smbpasswd has this output
I am trying to run i386 in gcc_test-suite using dejagnu runtest and it fails with error given below. I can see that gcc-dg.exp is in folder gcc-4.6-20100911/gcc/testsuite/lib, but runtest is not searching in this folder.
how to resolve this issue and run only i386 tests.
$ cd /gcc-4.6-20100911/gcc/testsuite/gcc.target $ runtest -a -tool i386 -verbose .... .... Looking for library file /usr/local/share/dejagnu/lib/gcc-dg.exp
Because my internet doesn't work on my laptop, I installed OpenOffice through the debian package manager. Everything worked to perfection, except that I couldn't find the executable file!
I did a search of the computer for files with "openoffice" in their name, but none would open as an executable. It's not in any menu either.
I can find all kinds of evince files but no executable or "link to executable." I can find all the other ubuntu installs, like gedit, gimp, etc. in my /usr/bin folder. But not evince. Even though Document Viewer runs fine.I need this because I installed Adobe reader (ugh) and it took over as the default .pdf reader. The simple ways of trying to return default application to evince did not work, so I searched here and found a solution (y'all rule) -- edited the mimeapps.list file. Worked great. .pdf files now open in Document Viewer by default again.
Except, Thunderbird is still using Adobe reader as default for pdf files, and to change that I have to browse to the program I want to use instead. (Evince does not show up in the "open with" options I get by right clicking.) Can't browse to evince or enter path because I don't know where it is and can't find it anywhere..
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...
I need to download the following library: rpmlib(PayloadIsLzma) <= 4.4.2-1It seems it's on this site, but the site is having issues or something: [URL]This machine is not connected to the internet nor can it be.I installed the libg2c.so.0 library [URL]and now am having to insatll its dependencies
I cannot find the C library manual pages on fedora 11. Are info pages the same as man pages? or how can I install man pages so that I can use man 3 malloc?
I am trying desperatly to install boxee onto my pc Boxee - Watch Movies, TV Shows and clips from the Internet on your TV.without success.I have downloaded the source code from the site and have ran
./bootstrap ./configure
The ./configure last few lines = checking for boost/shared_ptr.hpp... yes checking for main in -lGL... no configure: error: Could not find a required library. Please see the README for your platform.
I'm not sure what this lGL is referring to. The readme states that I need the below to run the configure, though that doesn't say lGL either?
I am using json library for my application. I have mentioned the path where the library resides in the LD_LIBRARY_PATH. while compiling i have given the following commands.
gcc -o pafitest pafi_test_app.o -ljson
but still i am getting this following error.
/usr/bin/ld: cannot find -ljson collect2: ld returned 1 exit status
I am running into a snag on .exe files in Lucid. I have Wine installed, but I can not open the file as it is blocked from executing with a window popping up telling me that this file was blocked due to security reasons. I go into the files properties and try to change the permission but that does not help. Is there a way to get around this? Possibly in the terminal as root?
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?
I hope this post stands in the right section.I have a commandline i need to enter in terminal when i want to run a program. i tought lets put that piece of command in an .sh file and just click the file to run the program (then i dont need to open terminal first an give in the command) however the .sh file does not open the program. so i propably need to make a executable (application/x-executable).
./configure script fails to configure libsf. Please check the following last few lines of configure script error.
But find command shows the following;
It seems the file libdb does exist. man dbopen displays man page for dbopen. I also tried to ln -s /usr/lib/libdb.a and libdb.so /lib dir but all were in vain.
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?
I am getting some error when i compile cross compile "dbus-1.2.20". error Code: checking for XML_ParserCreate_MM in -lexpat... no configure: error: Could not find expat.h, check config.log for failed attempts so i downloaded te expat library sources i cross compiled. But again i am getting same error. I think i have to add "-lexpat" in LDFLAG. But i dont know how to do that.
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.
I cannot figure out how to "install" a program I downloaded. It comes in Windows, Mac, and Linux flavors, and I did acquire the Linux version, which comes in a ZIP file. After I unzip it and cd to the directory it is in, I had an earlier version working a few months ago, but cannot recall how I made it work back then.