Opened 11 years ago

Closed 10 years ago

Last modified 10 years ago

#5992 closed defect (fixed)

MythGallery compile issues on windows

Reported by: Jonathan Martens <jonathan@…> Owned by: Nigel
Priority: minor Milestone: unknown
Component: Ports - Windows Version: unknown
Severity: medium Keywords:
Cc: Ticket locked: no

Description

MythGallery will not compileon windows at the moment. First off all it can not find the libexif include files, this can be fixed by modifying the Makefile and modyfing the INCLUDEPATH line from this:

INCLUDEPATH += $${PREFIX}/include/mythtv

to this:

INCLUDEPATH += $${PREFIX}/include/mythtv /include

I am not sure if that is the proper fix or that something is else is wrong (as well) as at the linking stage compilation errors out like this:

g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-rel oc -mthreads -Wl -shared -Wl,--out-implib,liblibmythgallery.a -o libmythgallery. dll object_script.libmythgallery -L'u:/MSys/1.0/qt-win-opensource-src-4.4.3/lib ' -lopengl32 -lglu32 -lgdi32 -luser32 -LU:/mythtv/build//lib -LU:/mythtv/build// bin -L/bin -lmyth-0.22 -lmythui-0.22 -lmythtv-0.22 -lmythavformat-0.22 -lmythavc odec-0.22 -lmythavutil-0.22 -LU:/mythtv/build//lib -lfreetype -lmp3lame -lmythdb -0.22 -lmythavutil-0.22 -lmythavcodec-0.22 -lmyth-0.22 -lmythui-0.22 -lmythupnp- 0.22 -LU:/mythtv/build//bin -lexif -lQtSqld4 -lQtXmld4 -lQtOpenGLd4 -lQtGuid4 -l QtNetworkd4 -lQtCored4 u:\MinGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\mingw32\bin\ld.exe: cannot fin d -lexif collect2: ld returned 1 exit status make[1]: * [libmythgallery.dll] Error 1 make[1]: Leaving directory `/u/mythtv/mythplugins/mythgallery/mythgallery' make: * [sub-mythgallery-make_default] Error 2

But this seems to be due because libexif's dll is not called libexif but libexif-12.dll. By copying this to libexif.dll this can also be solved and compile finishes.

I have not tested this due to some other issues.

Attachments (2)

MythTV-iconview.cpp.patch (406 bytes) - added by Jonathan Martens <jonathan@…> 11 years ago.
Patch to get usleep defined again, this is caused by the removal of usleep from compat.h as part of #5980
MythTV-mythgallery.pro.patch (601 bytes) - added by Jonathan Martens <jonathan@…> 11 years ago.
Add /include folder for libexif include files

Download all attachments as: .zip

Change History (9)

Changed 11 years ago by Jonathan Martens <jonathan@…>

Attachment: MythTV-iconview.cpp.patch added

Patch to get usleep defined again, this is caused by the removal of usleep from compat.h as part of #5980

Changed 11 years ago by Jonathan Martens <jonathan@…>

Add /include folder for libexif include files

comment:1 Changed 11 years ago by danielk

Owner: changed from danielk to Nigel
Status: newassigned

comment:2 Changed 10 years ago by Nigel

Component: windowsPorts - Windows

comment:3 Changed 10 years ago by Nigel

(In [21995]) Windows build fix from Jonathan. Refs #5992

comment:4 Changed 10 years ago by Nigel

Status: assignedstarted

I had no compile problems with header files. -I/include is already in there.
Using the libexif-0.6.17 installed by win32-packager.pl, there is /bin/libexif-12.dll, /lib/libexif.a, /lib/libexif.dll.a and libexif.la. We can either copy/rename the DLL in osx-packager.pl, or link against the static version by augmenting mythplugins/configure to accept an extra argiment like --extra-libs=/lib and add a generated variable in settings.pro, or use --extra-libs to add that into EXTRALIBS in mythconfig.mak
Adding to mythplugins/configure would be more useful in the long term, but I think the libexif install is actually erroneous, so fixing that in win32-packager.pl is probably best.

comment:5 Changed 10 years ago by Nigel

Resolution: fixed
Status: startedclosed

(In [22013]) libexif install uses wrong DLL name. Closes #5992

comment:6 Changed 10 years ago by Nigel

(In [22015]) Enable MythGallery. Closes #5992. Closes #7133. Sorry - also ups the default version number. Resulting binary only lightly tested.

comment:7 Changed 10 years ago by Nigel

(In [23234]) Windows build fix, wasn't finding -lexif. Refs #5992. Several dep's .dlls are installed in /bin - 'tis easiest to add that into LIBS.

Note: See TracTickets for help on using tickets.