Jump to content

Strange Errors (On-Device Theos Install)


Go to solution Solved by Rook,

28 posts in this topic

Recommended Posts

Posted (edited)

I've got everything setup in Theos including the SDK directory, build tools, and required files, but when I run 

make package messages=yes

I get the following errors:

Zanes-iPhone:/User/Documents/iOSTweaks/tes root# make package messages=yes
Making all for tweak tes...
make -f Makefile --no-print-directory --no-keep-going \
		internal-library-compile \
		_THEOS_CURRENT_TYPE=tweak THEOS_CURRENT_INSTANCE=tes _THEOS_CURRENT_OPERATION=compile \
		THEOS_BUILD_DIR="/User/Documents/iOSTweaks/tes/Packages" _THEOS_MAKE_PARALLEL=yes
/User/Documents/iOSTweaks/tes/theos/bin/logos.pl -c warnings=error    tes.x > /User/Documents/iOSTweaks/tes/Packages/obj/tes.x.m
Constants from lexical variables potentially modified elsewhere are deprecated at /private/var/theos/bin/lib/aliased.pm line 42.
Constants from lexical variables potentially modified elsewhere are deprecated at /private/var/theos/bin/lib/aliased.pm line 42.
Constants from lexical variables potentially modified elsewhere are deprecated at /private/var/theos/bin/lib/aliased.pm line 42.
Constants from lexical variables potentially modified elsewhere are deprecated at /private/var/theos/bin/lib/aliased.pm line 42.
Constants from lexical variables potentially modified elsewhere are deprecated at /private/var/theos/bin/lib/aliased.pm line 42.
Constants from lexical variables potentially modified elsewhere are deprecated at /private/var/theos/bin/lib/aliased.pm line 42.
Constants from lexical variables potentially modified elsewhere are deprecated at /private/var/theos/bin/lib/aliased.pm line 42.
Constants from lexical variables potentially modified elsewhere are deprecated at /private/var/theos/bin/lib/aliased.pm line 42.
clang++ -x objective-c -c -I"/User/Documents/iOSTweaks/tes" -DTARGET_IPHONE=1 -O2 -I/User/Documents/iOSTweaks/tes/theos/include -include /User/Documents/iOSTweaks/tes/theos/Prefix.pch -Wall -Werror  -isysroot "/User/Documents/iOSTweaks/tes/theos/sdks/iPhoneOS8.1.sdk" -arch armv7 -arch armv7s -arch arm64 -D__IPHONE_OS_VERSION_MIN_REQUIRED=__IPHONE_8_0 -miphoneos-version-min=8.0  -fobjc-arc       -std=c99 -include "logos/logos.h" /User/Documents/iOSTweaks/tes/Packages/obj/tes.x.m -o /User/Documents/iOSTweaks/tes/Packages/obj/tes.x.93f05f21.o
make[2]: *** [/User/Documents/iOSTweaks/tes/Packages/obj/tes.x.93f05f21.o] Killed: 9
make[1]: *** [internal-library-all_] Error 2
make: *** [tes.all.tweak.variables] Error 2
Zanes-iPhone:/User/Documents/iOSTweaks/tes root# 

I don't know if it makes a difference, but I'm using the CoolStar fork of Theos that's supposedly compatible for ARM64 devices.

Is anyone able to shine some light on how to fix this?

Updated by _Bool
  • Replies 27
  • Created
  • Last Reply

Top Posters In This Topic

Posted (edited)

I'm guessing you're on iOS 9?

 

You would be correct.

I have (almost) the same setup on my Mac, but I'm on a road trip and being able to SSH into my phone from my Linux machine would be incredible!

Updated by _Bool
Posted (edited)

The killed: 9 error is usually fixed by signing the executables.

 

http://iosgods.com/topic/19478-how-to-fix-theos-on-ios-9-3264bit/

 

I've been instructed to use ldid for signing executables ever since the release of iOS 9, and every time it has returned an error so I thought there was no way it would change, but to my surprise ldid worked on all of those binaries. Now when I run

make package messages=yes

I get:

Zanes-iPhone:/User/Documents/iOSTweaks/tes root# make package messages=yes
Making all for tweak tes...
make -f Makefile --no-print-directory --no-keep-going \
		internal-library-compile \
		_THEOS_CURRENT_TYPE=tweak THEOS_CURRENT_INSTANCE=tes _THEOS_CURRENT_OPERATION=compile \
		THEOS_BUILD_DIR="/User/Documents/iOSTweaks/tes/Packages" _THEOS_MAKE_PARALLEL=yes
clang++ -L/User/Documents/iOSTweaks/tes/theos/lib -lobjc -framework Foundation -framework CoreFoundation  -framework Foundation     -lsubstrate -dynamiclib -install_name "/Library/MobileSubstrate/DynamicLibraries/tes.dylib"  -isysroot "/User/Documents/iOSTweaks/tes/theos/sdks/iPhoneOS8.1.sdk" -arch armv7 -arch armv7s -arch arm64 -D__IPHONE_OS_VERSION_MIN_REQUIRED=__IPHONE_8_1 -miphoneos-version-min=8.1 -multiply_defined suppress   -o "/User/Documents/iOSTweaks/tes/Packages/obj/tes.dylib.64873355.unsigned" /User/Documents/iOSTweaks/tes/Packages/obj/tes.x.940a2e73.o
ld: library not found for -lobjc
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [/User/Documents/iOSTweaks/tes/Packages/obj/tes.dylib.64873355.unsigned] Error 1
make[1]: *** [internal-library-all_] Error 2
make: *** [tes.all.tweak.variables] Error 2 

Which is a compiler error to my understanding.

Updated by _Bool
Posted

What's in your makefile?

ARCHS = armv7 armv7s arm64

TARGET = iphone:clang:latest:latest

THEOS_BUILD_DIR = Packages

include theos/makefiles/common.mk

TWEAK_NAME = tes
tes_CFLAGS = -fobjc-arc
tes_FILES = tes.x
tes_FRAMEWORKS = Foundation

include $(THEOS_MAKE_PATH)/tweak.mk

after-install::
	install.exec "killall -9 backboardd"
Posted

The issue is this:

 

ld: library not found for -lobjc

Posted (edited)

The issue is this:

 

ld: library not found for -lobjc

 

I saw, but I don't know what this means, nor can I find any relevant information through Google.

 

I totally forgot that Google omits search results containing text after a `-` character which resulted in everything except what I wanted (how ironic). I've found that it has something to do with a missing library (libobjc.A.dylib hopefully) so if I find a copy of that and copy it to /usr/lib I should be good...right?

 

I got a copy of libobjc.A.dylib in my /usr/lib directory and the error has remained the same, I've run out of ideas.

Updated by _Bool
Posted

I saw, but I don't know what this means, nor can I find any relevant information through Google.

 

I totally forgot that Google omits search results containing text after a `-` character which resulted in everything except what I wanted (how ironic). I've found that it has something to do with a missing library (libobjc.A.dylib hopefully) so if I find a copy of that and copy it to /usr/lib I should be good...right?

 

I got a copy of libobjc.A.dylib in my /usr/lib directory and the error has remained the same, I've run out of ideas.

Do you need this Framework?

 

tes_FRAMEWORKS = Foundation

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
  • Create New...

Important Information

We would like to place cookies on your device to help make this website better. The website cannot give you the best user experience without cookies. You can accept or decline our cookies. You may also adjust your cookie settings. Privacy Policy - Guidelines