Bullet Physics library
I don't find file of type (.lib) in Bullet Physics library
i don't find lib folder in Bullet Physics library because i want to put the path of the folder in visual studio
Related
I need to use librSvg library in a project for svg conversion to other formats (for example pdf). This is the only library that I manage to find that suits my needs (to convert a majority of embedded fonts from svg).
My problem is that I do not know how to proceed because librSvg has a huge amount of dependencies like:
libcairo-2.dll
libcroco-0.6-3.dll
libffi-6.dll
libgdk_pixbuf-2.0-0.dll
libgio-2.0-0.dll
libglib-2.0-0.dll
libgmodule-2.0-0.dll
libgobject-2.0-0.dll
libiconv-2.dll
libintl-8.dll
libpango-1.0-0.dll
libpangocairo-1.0-0.dll
libpangowin32-1.0-0.dll
libpangocairo-1.0-0.dll
libpixman-1-0.dll
libpng16-16.dll
librsvg-2-2.dll
libxml2-2.dll
zlib1.dll
I manage to find the binary files librSvg binaries and the sources from the official git repository librSvg repository.
Can somebody please guide me about how can I make a static library (.lib) from this files that can I use as a standalone entity in my project?
I understand the concept of Static and Dynamic linking. It is known that on Windows platform, .dll are the dynamic libraries and .lib are the static libraries.
My Confusion: I made a project in which I had to use the OpenCV libraries. Basically, I had to use the following 5 libraries of OpenCV:
-lopencv_core
-lopencv_highgui
-lopencv_imgcodecs
-lopencv_imgproc
-lopencv_videoio
For this purpose, in the properties of the project, I had to tell the compiler the path of the libraries in the Additional Library Directory of VS 2012 and I also had to tell linker about the .lib libraries which I want to use for the project. The project got compiled without any error. But when I try to ran the project, it said that videoio.dll is missing (same error for rest of the libraries too). As soon as I copied the .dll files inside the folder where the .exe was present, the project ran fine.
Question: Why did I have to copy the .dll files when I already linked the static libraries (.lib)?
Further Question: When I use Eclipse on Mac OS or Linux, I just have to tell the complier where the OpenCV libraries are present and to the linker which other OpenCV libraries I want to use. I never had to put the dynamic libraries to the .exe folder in that case.
The "usual" windows tool chains offer two "flavours" of .lib.
One is the static libraries you mention. When used, there is no associated .dll.
The other is a stripped library that is only there to hook in the code to load and fix functions pointers for the dynamic library at load time.
With dynamic libraries (the .dll) you can either load it your self (via. LoadLibrary) or you can use the stub (import) .lib you have been provided with the .dll. Favour the import .lib if one is provided.
Why did I had to copy the .dll files when I already linked the static libraries (.lib) ?
The .dll needs to be in the path, or the directory with the .exe for the loader to find it.
How do I differentiate whether the .lib file is Static library or Dynamic library?
Generally the documentation should include some level of detail about this. If they are lumped in the same folder, then I would assume the .lib is tied to the .dll. If all else fails, look at the file size; if the .lib is tied to the .dll, then it is normally small in comparison to the .dll.
I am a beginner on C++ and trying to learn about including libraries, and I haven't found documentation about it.
What are the ways of including libraries to a C++ project (Visual Studio). How do I implement them and which is the best way?
I was trying to include the SQLite library to a project. I tried to:
Include the header file in the include folder of the Visual Studio installation folder. It did appear in the External dependencies of my project, so I can do #include <sqlite3.h> without problems, but I don't know where I should put the implementation (a C file) and how to link it (is it in the linker>Input>Additional dependencies?).
Is it necessary that in order to include a library the file should be a .lib? Because I can't find the .lib for SQLite 3, do I have to include it in the lib folder of my Visual Studio installation?
Note: I am interested on the management of including a library in general. The SQLite 3 part is only because I took it as an example in order to learn how to add them.
A library is added in two steps
Adding headers path to the project
Adding .lib reference
In the first step, you must specify in the project where library headers are header. Usually, the path is specified in the project properties -> C++ -> Additional include directories, and them including files with relative paths.
In the second step you must specify in properties->linker the path where libraries (.lib) are located and the name of the library. With this Visual Studio is able to link the project properly.
go to project add existing item you must then select from the browse screen the .lib file you wish to add. and BINGO it is there!
best wishes
david
I'm working on a project using OpenCV and Visual Studio 2010. I'm having problems installing BASS audio libraries on VS 2010. I downloaded these win32 libraries
I added the bass.lib file to the linker input, and I also added the path to the .lib file (which is C:\bass24\c) in Additional Library Directories (in the linker section) and the #include "bass.h" in my .cpp file. This is the same thing you do with OpenCV files or any external files, the only difference is that I don't know what to put in C/C++-> Additional Include Directories (it already has C:\opencv\build\include for OpenCV in it). Does anyone know what to put there?
VS 2010 gives me this problem:
Error 1error C1083: Cannot open include file: 'bass.h': No such file or directory
P.S.: I'm working on a sonification project where I have to track a colored object from my camera and have to play music if that object moves in different positions. I want to use BASS because it is possible to use the multispeaker option (play music on the right speaker if the object moves right and so on).
VS 2010 should know where the necessary library files are (based on your description), but you are forgetting to tell it where the bass.h file is.
In C/C++ -> Additional Include Directories, add the directory C:\bass24\C because that is where the bass.h file is.
So I have some C/C++ library compiled into .a files. library is ffmpeg (52). Could any one provide me with detailed instructions on how to use it in visual studio 2008 (how to link it to VS so that compiler would find it and so on)?
This might be useful: From MinGW static library (.a) to Visual Studio static library (.lib)
Please rename your file from .a to .lib, and place it along with the source files of the project.
Now go to project's properties and in the VS C++ include directories add the path of the header/include files for that lib.
To use the symbols in a source file write
#pragma comment(lib, "your library's name")