[TIMOB-10724] Android: Modules: remove gperf as a build dependency
GitHub Issue | n/a |
---|---|
Type | Improvement |
Priority | High |
Status | Closed |
Resolution | Fixed |
Resolution Date | 2017-11-13T21:28:57.000+0000 |
Affected Version/s | Release 2.1.1, Release 2.1.2, Release 6.1.2 |
Fix Version/s | Release 7.0.0 |
Components | Android, Tooling |
Labels | cb-tooling, core, ft, hudder, qe-and082012 |
Reporter | Dustin Hyde |
Assignee | Gary Mathews |
Created | 2012-08-30T13:24:09.000+0000 |
Updated | 2017-11-15T07:34:40.000+0000 |
Description
When trying to build an android module on windows 7, there was an uninformative failure/error.
C:\Users\tester\AppData\Roaming\Titanium\mobilesdk\win32\2.1.2.v20120824144611\module\android\build.xml:362: The following error occurred while executing this line:
C:\Users\tester\AppData\Roaming\Titanium\mobilesdk\win32\2.1.2.v20120824144611\module\android\build.xml:317: exec returned: 2
Upon further investigation (using titanium studio > android module project > build.xml > right click > run as ant) it was found that gperf was somehow removed from the path or uninstalled from that machine, and it needed to be reinstalled and added to the system path.
This does not occur on a fresh studio/sdk install on windows 7.
It is suggested to remove gperf as a dependency to build android modules.
Note that gperf is not documented as a dependency.
Android Module Documentation (wiki.appcelerator.org):
https://wiki.appcelerator.org/display/guides2/Android+Module+Development+Guide#AndroidModuleDevelopmentGuide-Step0%3AInstallingtheNecessaryComponents
Steps to Reproduce:
1. Install Titanium Studio and Titanium SDK on Windows 7.
2. Install Android SDK and Android NDK.
3. Uninstall gperf or remove from the system path.
4. Create an Android Module and build the module (i.e., Publish > Package Module > to Titanium Project).
Actual Result:
Build failure if gperf is not installed.
Expected Result:
Success (no gperf dependency), or a meaningful error message.
Note that the inclusion of gperf causes overhead for Titanium Studio to include built-in software prerequisites.
This also occurs on Linux and prevents Android modules from packaging out-of-the-box.
Note scons requires gperf to build the SDK. There is no warning that it is not installed, only a cryptic error.
Verified the issue on the following environment: Windows 8 -64bit Appcelerator Studio, build: 3.3.0.201407111535 Titanium SDK, build: 3.3.0.v20140711123603 titanium@3.3.0-rc4
Remember to resolve TIMOB-11220 as "won't fix" as soon as this ticket is fixed.
master: https://github.com/appcelerator/titanium_mobile/pull/9265
FR Passed. Waiting for merge to get enabled to merge.
PR merged.
Changes are seen in SDK 7.0.0.v20171114203226.