Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.
Sign upqubes-core-agent-linux compiling fails - error: ‘RPC_REQUEST_COMMAND_LEN’ undeclared #1402
Comments
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
marmarek
Nov 10, 2015
Member
Sorry, not pushed linux-utils changes for that (qrexec.h modification)
yet - still finishing some stuff (#1354). Will be there in about an
hour. For now you can use @QubesOS (or reset to b6d4f5af).
Best Regards,
Marek Marczykowski-Górecki
Invisible Things Lab
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
|
Sorry, not pushed linux-utils changes for that (qrexec.h modification) Best Regards, |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
adrelanos
Nov 10, 2015
Member
No problem. No rush. Not urgently important for me.
Getting a different build error there.
(origin refers to @QubesOS)
git checkout origin/master
HEAD is now at 5102e4f... fedora: Add skip_if_unavailable=False to Qubes repositories
(remotes/origin/HEAD) ~/Qubes/qubes-core-agent-linux $ make clean
make -C misc clean
make[1]: Entering directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux/misc'
rm -f xenstore-watch *.o *~ *.pyc *.pyo
make[1]: Leaving directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux/misc'
make -C qrexec clean
make[1]: Entering directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux/qrexec'
rm -f *.o *~ qrexec-agent qrexec-client-vm
make[1]: Leaving directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux/qrexec'
make -C qubes-rpc clean
make[1]: Entering directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux/qubes-rpc'
rm -f qopen-in-vm qfile-agent qfile-unpacker tar2qfile vm-file-editor *.o *~
make[1]: Leaving directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux/qubes-rpc'
(remotes/origin/HEAD) ~/Qubes/qubes-core-agent-linux $ BACKEND_VMM=xen dpkg-buildpackage -b
dpkg-buildpackage: source package qubes-core-agent
dpkg-buildpackage: source version 3.1.2-1
dpkg-buildpackage: source distribution wheezy
dpkg-buildpackage: source changed by Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com>
dpkg-buildpackage: host architecture amd64
dpkg-source --before-build qubes-core-agent-linux
dpkg-source: info: using options from qubes-core-agent-linux/debian/source/options: --extend-diff-ignore=(^|/)(.git/.*)$ --extend-diff-ignore=(^|/)(deb/.*)$ --extend-diff-ignore=(^|/)(pkgs/.*)$ --extend-diff-ignore=(^|/)(rpm/.*)$
fakeroot debian/rules clean
dh clean --with systemd --with=config-package
dh_testdir
dh_auto_clean
make[1]: Entering directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux'
make -C misc clean
make[2]: Entering directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux/misc'
rm -f xenstore-watch *.o *~ *.pyc *.pyo
make[2]: Leaving directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux/misc'
make -C qrexec clean
make[2]: Entering directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux/qrexec'
rm -f *.o *~ qrexec-agent qrexec-client-vm
make[2]: Leaving directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux/qrexec'
make -C qubes-rpc clean
make[2]: Entering directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux/qubes-rpc'
rm -f qopen-in-vm qfile-agent qfile-unpacker tar2qfile vm-file-editor *.o *~
make[2]: Leaving directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux/qubes-rpc'
make[1]: Leaving directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux'
dh_clean
debian/rules build
dh build --with systemd --with=config-package
dh_testdir
dh_auto_configure
debian/rules override_dh_auto_build
make[1]: Entering directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux'
make all
make[2]: Entering directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux'
make -C misc
make[3]: Entering directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux/misc'
gcc -Wall -Wextra -Werror -g -O3 -DUSE_XENSTORE_H -D_FORTIFY_SOURCE=2 -c -o xenstore-watch.o xenstore-watch.c
gcc -o xenstore-watch xenstore-watch.o -lxenstore
python -m compileall .
Listing . ...
Compiling ./vusb-ctl.py ...
Compiling ./xdg.py ...
Compiling ./xl-qvm-usb-attach.py ...
Compiling ./xl-qvm-usb-detach.py ...
Compiling ./yum-qubes-hooks.py ...
python -O -m compileall .
Listing . ...
Compiling ./vusb-ctl.py ...
Compiling ./xdg.py ...
Compiling ./xl-qvm-usb-attach.py ...
Compiling ./xl-qvm-usb-detach.py ...
Compiling ./yum-qubes-hooks.py ...
make[3]: Leaving directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux/misc'
make -C qrexec
make[3]: Entering directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux/qrexec'
gcc -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -I. -g -O2 -Wall -Wextra -Werror -pie -fPIC `pkg-config --cflags vchan-xen` -D_FORTIFY_SOURCE=2 -c -o qrexec-agent.o qrexec-agent.c
gcc -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -I. -g -O2 -Wall -Wextra -Werror -pie -fPIC `pkg-config --cflags vchan-xen` -D_FORTIFY_SOURCE=2 -c -o qrexec-agent-data.o qrexec-agent-data.c
qrexec-agent-data.c: In function ‘handle_remote_data’:
qrexec-agent-data.c:200:5: error: implicit declaration of function ‘flush_client_data’ [-Werror=implicit-function-declaration]
switch (flush_client_data(stdin_fd, stdin_buf)) {
^
qrexec-agent-data.c:201:14: error: ‘WRITE_STDIN_OK’ undeclared (first use in this function)
case WRITE_STDIN_OK:
^
qrexec-agent-data.c:201:14: note: each undeclared identifier is reported only once for each function it appears in
qrexec-agent-data.c:203:14: error: ‘WRITE_STDIN_BUFFERED’ undeclared (first use in this function)
case WRITE_STDIN_BUFFERED:
^
qrexec-agent-data.c:205:14: error: ‘WRITE_STDIN_ERROR’ undeclared (first use in this function)
case WRITE_STDIN_ERROR:
^
qrexec-agent-data.c:239:21: error: implicit declaration of function ‘write_stdin’ [-Werror=implicit-function-declaration]
switch (write_stdin(stdin_fd, buf, hdr.len, stdin_buf)) {
^
cc1: all warnings being treated as errors
<builtin>: recipe for target 'qrexec-agent-data.o' failed
make[3]: *** [qrexec-agent-data.o] Error 1
make[3]: Leaving directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux/qrexec'
Makefile:43: recipe for target 'all' failed
make[2]: *** [all] Error 2
make[2]: Leaving directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux'
debian/rules:14: recipe for target 'override_dh_auto_build' failed
make[1]: *** [override_dh_auto_build] Error 2
make[1]: Leaving directory '/home/user/sourcesother/Qubes/qubes-core-agent-linux'
debian/rules:11: recipe for target 'build' failed
make: *** [build] Error 2
dpkg-buildpackage: error: debian/rules build gave error exit status 2
(remotes/origin/HEAD) ~/Qubes/qubes-core-agent-linux $
|
No problem. No rush. Not urgently important for me. Getting a different build error there. (origin refers to @QubesOS)
|
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
adrelanos
Nov 10, 2015
Member
Nevermind the last one. Only my lack of understanding. I needed to fetch a newer qubes-linux-utils, build and install that one first.
|
Nevermind the last one. Only my lack of understanding. I needed to fetch a newer qubes-linux-utils, build and install that one first. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
marmarek
Nov 10, 2015
Member
This one is linux-utils too old (-> missing version requirement in
BuildDepends...). sudo chroot chroot-jessie apt-get remove qubes-utils, then rebuild both linux-utils and core-agent-linux.
BTW Shouldn't headers be split to qubes-utils-dev?
Best Regards,
Marek Marczykowski-Górecki
Invisible Things Lab
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
|
This one is linux-utils too old (-> missing version requirement in BTW Shouldn't headers be split to Best Regards, |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
adrelanos
Nov 10, 2015
Member
This one is linux-utils too old (-> missing version requirement in BuildDepends...).
sudo chroot chroot-jessie apt-get remove qubes-utils, then rebuild both linux-utils and core-agent-linux.
Yes. That was it.
BTW Shouldn't headers be split to
qubes-utils-dev?
(If this is a question to me.) I am sorry, but I am at loss at which headers you are referring to.
Yes. That was it.
(If this is a question to me.) I am sorry, but I am at loss at which headers you are referring to. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
marmarek
Nov 10, 2015
Member
BTW Shouldn't headers be split to
qubes-utils-dev?(If this is a question to me.) I am sorry, but I am at loss at which headers you are referring to.
user@d8test:~$ dpkg -L qubes-utils|grep include
/usr/include
/usr/include/qrexec.h
/usr/include/libqubes-rpc-filecopy.h
/usr/include/libqrexec-utils.h
Best Regards,
Marek Marczykowski-Górecki
Invisible Things Lab
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
Best Regards, |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
adrelanos
Nov 11, 2015
Member
Let's look at other files in /usr/include/ and see if they come from -dev packages.
for a in /usr/include/* ; do dpkg -S "$a" ; done
Looks like this is the case.
Debian policy https://www.debian.org/doc/debian-policy/ch-sharedlibs.html 8.4 Development files also seems to say this.
Shouldn't headers be split to qubes-utils-dev?
Ideally, yes.
There are some other lintian warnings.
lintian
W: qubes-utils: package-name-doesnt-match-sonames libqrexec-utils2 libqubes-rpc-filecopy2
W: qubes-utils: hardening-no-relro usr/lib/libqrexec-utils.so.2
W: qubes-utils: hardening-no-relro usr/lib/libqubes-rpc-filecopy.so.2
W: qubes-utils: hardening-no-relro usr/sbin/meminfo-writer
E: qubes-utils: udev-rule-in-etc etc/udev/rules.d/99-qubes-block.rules
E: qubes-utils: udev-rule-in-etc etc/udev/rules.d/99-qubes-misc.rules
E: qubes-utils: udev-rule-in-etc etc/udev/rules.d/99-qubes-usb.rules
W: qubes-utils: non-standard-dir-in-usr usr/libexec/
W: qubes-utils: file-in-unusual-dir usr/libexec/qubes/udev-block-add-change
W: qubes-utils: file-in-unusual-dir usr/libexec/qubes/udev-block-cleanup
W: qubes-utils: file-in-unusual-dir usr/libexec/qubes/udev-block-remove
W: qubes-utils: file-in-unusual-dir usr/libexec/qubes/udev-usb-add-change
W: qubes-utils: file-in-unusual-dir usr/libexec/qubes/udev-usb-remove
W: qubes-utils: binary-without-manpage usr/sbin/meminfo-writer
E: qubes-utils: python-script-but-no-python-dep usr/lib/python2.7/dist-packages/qubes/imgconverter.py
W: qubes-utils: non-dev-pkg-with-shlib-symlink usr/lib/libqrexec-utils.so.2 usr/lib/libqrexec-utils.so
W: qubes-utils: non-dev-pkg-with-shlib-symlink usr/lib/libqubes-rpc-filecopy.so.2 usr/lib/libqubes-rpc-filecopy.so
- https://lintian.debian.org/tags/package-name-doesnt-match-sonames.html
- https://lintian.debian.org/tags/hardening-no-relro.html
- https://lintian.debian.org/tags/udev-rule-in-etc.html
- https://lintian.debian.org/tags/non-standard-dir-in-usr.html
- https://lintian.debian.org/tags/file-in-unusual-dir.html
- https://lintian.debian.org/tags/binary-without-manpage.html
- https://lintian.debian.org/tags/python-script-but-no-python-dep.html
- https://lintian.debian.org/tags/non-dev-pkg-with-shlib-symlink.html
Ideally, it's best to be fixed. Depends on time/priorities. So you tell me if it should be. :)
|
Let's look at other files in
Looks like this is the case. Debian policy https://www.debian.org/doc/debian-policy/ch-sharedlibs.html
Ideally, yes. There are some other
Ideally, it's best to be fixed. Depends on time/priorities. So you tell me if it should be. :) |
adrelanos commentedNov 10, 2015
As per
823954c7f6f4d08bdd5094844b63736fe81efeb0. Building inside a Debian 8 TemplateBased AppVM.It worked before. Am I missing a build dependency, something or is there a new issue?