Compiling fails since trunk@7105

Archive of historical development discussions
Discussions / Development has moved to GitHub
Forum rules
*******************************
Please be aware we are now using GitHub for issue tracking and feature requests.
- This section of the forum is now closed to new topics.

*******************************
Post Reply
texke
Posts: 5
Joined: Mon Apr 27, 2015 10:03 am

Compiling fails since trunk@7105

Post by texke »

Hi,

I tend to recopile the HandBrake CLI on my Linux Mint 16 (with the howto somewhere on this board), but with the very latest x265 code & 10bit mode enabled (long story & howto is available if interested ;-)).

However, since svn commit 7105 (https://github.com/HandBrake/HandBrake/ ... 7400b5100b) I get this error:

Code: Select all

/usr/bin/x86_64-w64-mingw32-ar: creating libhb/libhandbrake.a
/usr/bin/x86_64-w64-mingw32-g++ -pipe -Wl,-S -shared -Wl,--enable-auto-import -static -Wl,--out-implib,./libhb/hb.lib -fmessage-length=0 -Wall -g0 -O3 -mfpmath=sse -msse2 -mno-ms-bitfields -DUSE_LIBAV_AAC -D__LIBHB__ -DUSE_PTHREAD -DSYS_MINGW -DUSE_X265 -DHB_NEED_STRTOK_R -DARCH_X86_64 -I./libhb/ -I./contrib/include -o libhb/hb.dll -Wl,--start-group libhb/audio_remap.o libhb/audio_resample.o libhb/batch.o libhb/bd.o libhb/colormap.o libhb/common.o libhb/compat.o libhb/cropscale.o libhb/deblock.o libhb/decavcodec.o libhb/deccc608sub.o libhb/declpcm.o libhb/decomb.o libhb/decpgssub.o libhb/decsrtsub.o libhb/decssasub.o libhb/dectx3gsub.o libhb/decutf8sub.o libhb/decvobsub.o libhb/deinterlace.o libhb/demuxmpeg.o libhb/denoise.o libhb/detelecine.o libhb/dvd.o libhb/dvdnav.o libhb/dxva2api.o libhb/eedi2.o libhb/encavcodecaudio.o libhb/encavcodec.o libhb/enclame.o libhb/enc_qsv.o libhb/enctheora.o libhb/encvobsub.o libhb/encvorbis.o libhb/encx264.o libhb/encx265.o libhb/fifo.o libhb/hb.o libhb/hb_dict.o libhb/hb_json.o libhb/lang.o libhb/muxavformat.o libhb/muxcommon.o libhb/nal_units.o libhb/nlmeans.o libhb/nlmeans_x86.o libhb/oclnv12toyuv.o libhb/oclscale.o libhb/opencl.o libhb/openclwrapper.o libhb/param.o libhb/ports.o libhb/qsv_common.o libhb/qsv_filter.o libhb/qsv_filter_pp.o libhb/qsv_memory.o libhb/reader.o libhb/rendersub.o libhb/rotate.o libhb/scan.o libhb/stream.o libhb/sync.o libhb/taskset.o libhb/update.o libhb/vadxva2.o libhb/vfr.o libhb/work.o ./contrib/lib/libass.a ./contrib/lib/libavcodec.a ./contrib/lib/libavformat.a ./contrib/lib/libavutil.a ./contrib/lib/libavresample.a ./contrib/lib/libdvdnav.a ./contrib/lib/libdvdread.a ./contrib/lib/libfontconfig.a ./contrib/lib/libfreetype.a ./contrib/lib/libmp3lame.a ./contrib/lib/libogg.a ./contrib/lib/libsamplerate.a ./contrib/lib/libswscale.a ./contrib/lib/libvpx.a ./contrib/lib/libtheora.a ./contrib/lib/libvorbis.a ./contrib/lib/libvorbisenc.a ./contrib/lib/libx264.a ./contrib/lib/libxml2.a ./contrib/lib/libbluray.a ./contrib/lib/libjansson.a ./contrib/lib/libfdk-aac.a ./contrib/lib/libx265.a ./contrib/lib/libiconv.a ./contrib/lib/libregex.a ./contrib/lib/libfribidi.a ./contrib/lib/libbz2.a ./contrib/lib/libz.a -lpthread -lws2_32 -luuid -Wl,--end-group
libhb/ports.o:ports.c:(.text+0x59a): undefined reference to `SHGetKnownFolderPath'
libhb/ports.o:ports.c:(.text+0x627): undefined reference to `SHGetKnownFolderPath'
/usr/bin/x86_64-w64-mingw32-ld: libhb/ports.o: bad reloc address 0x0 in section `.pdata'
collect2: ld returned 1 exit status
make: *** [libhb/hb.dll] Error 1
I tried compiling with the latest (4.0.2) and even version 3.3.0 mingw-w64 (manually installed), but then freetype fails, and that brings us to a cascading effect ofcourse.
The error above is with the mingw-w64 packages from Linux Mint 16 (Ubuntu 13.10, Saucy Salamander)

Has anyone got an idea how I get to fix this error?
User avatar
s55
HandBrake Team
Posts: 10350
Joined: Sun Dec 24, 2006 1:05 pm

Re: Compiling fails since trunk@7105

Post by s55 »

Looks like the libraries are OK, but the version of MinGW you are using doesn't have the correct headers.

For reference, I use: http://sourceforge.net/projects/mingw-w ... 2/download

Also note, HandBrake is an 8bit engine, so 10bit encoding isn't so useful.
texke
Posts: 5
Joined: Mon Apr 27, 2015 10:03 am

Re: Compiling fails since trunk@7105

Post by texke »

Works like a charm, thank you!

Yeah, my input is 8bit, I'm experimenting with the 10bit x265 because of banding.
Maybe it's my imagination, but there are some improbements.
User avatar
s55
HandBrake Team
Posts: 10350
Joined: Sun Dec 24, 2006 1:05 pm

Re: Compiling fails since trunk@7105

Post by s55 »

HandBrake can't do 10bit. This is call placebo affect :)
texke
Posts: 5
Joined: Mon Apr 27, 2015 10:03 am

Re: Compiling fails since trunk@7105

Post by texke »

Haha, crap! Back to the drawing board, gonna compile the 8-bit version and encode the same video to get rid of these thoughts :D

I was so convinced because of this output while encoding:

Code: Select all

x265 [info]: HEVC encoder version 1.6+298-4a7176bab7423d83
x265 [info]: build info [Windows][GCC 4.9.0][64 bit] 16bpp
x265 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX AVX2 FMA3 LZ
CNT BMI2
x265 [info]: Main 10 profile, Level-4 (Main tier)
x265 [info]: Thread pool created using 8 threads
x265 [info]: frame threads / pool features       : 3 / wpp(13 rows)+pmode+pme
x265 [info]: Internal bit depth                  : 10
texke
Posts: 5
Joined: Mon Apr 27, 2015 10:03 am

Re: Compiling fails since trunk@7105

Post by texke »

And yet, I swear on my mothers head there is a difference :D
More offtopic stuff incoming:
I used a short clip I found in the doom9 forum about banding, so the source is pretty grainy.
I encoded the clip to x265 with HandBrake, first with -DHIGH_BIT_DEPTH=ON, and then OFF ofcourse, with the same settings.
Here are the results (it's not crisp quality, but still 'better'):
http://www.texke.be/8vs10.png
Post Reply