Closed gaaned92 closed 6 years ago
@heckflosse Could you help to find what is missing in the build process for windows? André
@gaaned92 I can try to build for 64 bit windows but not for 32 bit. Which version of libraw do you use? Ingo
I fixed the formatting. @gaaned92 it makes your posts much more readable when you surround code in three "```" marks. Edit your post to see what I mean.
@gaaned92 It looks like the linker is missing jpeg, jasper and lcms
@Beep6581 : thank you for the tip
@heckflosse : I have the following packages installed in MSYS2
So it seems that a path or a command is missing in the cmake file. I tried to insert pkg-check-modules command with no result.
Sorry! I inadvertently closed the topic
@gaaned92 And I wondered why you closed it :) One question: All link errors are related to libraw_r. Do we need libraw_r or would libraw just be ok? Sorry, that's just a question as I have no clue what's the difference between libraw_r and libraw...
Ingo
According to libraw doc ,
In the current version, only static libraries are built:
libraw.a: non-thread-safe version
libraw_r.a: thread-safe
I fear that the problem will be the same with libraw.a André
@gaaned92 Did you build libraw this way?
@heckflosse : Ah! I see that jasper, jpeg, lcms are disabled. I wonder why? and why I should not use the libraw that is distributed in MSYS2?
I built 0.17 with" libraw cmake", but as it was available through MSYS2, I installed the package with pacman. As libraw cmake is incompatible with 0.18, I tried to build 0.18 with ./configure way but found problems. I asked to libraw people with no success(I don't rememer why). If you think I should build libraw myself (0.17 or 0.18?), I can try again.
@gaaned92 I would try building libraw 0.17 yourself (without jasper and so on) to see whether that solves the link errors. If that works, of course using libraw 0.18 would be even better, but let's make small steps (as in my optimizations ;)
@heckflosse That'not a pleasant perspective! I am first trying building 0.17 the ./configure way.
It miserably fails on compile error this time. here the error log
There are a huge amount of warnings : perhaps you know the flag permitting to suppress them. and an error on dcraw_common.cpp
@gaaned92 André, iirc there is an option to build libraw without the demosaic pack. The errors in you log are related to vng demosaic. Maybe it helps to build without that. Hdrmerge only needs very basic demosaic to create the thumbs for the dng files.
Actually when I tried compiling LibRaw manually two weeks ago, the demosaic pack(s) did not try to compile by default - to compile them one had to enable them manually.
@Hombre57 can we close this with your pending commit?
@Beep6581 yes
HDRMerge can be built on Windows with MSYS2 now, but the installer part is not functional yet. I worked on this today but will have to continue tomorrow, it's too late.
@jcelaya @heckflosse @Beep6581 I'd like to solve the build & setup process but would need some time. I've a patch ready to be committed that convert /
by \
for PROJECT_SOURCE_DIR
in setup.nsi
(in a spearate branch).
Should I clone hdrmerge and submit a PR or is it possible to have commit rights ? (I'm asking here because I didn't found a link for private message on GitHub)
I just opened PR #127 .
@Hombre57 only @jcelaya can grant you commit rights.
Can someone explain me why QtCore4
and QtGui4
are dynamically linked to hdrmerge.exe given that content of CMakeFiles\hdrmerge.dir\linklibs.rsp
(generated by cmake) :
-s -Wl,-Bstatic -lraw_r -lQtGui4 -lQtCore4 -Wl,-Bdynamic -lexiv2 -ljasper -Wl,-Bstatic -ljpeg -lz -ljpeg -llcms2 -lexpat -lintl -liconv -Wl,-Bdynamic -lpsapi -lwsock32 -limm32 -lwinmm -Wl,-Bstatic -lz -llcms2 -lexpat -lintl -liconv -Wl,-Bdynamic -lpsapi -lwsock32 -limm32 -lwinmm -lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32
Having statically linked libs with MSYS seems overcomplicated... I have no choice now than having dynamically linked libs if we want to be able to create a setup package now. At least, alglib
is built and statically linked to hdrmerge.
Ping @heckflosse @Floessie @agriggio
@Hombre57 Qt4 is deprecated, better to focus on the Qt5 branch: https://github.com/jcelaya/hdrmerge/tree/qt5 (it doesn't answer your question, but maybe the problem isn't there in the qt5 branch?)
@Beep6581 Is it planned to merge the Qt5 branch before the next release ?
@Hombre57 yes.
Issue made obsolete by #123
I made a trial on W32 to build hdrmerge, but it stopped at link step. Build parameters are following:
One compilation warning:
First linking error:
And a second for hdrmerge.exe linking error identical to above