Create .deb package - can't get dependencies - linux

I am trying to create a simple .deb package by following a wonderful tutorial,
and my problem is that when I try to get the dependencies of the package by executing this command:
dpkg-depcheck -d ./configure
I get this error:
strace: ./configure: command not found
Running strace failed (command line:
strace -e trace=open,execve -f -q -o /tmp/depchqCdeiv ./configure
which I don't understand. Do you have any idea about what could be causing this?
This on Ubuntu 12.04.

I think that tutorial is not the better approach to create quality deb packages.
Better resources would be:
Debian New Maintainers' Guide
Introducing the Debian packaging tutorial
About the error, I imagine that the software that you are trying to package doesn't use autotools, and for that reason it doesn't have any configure script. The way that the dependencies are checked depends on the build system used. If you don't have a configure script, maybe your project root directory has a SConstructp, a setup.py or simply a Makefile.
Giving more information about the software you are trying to package I can provide further help.
Best regards

Related

How to install Linux packages in Replit

I tried to use nasm in a bash project on Replit (educator) but it failed as nasm was not installed.
However, there are some assembly projects on Replit. So I forked a project, added my code, and boom it worked.
How nasm got installed in that project? Dunno, cause it's nowhere explained.
Now, I'd like to use external functions like printf in the assembly code. The code being x86-32, I need to install something similar to glibc-devel.i686 and glibc-devel (this on Fedora). Seems to be gcc-multilib in Ubuntu.
My question is : how do we install Linux packages in a bash project on Replit? Thanks for the help.
To install a Linux package in a bash project on Replit, run the command directly from the console or shell. If the command is found on Nix, you'll get an invite to run it from Nix and the package will be added to the config file replit.nix in your poject.
> nasm --version
nasm: command not installed, but was located via Nix.
Would you like to run nasm from Nix and add it to your replit.nix file? [Yn]:
> cat replit.nix
{ pkgs }: {
deps = [
pkgs.nasm
pkgs.bashInteractive
];
}
However, if the command you're trying to run is in a script, pressing the "Run" button or launching the script from the shell will only give an error "Command not found".
You can also add the package to your project by directly editing replit.nix.
You can check if your package exists in Nix using the NixOS Search - Packages page.
In bash type:
$ nix-env -iA nixpkgs.nasm

How to build linux tools via MingW64 in 2021?

I'm trying to follow this example to build wget2:
https://gnutoolchains.com/building/
I've installed x86_64-8.1.0-win32-seh-rt_v6-rev0 preset (?) and first tried to build old version of wget1, but I've reached dead end. There is no way to run ./configure to create build target rules. Did I install something wrong? How I'm supposed to know what exactly is to install? Is it each new preset for each application I want to build? How I'm supposed to handle the insane list of requirements of wget2:
https://gitlab.com/gnuwget/wget2#build-requirements
And lastly - why is it so jank? Is it by design?
There is a way to run ./configure on Windows. You need MSYS2 for that, which will give you a bash shell and the tools needed by ./configure.
MSYS2 comes with a package manager (pacman) which allows you to install a more recent MinGW-w64.

How to install spice-server correctly in CentOS 7 with the source codes?

I met a problem when I try to install QEMU with spice support.
It works well if I install spice-server with yum. In this case when I type ./configure --enable-spice in root directory of QEMU's source codes, the spice-server can be detected correctly.
But now I want to install spice-server by compiling its source codes, cause I have some work to do with it.
I tried ./configure; make; make install and ./configure --prefix=/usr; make; make install. QEMU couldn't find spice-server installed in neither way. I just got
ERROR: User requested feature spice
configure was not able to find it.
Install spice-server(>=0.12.0) and spice-protocol(>=0.12.3) devel
returned.
I don't have this problem in ubuntu, I don't know how to fix it in a CentOS server. Does anybody have a solution?
I guess you are trying to build qemu with spice from source code.
That involves many dependences and configurations.
Especially while you have system-installed 'qemu' running.
Maybe https://github.com/grizzlybears/sqb can help you.
It is a set of helper scripts to automatically do the follwing:
Install build depend.
Get code from offical repository
Get 'fedora base cloud image' as test image
Autogen/configure/build qemu with spice in local dir, touch nothing in system
5.Run test VM using our hand-made 'qemu'
Open spice console to the VM, if you have 'spice-gtk-tools' installed
You should first clone spice-protocol manually and execute ./autogen.sh && ./configure &&make &&make install and export the PKG_CONFIG_PATH export PKG_CONFIG_PATH={your pkg config path}

Small exception in linking shared library

I have kept libawesomium.1.6.5.so and libawesomium.1.6.5.so.0 files in /usr/lib/awesomium.1.6.5 folder, and given the path for this .so library in ld.co.config.d, in a new .conf file, but when I run my project it gives me a
System.dll not found exception for libawesomium.1.6.5.so.0 at (wrapper managed-to-native).
How to solve this error.
when i check the existence of this library through
sudo ldconfig -p | grep libawesomium-1.6.5.so
command, it gives me the following output:
libawesomium-1.6.5.so.0 (libc6) => /usr/lib/awesomium-1.6.5/libawesomium-1.6.5.so.0
It means it exists. But still at run-time my project is giving this error :
System.dllnotfoundexception libawesomium-1.6.5.so.0
I am working on monodevelop, so can someone suggest me please what is the thing that i am missing. Is there some addon i have to install or some terminal command i have to follow. Hoping for quick responses.
Regards
Rohit
You should be able to add LIBDIR=/lib to /etc/ld.so.conf and then issue ldconfig. If not, then you might be using a VMX or other type of setup that would require to you use the linker with -W/lib for example.
i have need 2 days to find a solution for this problem!
On Linux Wheezy 32bit you need to install libjpeg62 ...
apt-get install libjpeg62
this will fix the problem! ...

How to compile GTK2 source code?

I'm trying to modify GTK2 on Ubuntu Oneiric.
I download the source:
apt-get source libgtk2.0-0
cd gtk+2.0-2.24.6/
I try to compile and overwrite the current GTK2:
./configure --prefix=/usr
sudo make
Soemhow I get an error (I have all the necessary libraries and the build-essential package etc):
In file included from gtkquery.c:26:0:
gtkquery.h:31:2: error: #error "gtkfilechooserprivate.h is not supported API for general use"
By the way, I am able to modify and recompile GTK3 with no problems with the same steps.
If use debuild, I get thousands of
dpkg-source: error: cannot represent change to gtk+2.3.0-2.24.6/gtk+2.0-2.24.6/something: binary file contents changed
You won't get anything near the Ubuntu-provided build if you try building it by hand that way -- you'll miss all the ./configure options and other settings. (Look into debian/rules for the full details of what they're setting.)
Instead, try debian/rules build.
For reasons I haven't investigated yet (possibly including me not understanding how it should work), that didn't work on the first package I tried, but setting up pbuilder let me build the package I wanted.
It might feel like overkill to get a clean chroot as a build environment, but it is way too easy to build yourself problems that no one else in the world can replicate because you've got something funny on your local system.

Resources