GeoSetter Forum

This is a community forum and not official technical support. — If you need official support: Contact Us

The following comments are owned by whoever posted them. We are not responsible for them in any way.

Back to Threads Reply to Thread

Geosetter v 3.4.16

Hi

I just installed Geosetter v3.4.16 with Crossover Linux 10.0.3 standard and used a IE7 winxp bottle.

From my first 24h of testing I do not see any functions that do not work the same as with Win XP.

I also tried it with the wine/winetricks with IE6 and v6redist and almost everything worked but I got some very annoying glitches when using the maps. I didn't want to invest more time and tried it with Crossover and it just worked :)

Cheers

Mike

My OS: Ubuntu 11.04 with Unity

Hi Mike,

thank you for testing Geosetter with Ubuntu 11.04
I've also tried it out with the latest versions:

  • Geosetter 3.4.16
  • Crossover Linux Pro 10.0.3
  • Ubuntu 11.04
  • Gnome 3.0
    After installing IE7 the app (Geosetter) started correctly.

But...
...following "main" features are not working in my test:

  • ExifTool Update
  • BildInfo (ExifTool) - Strg+I
  • Saving a picture with changed ExifDate (i.d. GPS Coordinates)

Are these features working in your test?

Greetings,
Mr. K

Hi Mr. K

Sorry for the delay in responding.

I noticed the problem with Exif-tool update the next day.

Nevertheless I sure that everything else worked and I tested it on some Singapore photos. But today I wanted to work on some new photos and as you said I couldn't save the data.

I am confused right now and try to remember if I will did use Geosetter with wine or if I had done my Singapore photos with Geosetter in a virtual machine. I will try to find the solution.

This is very strange

cheers
Mike

I just installed Geosetter v3.4.16 with Crossover Mac 10.0.3 Pro and used a IE7 winxp bottle.

Updating to latest EXIFtool fails (or runs again each time I start the program). (Also, manually downloading current latest exiftool v8.6, renaming it, and putting it on the bottle's C: drive to replace the exiftool.exe that is already there does not stop the message about updating on the next launch.}

I had trouble navigating to any folder of images outside my user folder (for example in the Mac's 'Shared' folder), but could set in preferences a start folder in 'Shared' and then navigate from there.

I can use some functions, I see the map displayed correctly for images previously tagged with GPS information, but I can only see metadata by double-clicking on the image thumbnail: that is to say, if I use the View>Image Info (ExifTool), it opens to a blank window with no fields or field data.

I can set the location of the image and the direction of it, but not the angular viewing width (or it does not have the 'cone' that I see using GeoSetter in WindowsXP).

Saving changes to DNG files fails with the following Error/Warning:
Can't locate PAR.pm in @INC (@INC contains: .) at -e line 860.

The error's 'ExifTool Execution Statement' is as follows (with personal information edited out):

C:\users\crossover\Application Data\GeoSetter\tools\exiftool.exe  -@ "C:\users\crossover\Temp\et0001085C.arg" "Z:\Users\Shared\wengam_docs\pictures\slides_35mm\48-bit_DNG\augustins_1988\augustins-01.dng"

-EXIF:GPSImgDirection=199.03
-EXIF:GPSImgDirectionRef=T
-EXIF:GPSDestLatitude=43.60081235
-EXIF:GPSDestLongitude=1.44582331
-EXIF:GPSDestLatitudeRef=N
-EXIF:GPSDestLongitudeRef=E
-XMP:GPSDestLatitude=43.60081235
-XMP:GPSDestLongitude=1.44582331
-XMP:GPSImgDirection=199.03
-XMP:GPSImgDirectionRef=T

Hi,

I think that's an ExifTool-Bug with "Wine".
Check this out:

Trying exiftool.exe like GeoSetter does will fail (with error like posted before 'par.inc'):

user@desktop:~/.wine/drive_c$ wine c:\\exiftool.exe -@ c:\\exiftool_update.arg c:\\_MG_7029.JPG
fixme:msvcrt:msvcrt_fdtoh wtf
fixme:msvcrt:msvcrt_fdtoh wtf
Compress/Zlib.pm did not return a true value at C:/Perl/site/lib/Archive/Zip.pm line 24.
BEGIN failed--compilation aborted at C:/Perl/site/lib/Archive/Zip.pm line 24.
Compilation failed in require at -e line 318.

But alternativly as in (http://owl.phy.queensu.ca/~phil/exiftool/install.html#Windows) explained with PERL ExifTool will work:

user@desktop:~/.wine/drive_c$ wine c:\\Perl\\bin\\perl.exe c:\\exiftool.pl -@ c:\\exiftool_update.arg c:\\_MG_7029.JPG
fixme:actctx:parse_depend_manifests Could not find dependent assembly L"Microsoft.Windows.Common-Controls" (6.0.0.0)
fixme:msvcrt:msvcrt_fdtoh wtf
fixme:msvcrt:msvcrt_fdtoh wtf
Warning: Invalid original decision data - c:/_MG_7029.JPG
fixme:msvcrt:MSVCRT__sopen : pmode 0x01b6 ignored
fixme:msvcrt:msvcrt_fdtoh wtf
Warning: Invalid original decision data - c:/_MG_7029.JPG
    1 image files updated

So I will post this test at Phil Harvey's ExifTool-Forum:
http://u88.n24.queensu.ca/exiftool/forum/index.php?topic=3241.0

and as a Bug at Friedemann Schmidts-MANTIS Page:
http://www.geosetter.de/mantis/view.php?id=844

...
I hope we can use a "bug-free" Exiftool with Geosetter within this summer 😊

  • Mr. K

SOLVED (partly, by a workaround)


// Exiftool-Wrapper by Mr. K (License: GPLv2)
// for original EXIFTOOL written by Phil Harvey
//
// Problem description:
// Bug of PAR package, i.e. EXE-Version of the EXIFTOOL under WINE or CrossOver not useable
//
// Instructions to solve this problem:
// Download the Perl-Version of the EXIFTOOL by Phil Harvey and extract to C:\ under Wine or your Crossover Bottle
// Download and Install Perl as in
// http://owl.phy.queensu.ca/~phil/exiftool/install.html#Windows
// described. 
// Compile this C-File
// E. g. under Linux with: i586-mingw32msvc-gcc -Wall -o exiftool.exe ./exiftool.c
// Copy and overwrite this exiftool.exe under c:/geosetter/tools/ and c:/users/crossover/Application Data/GeoSetter/tools/
// (maybe the second temporary folder is different at your system...)
//
// Known Bugs:
// 'Bild Info' is not working
// Initialisation of Geosetter and Updates of EXIFTOOL are not working
//
// Idea of this hack:
// Execute Perl-Version instead of original Exe-Version
//
// Substitue 1st argument with string "m_str_perl" (folder structure is important!)
// Just exexute, if arguments > 2 (needed for the right functionality)
//
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
//#include <windows.h> //needed for debug output (MessageBox)
int main(int argc, char *argv[]) {
   int return_value = 1;
   int i;
   char m_str[255];
   char m_str_to_call[1000];
   char m_str_perl[] = "C:\\Perl\\bin\\perl.exe C:\\exiftool.pl";
   strcat(m_str_to_call, m_str_perl);
   if (argc > 2) {
      for(i = 1; i < argc; i++) {
          sprintf(m_str, "  %s", argv[i]);
        strcat(m_str_to_call, m_str);
      }
   //MessageBox(NULL,m_str_to_call,"Debug-Output",1);
   return_value = system(m_str_to_call);
   }
   return return_value;
}

Any questions? 😏

😯 Hopefully this workaround will be integrated somehow into Geosetter...

Because of a general problem with the EXE-Version of the EXIFTOOL as a PAR package this fix is maybe not that easy...

Dear Mr_K,

thanks for trying to bring Geosetter to life under Ubuntu. I followed your workaround but failed to performing the last part (I'm using Wine) and get the error-message when saving the photo-files:
Compress/Zlib.pm did not return a true value at C:/Perl/site/lib/Archive/Zip.pm line 24.
BEGIN failed--compilation aborted at C:/Perl/site/lib/Archive/Zip.pm line 24.
Compilation failed in require at -e line 318.

I think it has to do with

// Substitue 1st argument with string "m_str_perl" (folder structure is important!)
// Just exexute, if arguments > 2 (needed for the right functionality)

please, could you explain more detailed, what here is to do?

Thank you!

Hi Klaus,

please try this:
Copy an arbitrary jpg-file "picture_to_change.jpg" to c:\ (wine directory)
Generate a file named: "exiftool_update.arg" with following arguments for the exiftool under c:\, too:


-overwrite_original
-L
-P
-m
-IFD0:Artist=Mr_K

-XMP:CountryCode=DEU
-XMP:CreatorCity=KCity

-XMP:Creator=Mr_K

-XMP:Country=Deutschland
-XMP:State=State
-XMP:City=City
-XMP:Location=Location

-IPTC:CodedCharacterSet=
-IPTC:City=City
-IPTC:Sub-location=Location
-IPTC:Province-State=State
-IPTC:Country-PrimaryLocationName=Deutschland
-IPTC:Country-PrimaryLocationCode=DEU
-IPTC:By-line=Mr_K

-EXIF:gpsLatitudeRef=N
-EXIF:gpsLatitude=55.058686619975
-EXIF:gpsLongitudeRef=E
-EXIF:gpsLongitude=5.94054428000833
-EXIF:GPSAltitudeRef=Above Sea Level
-EXIF:gpsAltitude=60

-XMP-photoshop:DateCreated < EXIF:DateTimeOriginal
-XMP-xmp:ModifyDate < EXIF:ModifyDate
-IPTC:DateCreated < EXIF:DateTimeOriginal
-IPTC:TimeCreated < EXIF:DateTimeOriginal
-GPS:GPSDateStamp  < EXIF:DateTimeOriginal
-XMP-exif:GPSDateTime < EXIF:DateTimeOriginal
-GPS:GPSTimeStamp  < EXIF:DateTimeOriginal
-XMP-exif:GPSDateTime < EXIF:DateTimeOriginal

Now try to execute following line in a bash-terminal:
wine c:\\Perl\\bin\\perl.exe c:\\exiftool.pl -@ c:\\exiftool_update.arg c:\\picture_to_change.jpg

If this will not work,copy the file "exiftool.pl" also under "C:\windows\systems32\"
(For access to "exiftool.pl" without the specific path)

--> If the bash looks "good", check your "picture_to_change.jpg" with Geosetter or any other Metadata-Programm for Pictures. I also like:

MaPiVi

... does this works correctly ??? 😯

BTW: Geosetter also generates an *.arg-file and executes exiftool.exe like written before. Important hint: The File "exiftool".exe will be copied to an temporary directory, if excecuted for the first time with Geosetter. Please exchange this exe-file also with the one changed to Perl.

  • Mr. K

Dear Mr_K,

I followed your instructions and it worked perfectly. What would be the steps for using Geosetter?

What I noticed when undergoing the routine to install Geosetter under Wine (installing Wine, then folloging the instructions for Geosetter under appdb.winehq.org) was that writing the data back to the photo file worked perfectly (without your workaround and the perl installation) when I had only IE6 installed - only that the overlay wasn't there.
After installing IE7 the overlay works fine but I can't write the data to the file anymore. So it might also have to do something with the IE7 installation or the libraries used by wine and if used in native or builtin mode.

Thanks!

...hmmm. IE6 or IE7 under wine with different behaviour for exiftool.exe ...
Thank you for this information, maybe that's a hint for the wine developers.

The last test I see is to check if the exiftool.exe used by Geosetter is the one, which was overwritten.

So please uncomment the MessageBox-Line before compiling your new "exiftool.exe"-Wrapper like this:


// Exiftool-Wrapper by Mr. K (License: GPLv2)
// for original EXIFTOOL written by Phil Harvey
//
// Problem description:
// Bug of PAR package, i.e. EXE-Version of the EXIFTOOL under WINE or CrossOver not useable
//
// Instructions to solve this problem:
// Download the Perl-Version of the EXIFTOOL by Phil Harvey and extract to C:\ under Wine or your Crossover Bottle
// Download and Install Perl as in
// http://owl.phy.queensu.ca/~phil/exiftool/install.html#Windows
// described. 
// Compile this C-File
// E. g. under Linux with: i586-mingw32msvc-gcc -Wall -o exiftool.exe ./exiftool.c
// Copy and overwrite this exiftool.exe under c:/geosetter/tools/ and c:/users/crossover/Application Data/GeoSetter/tools/
// (maybe the second temporary folder is different at your system...)
//
// Known Bugs:
// 'Bild Info' is not working
// Initialisation of Geosetter and Updates of EXIFTOOL are not working
//
// Idea of this hack:
// Execute Perl-Version instead of original Exe-Version
//
// Substitue 1st argument with string "m_str_perl" (folder structure is important!)
// Just exexute, if arguments > 2 (otherwise the konsole is needed for the right functionality)
// not concatinating string "-k" (excluding the (k)onsole - because of problems with CrossOver)
//
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
//#include <windows.h> //needed for debug output (MessageBox)
int main(int argc, char *argv[]) {
   int return_value = 1;
   int i;
   char m_str[255];
   char m_str_to_call[1000];
   char m_str_perl[] = "C:\\Perl\\bin\\perl.exe C:\\exiftool.pl";
   strcat(m_str_to_call, m_str_perl);
   if (argc > 2) {
      for(i = 2; i < argc; i++) {
          sprintf(m_str, "  %s", argv[i]);
        strcat(m_str_to_call, m_str);
      }
   MessageBox(NULL,m_str_to_call,"Debug-Output",1); //This line uncommented
   return_value = system(m_str_to_call);
   }
   return return_value;
}

Overwrite all "exiftool.exe"-files on your system and start Geosetter.
A MessageBox should pop-up, if you try to save some EXIF-Data.

Hope to read your result 😏

  • Mr. K

Dear Mr. K

I compiled the new file, replaced all exiftool.exe I could find and startet Geosetter skipping the update of Exiftool. The message box gives the following output:
C:\Perl\bin\perl.exe C:\exiftool.pl -@ C:\users\a\Temp\et0003B49F.arg -common_args Z:\media\R0022195.DNG
After that everything worked fine, no error, the data were written into the file.

Then I startet Geosetter again and updated Exiftool to the newest Version (8.61).
Now exiftool didn't work. Your message box didn't pop up but the output box of Geosetter gives the following:

ExifTool-Aufruf:```

C:\users\a\Anwendungsdaten\GeoSetter\tools\exiftool.exe -@ "C:\users\a\Temp\et000152FE.arg" -common_args "Z:\media\R0022195.JPG"

  • (here follow the exiftool arguments)
    
    Errors:```

Compress/Zlib.pm did not return a true value at C:/Perl/site/lib/Archive/Zip.pm line 24.
BEGIN failed--compilation aborted at C:/Perl/site/lib/Archive/Zip.pm line 24.
Compilation failed in require at -e line 318.


The updating routine of Exiftool starts everytime no matter if I updated before.  
Although I replaced every exiftool.exe (programme\geosetter\tools, users\a\anwendungsdaten\geosetter\tools, users\temp\par-a\cache-exiftool-8.61) only the file in anwendungsdaten is replaced by the automatic update with a 4.5MB file.

For the installation of IE7 I followed the instruction in the appsdb.winehq. There are some dlls to install, the changes in winecfg I did but it worked also without them (only the msvcrt had to be set to "Builtin" otherwise the installation would fail) or they were made automaticly.   
So maybe it's not IE7 but some dlls or other changes which make the Exiftool go wrong.

I hope this helps to bring Geosetter under Linux to life.

Klaus, thank you for your comment!

To conclude the status for Geosetter under Wine/CodeWeavers for all other users:

  • Installing Geosetter by its setup-file works 😊
  • IE7 (Internet Explorer 7.0) is needed, so please update this (IE6 doesn't support an overlayed map)
  • with IE7 installed, the EXIFTOOL.EXE does NOT work (see error message by klaus)
  • The above described workaround (a wrapper to use the PERL-Version of the EXIFTOOL, instead of the EXE-Version) for Geosetter will write all EXIF-Data correctly (so far as I know)
  • BUT updating the EXIFTOOL will overwrite this workaround (There is no option to disable this automatic exiftool-update question)

(To protect the workaround please set the file-permissions to execute and read-only)

Maybe some day the developers of the exiftool, PAR-Implementation for Perl or Geosetter will include this workaround or fix this bug
😕

Mr. K

Dear Mr. K,

Thank you for your help - the problem was obviously, that I updated the exiftool.exe. Now everything works fine!

1 to 13 of 13

CrossOver Forums: the place to discuss running Windows applications on Mac and Linux

CodeWeavers or its third-party tools process personal data (e.g. browsing data or IP addresses) and use cookies or other identifiers, which are necessary for its functioning and required to achieve the purposes illustrated in our Privacy Policy. You accept the use of cookies or other identifiers by clicking the Acknowledge button.
Please Wait...
eyJjb3VudHJ5IjoiVVMiLCJsYW5nIjoiZW4iLCJjYXJ0IjowLCJ0enMiOi02LCJjZG4iOiJodHRwczpcL1wvbWVkaWEuY29kZXdlYXZlcnMuY29tXC9wdWJcL2Nyb3Nzb3Zlclwvd2Vic2l0ZSIsImNkbnRzIjoxNzMxNDM1MjAzLCJjc3JmX3Rva2VuIjoiQzhVTG1RUFhocDR1RVlwaCIsImdkcHIiOjB9