@invidian
I have the latest available version installed:
$ yay -Qi libjpeg-turbo | grep Version
Version : 2.0.5-2
Git Clone URL: | https://aur.archlinux.org/droidcam.git (read-only, click to copy) |
---|---|
Package Base: | droidcam |
Description: | A tool to turn your phone/tablet into a wireless/usb webcam |
Upstream URL: | https://github.com/dev47apps/droidcam-linux-client |
Keywords: | android ios webcam |
Licenses: | GPL-2.0-or-later |
Submitter: | marquicus |
Maintainer: | mhdi |
Last Packager: | mhdi |
Votes: | 141 |
Popularity: | 0.60 |
First Submitted: | 2011-06-29 20:31 (UTC) |
Last Updated: | 2024-06-14 19:38 (UTC) |
« First ‹ Previous 1 .. 6 7 8 9 10 11 12 13 14 15 16 .. 38 Next › Last »
@invidian
I have the latest available version installed:
$ yay -Qi libjpeg-turbo | grep Version
Version : 2.0.5-2
@klingt.net maybe you have outdated version of "libjpeg-turbo"? It seems compiler picks the version, which do not have "tjGetErrorStr2" defined, which has been added in 1.5.3+: https://github.com/libjpeg-turbo/libjpeg-turbo/releases/tag/1.5.90.
Building droidcam fails on my machine:
==> Starting build()...
g++ -std=c++11 -x c++ -Wall -fPIC -no-pie src/droidcam-cli.c src/connection.c src/settings.c src/decoder.c src/decoder_snd.c src/decoder_v4l2.c src/av.c src/usb.c -lturbojpeg `pkg-config --libs --cflags libswscale libavutil` -lspeex -lasound -lpthread -lm -lusbmuxd-2.0 -o droidcam-cli
g++ -std=c++11 -x c++ -Wall -fPIC -no-pie src/droidcam.c src/resources.c src/connection.c src/settings.c src/decoder.c src/decoder_snd.c src/decoder_v4l2.c src/av.c src/usb.c `pkg-config --libs --cflags gtk+-3.0` `pkg-config --libs x11` `pkg-config --cflags --libs appindicator3-0.1` -lturbojpeg `pkg-config --libs --cflags libswscale libavutil` -lspeex -lasound -lpthread -lm -lusbmuxd-2.0 -o droidcam
src/droidcam.c: In function ‘void the_callback(GtkWidget*, gpointer)’:
src/droidcam.c:227:63: warning: ‘void gtk_menu_popup(GtkMenu*, GtkWidget*, GtkWidget*, GtkMenuPositionFunc, gpointer, guint, guint32)’ is deprecated: Use '(gtk_menu_popup_at_widget, gtk_menu_popup_at_pointer, gtk_menu_popup_at_rect)' instead [-Wdeprecated-declarations]
227 | gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, 0, 0);
| ^
In file included from /usr/include/gtk-3.0/gtk/gtklabel.h:34,
from /usr/include/gtk-3.0/gtk/gtkaccellabel.h:35,
from /usr/include/gtk-3.0/gtk/gtk.h:33,
from src/droidcam.c:11:
/usr/include/gtk-3.0/gtk/gtkmenu.h:138:9: note: declared here
138 | void gtk_menu_popup (GtkMenu *menu,
| ^~~~~~~~~~~~~~
src/decoder.c: In function ‘int decoder_init()’:
src/decoder.c:111:37: error: ‘TJXOPT_COPYNONE’ was not declared in this scope; did you mean ‘TJXOP_NONE’?
111 | jpg_decoder.transform.options = TJXOPT_COPYNONE | TJXOPT_TRIM;
| ^~~~~~~~~~~~~~~
| TJXOP_NONE
In file included from src/decoder.c:19:
src/decoder.c: In function ‘void process_frame(JPGFrame*)’:
src/decoder.c:279:61: error: ‘tjGetErrorCode’ was not declared in this scope; did you mean ‘tjGetErrorStr’?
279 | errprint("tjDecompressHeader3() failure: %d\n", tjGetErrorCode(jpg_decoder.tj));
| ^~~~~~~~~~~~~~
src/common.h:40:39: note: in definition of macro ‘errprint’
40 | #define errprint(...) fprintf(stderr, __VA_ARGS__)
| ^~~~~~~~~~~
src/decoder.c:280:30: error: ‘tjGetErrorStr2’ was not declared in this scope; did you mean ‘tjGetErrorStr’?
280 | errprint("%s\n", tjGetErrorStr2(jpg_decoder.tj));
| ^~~~~~~~~~~~~~
src/common.h:40:39: note: in definition of macro ‘errprint’
40 | #define errprint(...) fprintf(stderr, __VA_ARGS__)
| ^~~~~~~~~~~
src/decoder.c:311:54: error: ‘tjGetErrorCode’ was not declared in this scope; did you mean ‘tjGetErrorStr’?
311 | errprint("tjDecompressToYUV2 failure: %d\n", tjGetErrorCode(jpg_decoder.tj));
| ^~~~~~~~~~~~~~
src/common.h:40:39: note: in definition of macro ‘errprint’
40 | #define errprint(...) fprintf(stderr, __VA_ARGS__)
| ^~~~~~~~~~~
make: *** [Makefile:39: droidcam-cli] Error 1
make: *** Waiting for unfinished jobs....
src/decoder.c: In function ‘int decoder_init()’:
src/decoder.c:111:37: error: ‘TJXOPT_COPYNONE’ was not declared in this scope; did you mean ‘TJXOP_NONE’?
111 | jpg_decoder.transform.options = TJXOPT_COPYNONE | TJXOPT_TRIM;
| ^~~~~~~~~~~~~~~
| TJXOP_NONE
In file included from src/decoder.c:19:
src/decoder.c: In function ‘void process_frame(JPGFrame*)’:
src/decoder.c:279:61: error: ‘tjGetErrorCode’ was not declared in this scope; did you mean ‘tjGetErrorStr’?
279 | errprint("tjDecompressHeader3() failure: %d\n", tjGetErrorCode(jpg_decoder.tj));
| ^~~~~~~~~~~~~~
src/common.h:40:39: note: in definition of macro ‘errprint’
40 | #define errprint(...) fprintf(stderr, __VA_ARGS__)
| ^~~~~~~~~~~
src/decoder.c:280:30: error: ‘tjGetErrorStr2’ was not declared in this scope; did you mean ‘tjGetErrorStr’?
280 | errprint("%s\n", tjGetErrorStr2(jpg_decoder.tj));
| ^~~~~~~~~~~~~~
src/common.h:40:39: note: in definition of macro ‘errprint’
40 | #define errprint(...) fprintf(stderr, __VA_ARGS__)
| ^~~~~~~~~~~
src/decoder.c:311:54: error: ‘tjGetErrorCode’ was not declared in this scope; did you mean ‘tjGetErrorStr’?
311 | errprint("tjDecompressToYUV2 failure: %d\n", tjGetErrorCode(jpg_decoder.tj));
| ^~~~~~~~~~~~~~
src/common.h:40:39: note: in definition of macro ‘errprint’
40 | #define errprint(...) fprintf(stderr, __VA_ARGS__)
| ^~~~~~~~~~~
make: *** [Makefile:42: droidcam] Error 1
==> ERROR: A failure occurred in build().
Aborting...
error making: droidcam (v4l2loopback-dc-dkms)
@pickfire thanks for noticing, you are right. I added "libappindicator-gtk3" as optional dependency now, as we do the same with "gtk3", given that "droidcam-cli" works without both of those packages.
I wonder, perhaps this optional dependencies should be dropped and just added as regular dependencies.
libappindicator-gtk3 is a dependency, not just make dependency. Otherwise, droidcam
droidcam: error while loading shared libraries: libappindicator3.so.1: cannot open shared object file: No such file or directory
jonseitz I suspect that happens, because you have "." in your PATH, so local "install" script takes precedence over "global" "install" binary. I'll fix that, it seems like a reasonable case.
Ran into an issue installing just now, getting the following error:
==> Starting package_droidcam()...
~/builds/droidcam/src/droidcam-1.3/linux ~/builds/droidcam/src
Invalid parameters: '-Dm755' and 'droidcam'
==> ERROR: A failure occurred in package_droidcam().
Aborting...
It seems that the issue is that the calls to install ...
in the package scripts were referencing the install
script in src/droidcam-1.4/linux/
, instead of /sbin/install
. I was able to get it working by changing the PKGBUILD
to:
diff --git a/PKGBUILD b/PKGBUILD
index 5dd52df..61cf9d4 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -54,12 +54,12 @@ package_droidcam() {
pushd ${pkgbase}-${pkgver}/linux
# Install droidcam program files
- install -Dm755 "${pkgbase}" "$pkgdir/usr/bin/${pkgbase}"
- install -Dm755 "${pkgbase}-cli" "$pkgdir/usr/bin/${pkgbase}-cli"
- install -Dm644 icon2.png "$pkgdir/usr/share/pixmaps/${pkgbase}.png"
- install -Dm644 "../../${pkgbase}.desktop" "$pkgdir/usr/share/applications/${pkgbase}.desktop"
- install -Dm644 "../../${pkgbase}.conf" "${pkgdir}/etc/modules-load.d/${pkgbase}.conf"
- install -Dm644 README.md "$pkgdir/usr/share/licenses/${pkgbase}/LICENSE"
+ /sbin/install -Dm755 "${pkgbase}" "$pkgdir/usr/bin/${pkgbase}"
+ /sbin/install -Dm755 "${pkgbase}-cli" "$pkgdir/usr/bin/${pkgbase}-cli"
+ /sbin/install -Dm644 icon2.png "$pkgdir/usr/share/pixmaps/${pkgbase}.png"
+ /sbin/install -Dm644 "../../${pkgbase}.desktop" "$pkgdir/usr/share/applications/${pkgbase}.desktop"
+ /sbin/install -Dm644 "../../${pkgbase}.conf" "${pkgdir}/etc/modules-load.d/${pkgbase}.conf"
+ /sbin/install -Dm644 README.md "$pkgdir/usr/share/licenses/${pkgbase}/LICENSE"
}
package_v4l2loopback-dc-dkms() {
@@ -68,22 +68,22 @@ package_v4l2loopback-dc-dkms() {
local install_dir="${pkgdir}/usr/src/${_pkgname}-${pkgver}"
# Copy dkms.conf
- install -Dm644 dkms.conf "${install_dir}/dkms.conf"
+ /sbin/install -Dm644 dkms.conf "${install_dir}/dkms.conf"
# Set name and version
sed -e "s/@_PKGNAME@/${_pkgname}/" -e "s/@PKGVER@/${pkgver}/" -i "${install_dir}/dkms.conf"
# Install module loading configuration
- install -Dm644 "${pkgbase}.modprobe.conf" "$pkgdir/etc/modprobe.d/${pkgbase}.conf"
+ /sbin/install -Dm644 "${pkgbase}.modprobe.conf" "$pkgdir/etc/modprobe.d/${pkgbase}.conf"
# Install module source
cd ${pkgbase}-${pkgver}/linux/v4l2loopback
for d in $(find . -type d); do
- install -dm755 "${install_dir}/$d"
+ /sbin/install -dm755 "${install_dir}/$d"
done
for f in $(find . -type f ! -name '.gitignore'); do
- install -m644 "$f" "${install_dir}/$f"
+ /sbin/install -m644 "$f" "${install_dir}/$f"
done
}
Possibly it's something specific to my system, but dropping this here in case anyone runs into the same.
first, I wanted to thank the maintainers. Secondly, there is an easy fix for manjaro users. You just need to install kernel headers specific to your kernel version. So after installing linuxXX-headers, reboot and then install droidcam.I've tested it and it works perfectly fine. Best of luck!
@LenLord That's the problem, I've already did this before to try the installation of DroidCam: [albert@ThinkPad ~]$ sudo ln -s /usr/lib/libusbmuxd.so /usr/lib/libusbmuxd-2.0
And the build still the crashes...
UPDATE: I've found the issue, it missed the .so in libusbmuxd-2.0
Regards and thank you very much!!
Pinned Comments