diff options
-rw-r--r-- | Linux/README | 30 | ||||
-rw-r--r-- | OSX/README.txt | 76 | ||||
-rw-r--r-- | Win32/README.txt | 31 | ||||
-rw-r--r-- | heimdall-frontend/Source/mainwindow.cpp | 11 | ||||
-rw-r--r-- | heimdall-frontend/heimdall-frontend.pro | 5 | ||||
-rw-r--r-- | heimdall/configure.ac | 2 |
6 files changed, 84 insertions, 71 deletions
diff --git a/Linux/README b/Linux/README index 78cf3af..33a8bc0 100644 --- a/Linux/README +++ b/Linux/README @@ -183,7 +183,7 @@ Performing a Custom Flash with Heimdall Frontend: Flashing Firmware from Command Line: - + 1. Fully charge your phone (use the wall charger as it's faster). 2. Download a decrypted device ROM or a Heimdall Firmware Package @@ -218,10 +218,10 @@ Flashing Firmware from Command Line: button) after executing --no-reboot commands. 8. Use the help and print-pit output to construct a command with all the - files you want to flash. + files you want to flash. Here is an example that does a full flash and repartition on a GT-I9000: - + heimdall flash --repartition --resume --pit s1_odin_20100512.pit --FACTORYFS factoryfs.rfs --CACHE cache.rfs --DBDATA dbdata.rfs --IBL+PBL boot.bin --SBL Sbl.bin --PARAM param.lfs --KERNEL zImage --MODEM modem.bin 9. Heimdall will display the progress as it flashes so that you know things @@ -499,13 +499,6 @@ Appendix B - Installing Heimdall from Source: sudo make install cd .. - NOTE: As an alternative to "sudo make install" you may chose to generate - a package by typing the following: - - sudo checkinstall --pkgversion <version> - - Where <version> is the current Heimdall release e.g. 1.3.0 - 5. Done @@ -514,25 +507,22 @@ Appendix C - Installing Heimdall Frontend from Source: 1. Compile and install Heimdall, see Appendix B. - 2. First make sure you have installed Qt 4.7 or later, available from: + 2. First make sure you have installed Qt (4.7 or later, but prior to 5.0). + You can typically install Qt through your platforms package manager, or + alternatively download it from: - http://qt.nokia.com/downloads/ + http://qt-project.org/downloads 3. Open a terminal and navigate to the directory you extracted Heimdall to. 4. Enter the following commands to compile and install Heimdall Frontend: cd heimdall-frontend - qmake-qt4 heimdall-frontend.pro + qmake-qt4 make sudo make install - - NOTE: As an alternative to "sudo make install" you may chose to generate - a package by typing the following: - - sudo checkinstall --pkgversion <version> - - Where <version> is the current Heimdall release e.g. 1.3.0 + + NOTE: If qmake-qt4 does not exist on your platform, try qmake instead. 5. Done diff --git a/OSX/README.txt b/OSX/README.txt index 47b0bf4..3b33cd4 100644 --- a/OSX/README.txt +++ b/OSX/README.txt @@ -19,7 +19,7 @@ Installing Heimdall and Heimdall Frontend Binaries: 1. Run "Heimdall Suite.pkg" and follow the instructions. 2. Reboot your system. - + 3. Done @@ -187,7 +187,7 @@ Performing a Custom Flash with Heimdall Frontend: Flashing Firmware from Command Line: - + 1. Fully charge your phone (use the wall charger as it's faster). 2. Download a decrypted device ROM or a Heimdall Firmware Package @@ -226,7 +226,7 @@ Flashing Firmware from Command Line: file you want to flash. Here is an example that does a full flash and repartition on a GT-I9000: - + heimdall flash --repartition --resume --pit s1_odin_20100512.pit --FACTORYFS factoryfs.rfs --CACHE cache.rfs --DBDATA dbdata.rfs --IBL+PBL boot.bin --SBL Sbl.bin --PARAM param.lfs --KERNEL zImage --MODEM modem.bin 9. Heimdall will display the progress as it flashes so that you know things @@ -479,24 +479,40 @@ be included. Appendix B - Installing Heimdall from Source: - 1. First make sure you have installed XCode and pkgconfig. - - NOTE: There are several different ways you can install pkgconfig, one - option is to use Macports (http://www.macports.org/). - - 2. Open a terminal and navigate to the directory you downloaded, - or extracted, Heimdall to. - - 3. Download, compile and install libusb-1.0: - - http://www.libusb.org/ - - NOTE: Alternatively you may install Macport's libusb-devel package. - - 4. Enter the following commands to compile libpit. + PREREQUISITES: + + Heimdall requires C++11 (aka C++0x) functionality in order to compile. + Unfortunately, XCode includes an old version of GCC which does not + include support for C++11. XCode does include clang, which does + support C++11. However, clang's C++11 can only target OS X 10.7 or + newer. There are also slight compatibility issues between clang and + Qt, which is required in order to compile Heimdall Frontend. As such + these instructions will utilise GCC 4.7 installed via Homebrew. + + Xcode can be downloaded through the App store or from Apple's + developer website: + + https://developer.apple.com/xcode/ + + Homebrew install instructions are available at: + + http://mxcl.github.io/homebrew/ + + 1. First make sure you have installed XCode and Homebrew (see above). Then + open a terminal and install GCC 4.7, pkgconfig and libusbx via Homebrew: + + brew tap homebrew/versions + brew install gcc47 pkgconfig libusbx + + NOTE: Installing GCC 4.7 will take a long time. + + 2. In a terminal navigate to the directory you downloaded (or extracted) + Heimdall to. + + 3. Enter the following commands to compile libpit. cd libpit - ./configure + ./configure CC=gcc-4.7 CXX=g++-4.7 make cd .. @@ -505,12 +521,12 @@ Appendix B - Installing Heimdall from Source: 4. Enter the following commands to compile and install Heimdall: cd heimdall - ./configure + ./configure CC=gcc-4.7 CXX=g++-4.7 make sudo make install cd .. - 5. If you haven't installed the driver before, enter the following: + 5. If you haven't installed the driver before, do the following: cd OSX sudo ./install-kext.sh @@ -523,23 +539,17 @@ Appendix C - Installing Heimdall Frontend from Source: 1. Compile and install Heimdall, see Appendix B. - 2. First make sure you have installed XCode from your OS X install DVD. - You'll also need Qt 4.7 or later, available from: + 2. Heimdall Frontend requires Qt (4.7 or later, but prior to 5.0), available + from: - http://qt.nokia.com/downloads/ + http://qt-project.org/downloads 3. Open a terminal and navigate to the directory you extracted Heimdall to. 4. Enter the following commands to compile and install Heimdall Frontend: cd heimdall-frontend - qmake heimdall-frontend.pro - - 5. Open Finder and navigate to the heimdall-frontend sub-directory. Open - the newly created XCode project. - - 6. From the menu bar select Build -> Build. This outputs heimdall-frontend - to /Applications - - 7. Done + qmake -spec macx-g++ QMAKE_CC=gcc-4.7 QMAKE_CXX=g++-4.7 + make + 5. Done diff --git a/Win32/README.txt b/Win32/README.txt index 6480258..2214497 100644 --- a/Win32/README.txt +++ b/Win32/README.txt @@ -11,22 +11,23 @@ DISCLAIMER: for the result of your actions.
-These instructions were written for Windows Vista / Server 2008 however the
+These instructions were written for Windows 7 / Vista / Server 2008 however the
producedure should be essentially the same for all supported versions of
Windows (XP onwards).
Troubleshooting:
- 1. If you get an error as follows:
+ 1. If when you try launch Heimdall or Heimdall Frontend you receive a
+ similar to:
- The program can't start because MSVCP100.dll is missing from your
+ The program can't start because MSVCP110.dll is missing from your
computer.
- This means that you haven't installed the Microsoft Visual C++ 2010
+ This means that you haven't installed the Microsoft Visual C++ 2012
runtimes. The runtimes can be downloaded from Microsoft's website:
- http://www.microsoft.com/download/en/details.aspx?id=5555
+ http://www.microsoft.com/en-au/download/details.aspx?id=30679
@@ -233,7 +234,7 @@ Performing a Custom Flash with Heimdall Frontend: Flashing Firmware from Command Line:
-
+
1. Fully charge your phone (use the wall charger as it's faster).
2. Download a decrypted device ROM or a Heimdall Firmware Package
@@ -275,7 +276,7 @@ Flashing Firmware from Command Line: file you want to flash.
Here is an example that does a full flash and repartition on a GT-I9000:
-
+
heimdall flash --repartition --resume --pit s1_odin_20100512.pit --FACTORYFS factoryfs.rfs --CACHE cache.rfs --DBDATA dbdata.rfs --IBL+PBL boot.bin --SBL Sbl.bin --PARAM param.lfs --KERNEL zImage --MODEM modem.bin
NOTE: The above command assumes the files specified are installed in the
@@ -531,20 +532,20 @@ be included. Appendix B - Installing Heimdall Suite from Source
- 1. Ensure that you have both a version of Visual Studio 2010 with C++
- support and Qt Developer Framework 4.7 (or newer) installed on your
- system.
+ 1. Ensure that you have both a version of Visual Studio 2012 with C++
+ support and Qt Developer Framework (4.7 or later, but prior to 5.0)
+ installed on your system.
- A free version (Visual C++ 2010 Express) can be downloaded from
+ A free version (Visual C++ 2012 Express) can be downloaded from
Microsoft's website:
- http://www.microsoft.com/visualstudio/en-us/products/2010-editions/visual-cpp-express
+ http://www.microsoft.com/visualstudio/eng/products/visual-studio-express-products
- Qt can also be downloaded freely from Nokia's website:
+ Qt can also be downloaded freely from:
- http://qt.nokia.com/downloads/
+ http://qt-project.org/downloads
- 2. Open Heimdall/msvc2010.sln
+ 2. Open msvc2012.sln
3. From the Solutions Configuration drop-down change from "Debug" to
"Release".
diff --git a/heimdall-frontend/Source/mainwindow.cpp b/heimdall-frontend/Source/mainwindow.cpp index 02d7a62..46dc381 100644 --- a/heimdall-frontend/Source/mainwindow.cpp +++ b/heimdall-frontend/Source/mainwindow.cpp @@ -52,13 +52,19 @@ void MainWindow::StartHeimdall(const QStringList& arguments) QStringList paths;
- // Ensure /usr/bin is in PATH
+ // Ensure /usr/local/bin and /usr/bin are in PATH.
for (int i = 0; i < environment.length(); i++)
{
if (environment[i].left(5) == "PATH=")
{
paths = environment[i].mid(5).split(':');
- paths.prepend("/usr/bin");
+
+ if (!paths.contains("/usr/local/bin"))
+ paths.prepend("/usr/local/bin");
+
+ if (!paths.contains("/usr/bin"))
+ paths.prepend("/usr/bin");
+
break;
}
}
@@ -71,6 +77,7 @@ void MainWindow::StartHeimdall(const QStringList& arguments) if (heimdallPath.length() > 0)
{
+ utilityOutputPlainTextEdit->clear();
heimdallFailed = false;
if (heimdallPath[heimdallPath.length() - 1] != QDir::separator())
diff --git a/heimdall-frontend/heimdall-frontend.pro b/heimdall-frontend/heimdall-frontend.pro index ecc6235..6cb5774 100644 --- a/heimdall-frontend/heimdall-frontend.pro +++ b/heimdall-frontend/heimdall-frontend.pro @@ -53,8 +53,13 @@ macx { PRIVATE_FRAMEWORKS.path = Contents/Frameworks QMAKE_BUNDLE_DATA += PRIVATE_FRAMEWORKS + LIBS += -L/usr/lib config += x86 x86_64 ppc + + QMAKE_CFLAGS_X86_64 = -m64 -mmacosx-version-min=10.5 + QMAKE_CXXFLAGS_X86_64 = $$QMAKE_CFLAGS_X86_64 + QMAKE_LFLAGS_X86_64 = $$QMAKE_CFLAGS_X86_64 isEmpty(OUTPUTDIR) { DESTDIR = /Applications diff --git a/heimdall/configure.ac b/heimdall/configure.ac index e900770..4654730 100644 --- a/heimdall/configure.ac +++ b/heimdall/configure.ac @@ -22,7 +22,7 @@ case $target in *-darwin*)
AC_DEFINE(OS_DARWIN, [], [Darwin backend])
AC_MSG_RESULT([Darwin/MacOS X])
- AC_PROG_CXX([clang++])
+ AC_PROG_CXX
linuxtarget=false
;;
*-mingw*)
|