i want to kernel-compile at linux-5.2.9, but make not operate after make clean.
how should i do?
i show tryed list
tar xfJ linux-5.2.9
cd linux-5.2.9
pwd
ls
apt-get -y install qt5-default libssl-dev
make mrproper - kernel init
make xconfig ( File systems ) -> (DOS/FAT/NT Filesystem ) -> (NTFS filesystem support ) low-level check all
make clean
make < - from error
make modules_install
make install
Related
I would like to virtualize Android on my jetson nano using qemu + kvm + virglrenderer and I found these tutorials to accomplish the task :
this :
https://www.collabora.com/.../building-android-for-qemu.../
and this :
https://www.collabora.com/.../02/12/virtualizing-gpu-access/
so. on Ubuntu 20.10 I have added this script to the .bashrc file and I did : source ~/.bashrc
function add_export_env {
local VAR="$1"
shift
local VAL=$(eval echo "\$$VAR")
if [ "$VAL" ]; then
VAL=$(concatenate_colon "$#" "$VAL");
else
VAL=$(concatenate_colon "$#");
fi
eval "export $VAR=\"$VAL\""
}
function prefix_setup {
local PREFIX="$1"
add_export_env PATH "$PREFIX/bin"
add_export_env LD_LIBRARY_PATH "$PREFIX/lib"
add_export_env PKG_CONFIG_PATH "$PREFIX/lib/pkgconfig/" "$PREFIX/share/pkgconfig/"
add_export_env MANPATH "$PREFIX/share/man"
export ACLOCAL_PATH="$PREFIX/share/aclocal"
mkdir -p "$ACLOCAL_PATH"
export ACLOCAL="aclocal -I $ACLOCAL_PATH"
}
function projectshell {
case "$1" in
virgl | virglrenderer)
export ALT_LOCAL="/opt/local/virgl"
mkdir -p "$ALT_LOCAL"
prefix_setup "$ALT_LOCAL"
;;
esac
}
and I have also installed these packages :
sudo apt install autoconf gcc-aarch64-linux-gnu libaio-dev libbluetooth-dev libbrlapi-dev libbz2-dev libcap-dev libcap-ng-dev libcurl4-gnutls-dev libepoxy-dev libfdt-dev libgbm-dev libgles2-mesa-dev libglib2.0-dev libibverbs-dev libjpeg8-dev liblzo2-dev libncurses5-dev libnuma-dev librbd-dev librdmacm-dev libsasl2-dev libsdl1.2-dev libsdl2-dev libseccomp-dev libsnappy-dev libssh2-1-dev libtool libusb-1.0-0 libusb-1.0-0-dev libvde-dev libvdeplug-dev libvte-2.90-dev libxen-dev valgrind xfslibs-dev xutils-dev zlib1g-dev
and configured these paths :
export PROJECT_PATH="/opt/qemu_android"
export VIRGLRENDERER_PATH="${PROJECT_PATH}/virglrenderer"
export QEMU_PATH="${PROJECT_PATH}/qemu" export LINUX_PATH="${PROJECT_PATH}/linux"
export ANDROID_PATH="${PROJECT_PATH}/android"
export ANDROID_TOOLS_PATH="${PROJECT_PATH}/android-tools"
then :
git clone git://anongit.freedesktop.org/virglrenderer
root#aorus:/opt/qemu_android/virglrenderer# ls
ci docs perf-testing virglrenderer.pc.inconfig.h.meson meson.build src vtestCOPYING meson_options.txt tests
root#aorus:/opt/qemu_android/virglrenderer# ./autogen.sh
bash: ./autogen.sh: File or directory not found
I don't know how to compile it,since the classic way does not work (mkdir build ; cd build ; cmake ..) it says :
CMake Error: The source directory does not appear to contain CMakeLists.txt. Specify --help for usage, or press the help button on the CMake GUI.
When you ran ls and saw the files in your virgilrenderer folder there isn't an ./autogen.sh but there is a meson.build
So let's try that.
sudo apt install build-essential
sudo apt install meson ninja-build
cd /opt/qemu_android/virglrenderer
meson compile
Once Meson is installed, and you are in the directory that the meson.build file is, you should be able to just run the meson compile command.
Official Docs for Meson
I am trying to add image support to slock, a screen lock utility from suckless.org. But slock needs root privilege to run. I didn't have problem with it when I was using it because I just did make && sudo make install. But now that I constantly need to edit, build and check, I can't figure out how to work on this project.
My workflow has been like
make
sudo chown root:root ./slock
sudo chmod u+s ./slock
./slock
I don't know how else to go about doing this. Any help?
You can add a test recipe to your Makefile
test: ./slock
sudo chown root:root $<
sudo chmod u+s $<
$<
You might even want to make it the default target which is executed when you call make with no target arguments. Your workflow would simply become
make
make
make
...
until you are satisfied with the result
In qemu I use below command to install tools such as qemu-ga.exe,
but the problem is libtool does not accept its directory argument correctly.
If I run the command like this,
msdperera#msdperera-PC MSYS /qemu
$ libtool --quiet --mode=install install -c -m 0755 qemu-ga.exe qemu-img.exe qemu-io.exe "/c:/Program Files/QEMU"
install: target 'Files/QEMU/qemu-ga.exe' is not a directory
what is the correct format for the directory argument?
i'm trying to comlpile qemu source code for 64 bit ,but it is being compiled in 32 bit ..
These are the commands which i'm using
#!/bin/bash
cd qemu-1.6.0\
export
PKG_CONFIG_PATH=`pwd`/../support_libs/libs/glib/lib/pkgconfig:`pwd`/../suu
pport_libs/libs/zlib/lib/pkgconfig export CFLAGS="-mabi=64"
QEMU_CFLAGS="-mabi=64" sudo ./configure
--prefix=`pwd`/../support_libs/libs/qemuu --target-list=mips64-softmmu --enable-kvm --enable-fdt --with-coroutine=sigaltss tack --extra-cflags="-I`pwd`/../support_libs/libs/glib/include/glib-2.0/"
sudo make && sudo make install
i'm saving it in a file named "build.sh" and running this script as "./build.sh"
Any help would be Appreciated
You are executing script as ./build.sh the environments you export will be to the child shell sessions but when you give sudo make in the script it will not inherit the exported variables.
change the script a little bit by removing sudo for make and make install and run the script as sudo
#!/bin/bash
cd qemu-1.6.0\
export
PKG_CONFIG_PATH=`pwd`/../support_libs/libs/glib/lib/pkgconfig:`pwd`/../suu
pport_libs/libs/zlib/lib/pkgconfig export CFLAGS="-mabi=64"
QEMU_CFLAGS="-mabi=64" sudo ./configure
--prefix=`pwd`/../support_libs/libs/qemuu --target-list=mips64-softmmu --enable-kvm --enable-fdt --with-coroutine=sigaltss tack --extra-cflags="-I`pwd`/../support_libs/libs/glib/include/glib-2.0/"
make && make install
now run script as
sudo ./build.sh
Here is my case:
I am using Ubuntu 10.04 (Lucid Lynx). The system's default Python is v2.6.5, but I need Python v2.7. So I downloaded the source from python.org and tried to install it.
The first time I installed it, I ran:
cd Python2.7.4
./configure --prefix=/usr
make
su root
make install
This installs Python 2.7 to my system. It will create a link, "python", in /usr/bin linking to python2.7 also in /usr/bin. So when I type >python, the system will start Python 2.7.4 for me just like when I type >python2.7.
But when I install this way:
cd Python2.7.4
./configure --prefix=/usr
make
su root
make altinstall
The link "python" in /usr/bin still exists and links to python2.6 which is the default system version. Of course, I can remove it and create a new soft link linking to python2.7.
What is the difference between the command "make install" and "make altinstall", except for the link in /usr/bin?
Let's take a look at the generated Makefile!
First, the install target:
install: altinstall bininstall maninstall
It does everything altinstall does, along with bininstall and maninstall
Here's bininstall; it just creates the python and other symbolic links.
# Install the interpreter by creating a symlink chain:
# $(PYTHON) -> python2 -> python$(VERSION))
# Also create equivalent chains for other installed files
bininstall: altbininstall
-if test -f $(DESTDIR)$(BINDIR)/$(PYTHON) -o -h $(DESTDIR)$(BINDIR)/$(PYTHON); \
then rm -f $(DESTDIR)$(BINDIR)/$(PYTHON); \
else true; \
fi
(cd $(DESTDIR)$(BINDIR); $(LN) -s python2$(EXE) $(PYTHON))
-rm -f $(DESTDIR)$(BINDIR)/python2$(EXE)
(cd $(DESTDIR)$(BINDIR); $(LN) -s python$(VERSION)$(EXE) python2$(EXE))
... (More links created)
And here's maninstall, it just creates "unversioned" links to the Python manual pages.
# Install the unversioned manual pages
maninstall: altmaninstall
-rm -f $(DESTDIR)$(MANDIR)/man1/python2.1
(cd $(DESTDIR)$(MANDIR)/man1; $(LN) -s python$(VERSION).1 python2.1)
-rm -f $(DESTDIR)$(MANDIR)/man1/python.1
(cd $(DESTDIR)$(MANDIR)/man1; $(LN) -s python2.1 python.1)
TLDR: altinstall skips creating the python link and the manual pages links, install will hide the system binaries and manual pages.
Simply: The altinstall target will make sure the default Python on your machine is not touched, or to avoid overwriting the system Python.