ImageSorter is an older freeware application designed to arrange sets of images and help you find similar-looking images on your computer. This software is developed and distributed by the Visual Computing Group of HTW Berlin, Germany. You can download the Windows and MacOS binaries from the official project page.
ImageSorter has two dependency: Qt and libjpeg which will be compiled first.
- Install Visual C++ 2008, as it contains the necessary SDKs for Qt and ImageSorter.
- Download and extract the Qt 4.7.1 Source Code.
- Copy the contents of the folder
qt-everywhere-opensource-src-4.7.1
to the desired installation directory (e.g.,C:\Qt\4.7.1
). - Set up two environmental variables (works for 32bit and 64bit):
QTDIR=C:\Qt\4.7.1
QMAKESPEC=win32-msvc2008
- Update the PATH variable to include
%QTDIR%\bin
. - Download the latest version of jom (e.g., 1.1.2) and extract its files to
C:\Qt\jom
folder. - Launch the Visual Studio 2008 Command Prompt:
Start > Programs > Microsoft Visual Studio 2008 > Visual Studio 2008 Command Prompt
- Run the following commands:
cd c:\Qt\4.7.1
configure -debug-and-release -opensource -platform win32-msvc2008
..\jom\jom.exe -j N
- To clean up afterwards, run:
..\jom\jom.exe clean
- Create a file named
qtvars.bat
with the following content in thec:\Qt\4.7.1\bin
folder:
@echo off
rem
rem This file is generated by the Qt installer
rem
echo Setting up a Qt environment...
set QTDIR=C:\Qt\4.7.1
echo -- QTDIR set to C:\Qt\4.7.1
set PATH=C:\Qt\4.7.1\bin;%PATH%
echo -- Added C:\Qt\4.7.1\bin to PATH
set QMAKESPEC=win32-msvc2008
echo -- QMAKESPEC set to "win32-msvc2008"
if not "%1"=="vsvars" goto ENDVSVARS
call "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\amd64\vcvarsamd64.bat"
:ENDVSVARS
if not "%1"=="vsstart" goto ENDVSSTART
call "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\amd64\vcvarsamd64.bat"
devenv /useenv
:ENDVSSTART
- Download the modified
libjpeg-6b
source code from here. - Launch the Visual Studio 2008 x64 Command Prompt:
Start > Programs > Microsoft Visual Studio 2008 > Visual Studio 2008 x64 Win64 Command Prompt
- Navigate to the
jpeg-6b
directory and compile the project:
nmake clean all nodebug=1 /f makefile.vc
- Test the library:
nmake test /f makefile.vc
- Download and install Visual Studio 2008 along with Framework 3.5:
- Download the source code from here.
- Start VS2008 with QT x64 support:
C:\Qt\4.7.1\bin\qtvars.bat vsstart
- Open the
isortisearch
project in VS2008 from here. - Tell VS2008 the location of
cmd.exe
: Under "Tools->Options->Projects and Solutions->VC++ Directories," you can enter various build paths. If "Show directories for:" is set to "Executable files," the path to the QT bin directory (C:\Qt\4.7.1\bin) should already be visible. In this list, you need to add the following entries at the top to avoid "Error spawning cmd.exe":
$(SystemRoot)
$(SystemRoot)\System32
$(SystemRoot)\System32\wbem
- Specify the location of Windows SDK 6:
- In the same "VC++ Directories" section, set "Show directories for:" to "Include files" and add
c:\Program Files\Microsoft SDKs\Windows\v6.0A\Include
- Set "Show directories for:" to "Library files" and add
c:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib
- Without these changes you will get "LINK : fatal error LNK1104: cannot open file 'kernel32.lib'" and "Fatal Error C1083 - Cannot open include file: “windows.h”: No such file or directory"
- In the same "VC++ Directories" section, set "Show directories for:" to "Include files" and add
- Compile the
isortisearch
libraries:- Compile the
vBase_Release
,vSearch_Release
, andvSort_Release
builds using "Build > Configuration Manager > Active Solution Configuration". - Build the solution with "Build > Build Solution".
- Inside the
winlibs
andinclude
directory of the root directory will several new files.
- Compile the
- Copy
libjpeg.lib
:- Copy the
libjpeg.lib
file from thejpeg-6b
folder to thewinlibs
folder in the ImageSorter main directory.
- Copy the
- Open the ImageSorter GUI project in VS2008.
- Create an x64 platform if needed:
- Switch to the "Release" build using "Build > Configuration Manager > Active Solution Platform".
- Choose "New" and select "x64" as the platform type, copying settings from "Win32".
- Compile ImageSorter with the x64 platform:
- Switch to the "Release" build using "Build > Configuration Manager > Active Solution Configuration".
- Initiate the build process with "Build > Build Solution".
- In the
gui\x64\Release
is the resultingimagesorterv4.exe
This is the list of files and files structure ImageSorter needs to run:
- imagesorterv4.exe
- QtNetwork4.dll
- QtGui4.dll
- QtCore4.dll
- msvcr90.dll
- msvcp90.dll
- styles
- style.qss
- images
- ...
- imageformats
- qgif4.dll
- qico4.dll
- qjpeg4.dll
- qtiff4.dll
- qmng4.dll
- qsvg4.dll