emerge -pqv '=media-tv/mythtv-31.0-r5::gentoo' [ebuild U ] media-tv/mythtv-31.0-r5 [29.1-r1] USE="X%* alsa autostart cdda%* cdr%* dvb dvd exif%* java%* lame%* opengl%* perl pulseaudio systemd v4l%* vaapi vdpau wrapper x264%* xml xmltv xvid (-altivec) -asi% -bluray -cec -ceton% -debug -egl -fftw -hdhomerun% -hdpvr% -ieee1394 -ivtv% -jack -lcd -libass -lirc -nvdec% -oss% -python -raw% -vbox% -vpx% -x265% -zeroconf (-crystalhd%) (-hls%) (-mythlogserver%) (-theora%*) (-vorbis%*)" INPUT_DEVICES="-joystick" PYTHON_SINGLE_TARGET="(-python2_7%*)" This is the point of stopping compilation skipping strip -x libavcodec/x86/vp9itxfm.o GEN libavcodec/libavcodec.ver LD libavcodec/libmythavcodec.so.58 LD libavformat/libmythavformat.so.58 LD libavfilter/libmythavfilter.so.7 LD libavdevice/libmythavdevice.so.58 LD ffmpeg_g LD ffprobe_g STRIP ffprobe skipping strip -o ffprobe ffprobe_g STRIP ffmpeg skipping strip -o ffmpeg ffmpeg_g make[2]: Leaving directory '/var/tmp/portage/media-tv/mythtv-31.0-r5/work/mythtv-31.0/mythtv/external/FFmpeg' make[1]: Leaving directory '/var/tmp/portage/media-tv/mythtv-31.0-r5/work/mythtv-31.0/mythtv/external' make: *** [Makefile:66: external] Error 2 * ERROR: media-tv/mythtv-31.0-r5::gentoo failed (compile phase): * emake failed * And this the error itself MMX -D_GNU_SOURCE -DENABLE_UDF -DBLURAY_VERSION_MAJOR=1 -DBLURAY_VERSION_MINOR=0 -DBLURAY_VERSION_MICRO=2 -DBLURAY_VERSION_STRING=\"1.0.2\" -DVERSION=\"1.0.2\" -DHAVE_CO NFIG_H -DDLOPEN_CRYPTO_LIBS -DHAVE_PTHREAD_H -DHAVE_DIRENT_H -DHAVE_STRINGS_H -DHAVE_LIBXML2 -DHAVE_FT2 -DHAVE_FONTCONFIG -I. -I/usr/include/libxml2 -I/usr/include/X11 - I. -I../.. -Isrc -Isrc/libbluray -Isrc/libbluray/bdnav -I../libudfread -I../../libs/libmythbase -I../../libs/libmythtv -I/home/frank/.gentoo/java-config-2/current-user-v m/include -I/home/frank/.gentoo/java-config-2/current-user-vm/include/linux -I/usr/lib64/qt5/mkspecs/linux-g++ -o obj/bdj.o src/libbluray/bdj/bdj.c x86_64-pc-linux-gnu-g++ -c -pipe -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -O2 -march=bdver2 -std=c++11 -fomit-frame-pointer -fPIC -DQT_DISABLE_DEPRECATED_BEFORE= 0x050700 -msse -pthread -g -Wall -Wextra -Wpointer-arith -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -fvisibility-inlines-hidden -Wdouble-promotion -Wduplicated-cond -Wlogical-op -Wmissing-declarations -Wnull-dereference -Woverloaded-virtual -Wshadow -funit-at-a-time -faligned-new -Wzero-as-null-pointer-constant -Wsuggest-override -f PIC -std=gnu++11 -w -D_REENTRANT -DMMX -D_GNU_SOURCE -DALLOW_SSE2 -DALLOW_SSE3 -I. -I/usr/include/libxml2 -I/usr/include/X11 -I. -I../.. -I/usr/lib64/qt5/mkspecs/linux-g ++ -o obj/SoundTouch.o SoundTouch.cpp In file included from src/libbluray/bdj/bdj.c:27: src/libbluray/bdj/native/register_native.h:25:10: fatal error: jni.h: No such file or directory 25 | #include <jni.h> | ^~~~~~~ compilation terminated. make[2]: *** [Makefile:1245: obj/bdj.o] Error 1 If I set bluray useflag mythtv emerges without problem
This looks specific to the combination of USE="java -bluray". There's two locations where it'll try to find jni.h, its bundled copy, or inside $JDK_HOME if set And seems like your user's environment been leaking to portage given I see: -I/home/frank/.gentoo/java-config-2/current-user-vm/include -I/home/frank/.gentoo/java-config-2/current-user-vm/include/linux (good to use `su -` or `sudo -i` to get a clean root environment) Does /home/frank/.gentoo/java-config-2/current-user-vm/include/jni.h exist? Being missing is the only way I found to reproduce your issue. If not that, please provide emerge --info output and attach full build.log to hopefully get more hints, then re-open the bug.