i built some packages myself using make & make install instead of apt-get because some packages in ubuntu repositories are not the latest version, sometimes not new enough to build some package depending on it. However when i wanted to install something by apt later, it told me that some dependencies didn't meet. So is there any chance that i can get apt to realize that there is something newer than the packages in its repositories?
Yes, instead of using
make install you can use the
What this does is instead of using make to copy all the required files directly to your file system, checkinstall runs make install in a virtual environment, waits till it completes, then compiles the resulting "installed" files into a .deb package.
The typical way of running checkinstall:
./configure make sudo checkinstall
During checkinstall you give the package a name and version number.
You can then install this .deb package with
sudo dpkg -i packagename.deb and then dpkg (and therefore also APT) will know that this package is installed. (It won't, however, know what packages it depends on, but most stuff you compile yourself will be self-sufficient, maybe statically linked).
If the package name you chose matches the package name of a package in the repos, then it will be treated by APT as another choice of version for that package - and if it's higher than the version in the repos, it will by default leave it alone.
This is a relatively clean way to install things, too, because it lets you "uninstall" the software easily too.