Schlaubischlump / LocationSimulator

MacOS application to spoof / fake / mock your iOS / iPadOS or iPhoneSimulator device location. WatchOS and TvOS are partially supported.
https://schlaubischlump.github.io/LocationSimulator/
GNU General Public License v3.0
2.39k stars 184 forks source link

[Question] Build Failed, "directory not found for option" #107

Closed FreezaSama closed 2 years ago

FreezaSama commented 2 years ago

The build was working just fine yesterday and today I cannot build it again. I get this:

Screenshot 2022-02-01 at 11 58 03 Screenshot 2022-02-01 at 11 58 35

I've then ran again the brew install libimobiledevice command successfully but failed when running git clone --recurse-submodules https://github.com/Schlaubischlump/LocationSimulator it said: fatal: destination path 'LocationSimulator' already exists and is not an empty directory.

Help? I'm not super comfortable with terminal commands or code so excuse my noobness here :)

Schlaubischlump commented 2 years ago
  1. Is there a special reason, why you want to build from source ?

The github error is irrelevant, it is just telling you, that you already cloned this folder. If you delete the folder first, than git clone --recurse-submodules https://github.com/Schlaubischlump/LocationSimulator will work again.

Now to your real problem: You are trying to compile for an Intel mac, but link against a library for M1 macs. You must change the architecture in the LocationSimulator Xcode settings to arm. Take a look at the screenshot below. It must say Native Architecture of Build Machine for your case. If it was working fine yesterday, the it means, that you had libimobiledevice installed for Intel macs, but you now installed the M1 version instead.

Xcode screenshot

Ignore the explanation below. This might still be a problem, but it is not your current problem:

Looks like you updated the homebrew dependencies, so now LocationSimualtor can't find them. For each dependency in your first screenshot e.g openssl either the /usr/local/Cellar/... or /opt/homebrew/Cellar/... path must exist. If none of them exists, than there must be a new path, with a new version number in it. You have to find that path and replace the header/library search paths in Xcode accordingly.

E.g Xcode currently tells you that it is looking for /usr/local/Cellar/openssl@1.1/1.1.1i/lib and /opt/homebrew/Cellar/openssl@1.1/1.1.1i/lib. You know might be running a different version. Lets say you can find the folder /usr/local/Cellar/openssl@1.1/1.1.1k in the finder instead of /usr/local/Cellar/openssl@1.1/1.1.1i. You now know that the version number changed from i -> k. That would mean you would need to change the library search path in Xcode to /usr/local/Cellar/openssl@1.1/1.1.1k/lib and the header search path to /usr/local/Cellar/openssl@1.1/1.1.1k/include. Repeat this step for each dependency

FreezaSama commented 2 years ago

hey @Schlaubischlump thanks for answering. so a few interesting things happened:

So I:

Schlaubischlump commented 2 years ago

Which version is your iPad running ?

FreezaSama commented 2 years ago

iPad: 14.81 iPhone: 15.21

Maybe I need to update to 15 :) so strange that it was working yesterday night. went to bed and doesn't work anymore.

Schlaubischlump commented 2 years ago

Can you download the app again ? I just added support for iOS 15.1 and 14.8.

FreezaSama commented 2 years ago

Works! Thanks! 🙇