iolevel / peachpie-samples

Sample projects demonstrating use of Peachpie - the PHP compiler and runtime for .NET
https://www.peachpie.io
Apache License 2.0
55 stars 25 forks source link

Xamarin + Peachpie #7

Open italodeveloper opened 4 years ago

italodeveloper commented 4 years ago

Hello, I have been trying for the past few weeks to reproduce the example of xamarin, a 2018 blogpost https://www.peachpie.io/2018/11/php-on-android.html, but unsuccessfully even using the sample repository: https://github.com/jan-pavlovsky/UrhoPHPTest I would like to request a new example if possible, so as soon as you can do something about it start contributing massively in the php + .NET environment on top of Xamarin.

jakubmisek commented 4 years ago

Please specify what issue do you have?

italodeveloper commented 4 years ago

Please specify what issue do you have?

When compiling the example, I get the following exception

Cannot determine abi of native library

Erro XA4301: Cannot determine abi of native library C:\Users\code\Desktop\UrhoPHPTest\packages\UrhoSharp.1.8.93\build\MonoAndroid....\native\Android\armeabi\libmono-urho.so. 0

jakubmisek commented 4 years ago

It seams like maybe you don't have the correct Android SDK version?

Also this might be related? https://github.com/xenko3d/xenko/issues/470

italodeveloper commented 4 years ago

It seams like maybe you don't have the correct Android SDK version?

Also this might be related? xenko3d/xenko#470

The next error:

Erro MSB4018: Falha inesperada da tarefa "LinkAssemblies". Mono.Linker.MarkException: Error processing method: 'System.Boolean Pchp.Library.Ftp::ftp_put(Pchp.Core.Context,Pchp.Core.PhpResource,System.String,System.String,System.Int32,System.Int32)' in assembly: 'Peachpie.Library.dll' ---> Mono.Cecil.ResolutionException: Failed to resolve System.Boolean FluentFTP.FtpClient::UploadFile(System.String,System.String,FluentFTP.FtpExists,System.Boolean,FluentFTP.FtpVerify,System.IProgress`1) em Mono.Linker.Steps.MarkStep.HandleUnresolvedMethod(MethodReference reference) em Mono.Linker.Steps.MarkStep.MarkMethod(MethodReference reference) em Mono.Linker.Steps.MarkStep.MarkInstruction(Instruction instruction) em Mono.Linker.Steps.MarkStep.MarkMethodBody(MethodBody body) em Mono.Linker.Steps.MarkStep.ProcessMethod(MethodDefinition method) em Mono.Linker.Steps.MarkStep.ProcessQueue() --- Fim do rastreamento de pilha de exceções internas --- em Mono.Linker.Steps.MarkStep.ProcessQueue() em Mono.Linker.Steps.MarkStep.ProcessPrimaryQueue() em Mono.Linker.Steps.MarkStep.Process() em Mono.Linker.Steps.MarkStep.Process(LinkContext context) em MonoDroid.Tuner.MonoDroidMarkStep.Process(LinkContext context) em Mono.Linker.Pipeline.ProcessStep(LinkContext context, IStep step) em Mono.Linker.Pipeline.Process(LinkContext context) em MonoDroid.Tuner.Linker.Process(LinkerOptions options, ILogger logger, LinkContext& context) em Xamarin.Android.Tasks.LinkAssemblies.Execute(DirectoryAssemblyResolver res) em Xamarin.Android.Tasks.LinkAssemblies.Execute() em Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() em Microsoft.Build.BackEnd.TaskBuilder.d__26.MoveNext() 0