[TIMOB-18873] Building an iOS app with 4.0.0 and then rebuilding with 3.5.1.GA fails
GitHub Issue | n/a |
---|---|
Type | Bug |
Priority | High |
Status | Closed |
Resolution | Fixed |
Resolution Date | 2015-07-14T21:58:47.000+0000 |
Affected Version/s | Release 4.0.0 |
Fix Version/s | Release 5.0.0 |
Components | iOS, Tooling |
Labels | merge-4.1.1, qe-4.0.0 |
Reporter | Ewan Harris |
Assignee | Feon Sua Xin Miao |
Created | 2015-05-07T00:44:18.000+0000 |
Updated | 2015-09-01T23:08:49.000+0000 |
Description
Description
When building a project with a 4.0.0 SDK and then rebuilding the project with 3.5.1.GA the build fails with the below.
[TRACE] Undefined symbols for architecture i386:
[TRACE] "_Ti_WTFCrash", referenced from:
[TRACE] TiDebuggerInterface::resetObjectProperty(int, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&) in libti_ios_debugger.a(TiDebuggerInterface.o)
[TRACE] ld: symbol(s) not found for architecture i386
[TRACE] clang: error: linker command failed with exit code 1 (use -v to see invocation)
[ERROR] 2015-05-06 17:57:01.479 xcodebuild[16656:2799819] DeveloperPortal: Using pre-existing current store at URL (file:///Users/eharris/Library/Developer/Xcode/DeveloperPortal%206.3.db).
[ERROR] ** BUILD FAILED **
[ERROR] The following build commands failed:
[ERROR] Ld build/testApp123.build/Debug-iphonesimulator/testApp123-universal.build/Objects-normal/x86_64/testApp123 normal x86_64
[ERROR] Ld build/testApp123.build/Debug-iphonesimulator/testApp123-universal.build/Objects-normal/i386/testApp123 normal i386
[ERROR] (2 failures)
*Notes* As per the linked ticket when cleaning I do not see the issue, on Android I am not sure whether the issue will occur due to CLI-616. Full output is attached as fullOutput.txt
This issue can be reproduced using Titanium CLI@4.0.0-beta8 so is not an appc cli issues
Steps to reproduce
1. Create a project using a 4.0.0 SDK 2. Build the project usingappc run -p ios
3. Change the SDK in the tiapp.xml and run ti sdk select and choose the latest 3.5.1.GA
4. Run appc run -p ios
again
Actual result
2. The build will pass 4. The build will fail with errors such as the one listed aboveExpected result
The build should pass both timesAttachments
File | Date | Size |
---|---|---|
fullOutput.txt | 2015-05-07T01:23:09.000+0000 | 2596891 |
Reopened to repurpose
I think this may be expected, no? Do we need to force a clean?
The CLI should force a clean build after any changes to tiapp.xml The error we're seeing here is a Titanium app building with the wrong version of the JSCore. The engine changed slightly from 3.5.1 to 4.0.0
PR: https://github.com/appcelerator/appc-cli-titanium/pull/91
PR merged to master.
Closing ticket as fixed. Verified that I was able to build a mobile project with 5.0.0 SDK, then build with 4.1.0.GA SDK without any issues. Tested on: Appc CLI NPM: 4.2.0-1 Appc CLI Core: 5.0.0-33 Arrow: 1.2.52 SDK: 5.0.0.v20150901105514 Node: v0.10.38 OS: Yosemite (10.10.5) Xcode: 7 beta 6