LibGDX : iOS error=2, No such file or directory - ios

I am trying out LibGDX on a Mac with the aim to build helloworld for iOS. It works on Android, Desktop etc.
I am using Android Studio 1.3, I have xcode 6.4 with command line (plus xcode 7 beta 3). I try to build and run the project and I keep getting. I have updated to the latest Unity(not sure why that would be needed)
Caused by: java.io.IOException: Cannot run program "2015-07-15 15:13:08.572 xcodebuild[697:11725] [MT] PluginLoading: Required plug-in compatibility UUID 7FDF5C7A-131F-4ABB-9EDC-8C5F8F0B8A90 for plug-in at path '~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/Unity4XC.xcplugin' not present in DVTPlugInCompatibilityUUIDs
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++": error=2, No such file or directory
at org.apache.commons.exec.launcher.Java13CommandLauncher.exec(Java13CommandLauncher.java:58)
at org.apache.commons.exec.DefaultExecutor.launch(DefaultExecutor.java:246)
at org.apache.commons.exec.DefaultExecutor.executeInternal(DefaultExecutor.java:302)
at org.apache.commons.exec.DefaultExecutor.execute(DefaultExecutor.java:149)
at org.robovm.compiler.util.Executor.exec(Executor.java:344)
at org.robovm.compiler.util.ToolchainUtil.link(ToolchainUtil.java:367)
at org.robovm.compiler.target.AbstractTarget.doBuild(AbstractTarget.java:229)
at org.robovm.compiler.target.ios.IOSTarget.doBuild(IOSTarget.java:341)
at org.robovm.compiler.target.AbstractTarget.build(AbstractTarget.java:223)
at org.robovm.compiler.Linker.link(Linker.java:424)
at org.robovm.compiler.AppCompiler.compile(AppCompiler.java:462)
at org.robovm.gradle.tasks.AbstractRoboVMTask.build(AbstractRoboVMTask.java:106)
... 67 more
Caused by: java.io.IOException: error=2, No such file or directory
... 79 more
Any help would be awesome as I have been searching the net.

So this turns out to be because I have Unity installed and it installs a plugin Unity4XC.xcplugin which messes it up!

Related

Getting error migrating a project from Neoload 5.1 to Neoload 6.4

The project (scripts) was created in Neoload 5.1
Now when we are trying to open the same project with Neoload 6.4, it is asking to migrate the project to Neoload 6.4. After clicking on Yes it is giving Migration error. Below are the error details:
com.neotys.nl.controller.config.migration.MigrationException: Cannot migrate D:\FromWebLoad\NeoloadNBUScripts\Foresters_Final.nlp: D:\FromWebLoad\NeoloadNBUScripts\config.zip
at com.neotys.nl.controller.config.migration.steps.AbstractMigrationStep.migrate(AbstractMigrationStep.java:93)
at com.neotys.nl.controller.config.migration.steps.DesignMigrationStep.apply(DesignMigrationStep.java:43)
at com.neotys.nl.controller.config.migration.steps.MigrationSteps.apply(MigrationSteps.java:38)
at com.neotys.nl.controller.config.ConfigurationManager.performOpenImpl(ConfigurationManager.java:991)
at com.neotys.nl.controller.config.ConfigurationManager.openProject(ConfigurationManager.java:834)
at com.neotys.nl.controller.config.ConfigurationManager.openProject(ConfigurationManager.java:801)
at com.neotys.nl.gui.b1.a(b1.java:1505)
at com.neotys.nl.gui.b1.a(b1.java:1422)
at com.neotys.nl.gui.a.q.run(q.java:33)
Caused by: com.neotys.nl.controller.data.NeoLoadConfigurationException: java.io.FileNotFoundException: D:\FromWebLoad\NeoloadNBUScripts\Foresters_Final.nlp (Access is denied)
at com.neotys.nl.controller.config.ConfigurationManager.saveProject(ConfigurationManager.java:2204)
at com.neotys.nl.controller.config.ConfigurationManager.saveProject(ConfigurationManager.java:1899)
at com.neotys.nl.controller.config.migration.MigrationConfiguration$1.saveProject(MigrationConfiguration.java:31)
at com.neotys.nl.controller.config.migration.steps.AbstractMigrationStep.migrate(AbstractMigrationStep.java:86)
... 8 more
From error message:
NeoLoadConfigurationException: java.io.FileNotFoundException: D:\FromWebLoad\NeoloadNBUScripts\Foresters_Final.nlp (Access is denied)
at com.neotys.nl.controller.config.ConfigurationManager.saveProject(ConfigurationManager.java:2204)
at
I think either the referenced file is not readable by your user or is missing.

How can I remove Xcode plugins?

Every time I use git with Xcode, this message appears:
2017-03-31 12:42:40.749 xcodebuild[27773:374610] [MT] DVTPlugInManager: Required plug-in compatibility UUID DFFB3951-EB0A-4C09-9DAC-5F2D28CC839C for KSImageNamed.ideplugin (com.ksuther.KSImageNamed) not present
2017-03-31 12:42:40.943 xcodebuild[27773:374610] [MT] PluginLoading: Required plug-in compatibility UUID DFFB3951-EB0A-4C09-9DAC-5F2D28CC839C for plug-in at path '~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/VVDocumenter-Xcode.xcplugin' not present in DVTPlugInCompatibilityUUIDs
2017-03-31 12:42:40.945 xcodebuild[27773:374610] [MT] PluginLoading: Required plug-in compatibility UUID DFFB3951-EB0A-4C09-9DAC-5F2D28CC839C for plug-in at path '~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/Alcatraz.xcplugin' not present in DVTPlugInCompatibilityUUIDs
The KSImage, VVDocument and Alcatraz plugins are from when I installed Xcode 7.3. This is gross and I want to stop the output from appearing. How can I remove these plugins?
I am still seeing this problem with Xcode 9. To resolve the problem, I deleted all my plugins. They stop working starting Xcode 8 anyway.
cd ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins/
ls to check your installed plugin and then rm -r <plugin-name> to delete it (them).
In Xcode 13 or macOS 12 it is:
~/Library/Developer/Xcode/Plug-ins/

VSTS - Problems with Xamarin Proguard Version and JDK 1.8

I have a Xamarin Forms Project that I'm trying to integrate with HockeyApps using Continuous Integration with VSTS.
My app compiles using Java 1.8 and it uses ProGuard to shrink the android apk file.
But when java try to compile the application, it finds that the Installed version of proguard is not compatible with Java 1.8
The error is the following:
... Can't process class [android/app/ActivityTracker.class] Unsupported class version number [52.0] maximum 51.0, Java 1.7...
In my local visual studio installation, I fixed it replacing the default proguard version that Xamarin Installs for the lastest one 5.x...
Anybody knows how to do it with VSTS?
DETAILED ERROR:
_CompileToDalvikWithDx:
C:\Program Files\Java\jdk1.8.0_102\\bin\java.exe -jar C:\java\androidsdk\android-sdk\tools\proguard\lib\proguard.jar -include C:\java\androidsdk\android-sdk\tools\proguard\proguard-android.txt -include obj\Release\proguard\proguard_xamarin.cfg -include obj\Release\proguard\proguard_project_references.cfg -include obj\Release\proguard\proguard_project_primary.cfg -include proguard.cfg "-injars 'obj\Release\proguard\__proguard_input__.jar';'C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\MonoAndroid\v7.0\mono.android.jar';'obj\Release\__library_projects__\FormsViewGroup\library_project_imports\formsviewgroup.jar';'obj\Release\__library_projects__\HockeySDK.AndroidBindings\library_project_imports\bin\classes.jar';'C:\Users\buildguest\AppData\Local\Xamarin\Xamarin.Android.Support.Animated.Vector.Drawable\23.3.0.0\embedded\classes.jar';'C:\Users\buildguest\AppData\Local\Xamarin\Xamarin.Android.Support.Design\23.3.0.0\embedded\classes.jar';'C:\Users\buildguest\AppData\Local\Xamarin\Xamarin.Android...
java.io.IOException: Can't read [C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\MonoAndroid\v7.0\mono.android.jar] (Can't process class [android/app/ActivityTracker.class] (Unsupported class version number [52.0] (maximum 51.0, Java 1.7)))
at proguard.InputReader.readInput(InputReader.java:230)
at proguard.InputReader.readInput(InputReader.java:200)
at proguard.InputReader.readInput(InputReader.java:178)
at proguard.InputReader.execute(InputReader.java:78)
at proguard.ProGuard.readInput(ProGuard.java:196)
at proguard.ProGuard.execute(ProGuard.java:78)
at proguard.ProGuard.main(ProGuard.java:492)
Caused by: java.io.IOException: Can't process class [android/app/ActivityTracker.class] (Unsupported class version number [52.0] (maximum 51.0, Java 1.7))
at proguard.io.ClassReader.read(ClassReader.java:112)
at proguard.io.FilteredDataEntryReader.read(FilteredDataEntryReader.java:87)
at proguard.io.JarReader.read(JarReader.java:65)
at proguard.io.DirectoryPump.readFiles(DirectoryPump.java:65)
at proguard.io.DirectoryPump.pumpDataEntries(DirectoryPump.java:53)
at proguard.InputReader.readInput(InputReader.java:226)
... 6 more
Caused by: java.lang.UnsupportedOperationException: Unsupported class version number [52.0] (maximum 51.0, Java 1.7)
at proguard.classfile.util.ClassUtil.checkVersionNumbers(ClassUtil.java:140)
at proguard.classfile.io.ProgramClassReader.visitProgramClass(ProgramClassReader.java:88)
at proguard.classfile.ProgramClass.accept(ProgramClass.java:346)
at proguard.io.ClassReader.read(ClassReader.java:91)
... 11 more
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF8
C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(2025,3): Error MSB6006: "java.exe" exited with code 1.
I'm afraid that there isn't any workaround for your issue with Hosted Build Agent since the user has no permission to update the installed software on Hosted Machine.
You need to deploy your own build agent and then replace the files manually.
The reason is that it uses JDK 1.7 that is incompatible. You can specify JDK version of Xamarin build step:

Cocos2d-x compilation error

I just downloaded the Cocos2d-x SDK and tried to compile the hello world example with the following result:
<code>The Selected NDK toolchain version was 4.8 !
Android NDK: WARNING: Ignoring unknown import directory: /home/sytrox/Downloads/cocos2d-x/template/multi-platform-cpp/proj.android/../cocos2d
Android NDK: WARNING: Ignoring unknown import directory: /home/sytrox/Downloads/cocos2d-x/template/multi-platform-cpp/proj.android/../cocos2d/external
Android NDK: WARNING: Ignoring unknown import directory: /home/sytrox/Downloads/cocos2d-x/template/multi-platform-cpp/proj.android/../cocos2d/cocos
Android NDK: jni/Android.mk: Cannot find module with tag '2d' in import path
Android NDK: Are you sure your NDK_MODULE_PATH variable is properly defined ?
Android NDK: The following directories were searched:
Android NDK:
make: Entering directory `/home/sytrox/Downloads/cocos2d-x/template/multi-platform-cpp/proj.android'
jni/Android.mk:22: *** Android NDK: Aborting. . Stop.
make: Leaving directory `/home/sytrox/Downloads/cocos2d-x/template/multi-platform-cpp/proj.android'
Traceback (most recent call last):
File "./build_native.py", line 166, in <module>
build(opts.ndk_build_param,opts.android_platform,opts.build_mode)
File "./build_native.py", line 153, in build
do_build(cocos_root, ndk_root, app_android_root,ndk_build_param,sdk_root,android_platform,build_mode)
File "./build_native.py", line 89, in do_build
raise Exception("Build dynamic library for project [ " + app_android_root + " ] fails!")
Exception: Build dynamic library for project [ /home/sytrox/Downloads/cocos2d-x/template/multi-platform-cpp/proj.android ] fails!</code>
Which cocos2d-x version are you using? Seems like you didn't define your env variables correctly. Please have a look at this tutorial and make sure you define the following variables:
COCOS2DX_ROOT : should point to the root directory of cocos2d-x
ANDROID_SDK_ROOT : Should point to the root directory of the Android SDK
NDK_ROOT : Should point the to root directory of the Android NDK
NDK_TOOLCHAIN_VERSION : Which Android NDK toolchain should be used
See the problem is that the system is not able to compile the cocos.py.
So, if you open cocos.py from the bin directory where you have unzipped the file
it runs smoothly.
The thing is Python3.x is not able to compile the Phython2.x code.
So we must change the path in environment variable so the system doesn't a python2 file with the help of python3 compiler.
Thanks
Summary
1.Go to Control Panel, then type path or environment in search bar
2.open Evnvironment variables
3.Just delete any C:\Python34 or anything starts with python3.x and add C:\Python27 path where you have installed.
Video link:
https://youtu.be/T8zk3sv0cL0

Phonegap doesn't copy plugin files to ios platforms directory during build

rm -rf plugins/*
rm -rf platforms/*
phonegap build ios //this works
phonegap local plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-device.git
phonegap build ios
Building for ios after adding a plugin fails. Here is the error:
** BUILD FAILED **
The following build commands failed:
CompileC build/PondMD.build/Debug-iphoneos/PondMD.build/Objects-normal/armv7/CDVDevice.o PondMD/Plugins/org.apache.cordova.device/CDVDevice.m normal armv7 objective-c com.apple.compilers.llvm.clang.1_0.compiler
(1 failure)
2014-01-16 10:32:15.055 xcodebuild[69605:1007] [MT] PluginLoading: Required plug-in compatibility UUID 37B30044-3B14-46BA-ABAA-F01000C27B63 for plug-in at path '~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/XCode4_beginning_of_line.xcplugin' not present in DVTPlugInCompatibilityUUIDs
2014-01-16 10:32:16.630 xcodebuild[69605:4203] DVTAssertions: Warning in /SourceCache/IDEXcode3ProjectSupport/IDEXcode3ProjectSupport-3575/Xcode3Sources/XcodeIDE/Frameworks/DevToolsBase/pbxcore/SpecificationTypes/XCGccMakefileDependencies.m:78
Details: Failed to load dependencies output contents from ``/Users/william/working/PhonegapPondMD/platforms/ios/build/PondMD.build/Debug-iphonesimulator/PondMD.build/Objects-normal/i386/CDVDevice.d''. Error: Error Domain=NSCocoaErrorDomain Code=260 "The file “CDVDevice.d” couldn’t be opened because there is no such file." UserInfo=0x7fe7a57a7440 {NSFilePath=/Users/william/working/PhonegapPondMD/platforms/ios/build/PondMD.build/Debug-iphonesimulator/PondMD.build/Objects-normal/i386/CDVDevice.d, NSUnderlyingError=0x7fe7a57aaed0 "The operation couldn’t be completed. No such file or directory"}. User info: {
NSFilePath = "/Users/william/working/PhonegapPondMD/platforms/ios/build/PondMD.build/Debug-iphonesimulator/PondMD.build/Objects-normal/i386/CDVDevice.d";
NSUnderlyingError = "Error Domain=NSPOSIXErrorDomain Code=2 \"The operation couldn\U2019t be completed. No such file or directory\"";
}.
Function: void XCGccMakefileDependenciesParsePathsFromRuleFile(NSString *__strong, F) [F = <lambda at /SourceCache/IDEXcode3ProjectSupport/IDEXcode3ProjectSupport-3575/Xcode3Sources/XcodeIDE/Frameworks/DevToolsBase/pbxcore/SpecificationTypes/XCGccMakefileDependencies.m:168:73>]
Thread: <NSThread: 0x7fe7a57ab420>{name = (null), num = 7}
Please file a bug at http://bugreport.apple.com with this warning message and any useful information you can provide.
The issue seems to be that phonegap is not copying the objective-c classes and headers into /platforms/ios/
william-macbook-pro:PhonegapPondMD william$ ls -l plugins/
total 8
-rw-r--r-- 1 william staff 296 Jan 16 10:32 ios.json
drwxr-xr-x 11 william staff 374 Jan 16 10:30 org.apache.cordova.device
william-macbook-pro:PhonegapPondMD william$ ls -l platforms/ios/PondMD/Plugins/
total 8
-rw-r--r-- 1 william staff 890 Jan 16 10:30 README
william-macbook-pro:PhonegapPondMD william$ phonegap -v
3.3.0-0.18.0
I had the same problem, and I solved It creating the project with uppercase in the first letter of project name. Yes, it seems incredible, but this was the solution.
I ran into the same issue and solved it by using the instructions here: Cordova 3.2 ios add plugin "Which config.xml? Where is it?"
To summarize, I did the following steps:
1. Removed ios platform via: cordova platform remove ios
2. Re-installed the plugin
3. (Re-)Added the ios platform via: cordova platform add ios
4. Built the project again
After this, it built just fine.
When I added the plugin using cordova plugin add command, it puts the plugin code inside a plugins folder.
When you inspect the plugin folder inside the ios platform, you would see the plugin is not available.
So I created a folder with the same name as the plugin name and copied the files from the plugin src/ directory into this. After this the project built correctly.
I also found it useful to open the native project in xcode to inspect the project closer.
I went with the solution to copy the plugin files from ./plugins/.. to the ios platform plugin directory. Whoever needs it, here is a little helper for gulp.
(npm install gulp gulp-rename)
(gulpfile.js)
var gulp = require("gulp");
var rename = require("gulp-rename");
gulp.task("cp-plugins-ios", function(){
gulp.src(["./plugins/*/src/ios/*"],{base: 'ios'}).pipe(rename(function(path){
var myDir = path.dirname.replace("src/ios","");
path.dirname = myDir;
})).pipe(gulp.dest("./platforms/ios/projectName/Plugins/"));
});

Resources