Search the Community
Showing results for tags 'linux'.
Found 15 results
-
Hi I want to know if anyone actually can debug a Delphi console program reliable? My setup is latest Delphi 12.1 on a Window 10 running in KVM. Host is Ubuntu 24.04. Sometimes it works to singlestep source but most of the time IDE just freeze and I have to kill it🙁 I know 2 other developers with same experience as mine. I just don't understand how testing works at Embarcadero. This kinds of bugs must be catched before release! My report here https://embt.atlassian.net/servicedesk/customer/portal/1/RSS-1415
-
memory; Memory not freed in Linux but freed in Windows
michel.seicon posted a topic in Cross-platform
Hello, The memory is not freed and the program keeps the memory, this does not happen in Windows and only in Linux. Below is a simple example, but in everyday if the system is running for a few days the memory usage ends up being excessive, this does not happen in Windows Is necessary restar the program everday. Affected Debian 12, Delphi 11.2 Path 1 Ubuntu 22.04 Delphi 12.1. Sample simple program program Project1; {$APPTYPE CONSOLE} {$R *.res} uses System.SysUtils, System.Classes; type TListaString = class V_String:String; end; var V_Listas: TList; ii, i : integer; V_Lista : TListaString; V_Run : Boolean; begin V_Run := true; V_Listas:=TList.Create; try while true do begin if V_Run then begin V_Run := false; for i := 0 to 3000 do begin V_Lista := TListaString.Create; for ii := 0 to 10000 do V_Lista.V_String := V_Lista.V_String + IntToStr(Random(99999)); V_Listas.Add(V_Lista); end; writeln('create 1'); sleep(5000); for i := 0 to 3000 do begin V_Lista := TListaString.Create; for ii := 0 to 10000 do V_Lista.V_String := V_Lista.V_String + IntToStr(Random(99999)); V_Listas.Add(V_Lista); end; writeln('create 2'); sleep(5000); for i := 0 to 3000 do begin V_Lista := TListaString.Create; for ii := 0 to 10000 do V_Lista.V_String := V_Lista.V_String + IntToStr(Random(99999)); V_Listas.Add(V_Lista); end; writeln('create 3'); sleep(5000); while V_Listas.Count > 0 do begin TListaString(V_Listas[0]).V_String := ''; TListaString(V_Listas[0]).Free; V_Listas.Delete(0); end; V_Listas.Free; end; writeln('free, but not free'); sleep(5000); end; { TODO -oUser -cConsole Main : Insert code here } except on E: Exception do writeln(E.ClassName, ': ', E.Message); end; end. -
Hi. I just created a Amazon Linux 2 virtual machine for development and testing. I'm able to connect via SSH, i installed PAServer and it's running normal. However, it's not possible for Delphi to connect to PAServer, even with all the information entered correct. Any clues ?
- 3 replies
-
- alexandria
- linux
-
(and 1 more)
Tagged with:
-
Apache Module with TDataSet Needs Wait Cursor
corneliusdavid posted a topic in Network, Cloud and Web
I've written a fairly small web app for testing and learning using WebBroker that makes a few InterBase database queries and I've got it working as both an ISAPI DLL under IIS on Windows and as an Apache Web Module for Apache 2.4 on Windows. I'm now testing it under Apache for Linux and while a simple database query still works, another part of this app does not. One of the web actions is hooked up to a TDataSetTableProducer and it requires a wait cursor (TFDGUIxWaitCursor) in order to work. That component has a Provider property where leaving it at the default of FMX worked just fine for Windows versions (IIS and Apache) but fails under Apache for Linux. I tried changing the Provider to Console and replacing the used units but that did not help. Does anyone know how to use datasets for Apache web modules under Linux using FireDAC which requires a wait cursor? Reference: http://docwiki.embarcadero.com/Libraries/Sydney/en/FireDAC.Comp.UI.TFDGUIxComponent.Provider- 15 replies
-
- firedac
- waitcursor
-
(and 3 more)
Tagged with:
-
I run my app on Ubuntu 20 and it runs fine. The problem is that the icon app I have set in the project properties isn't shown. I only have the Linux default icon. Any idea ?
-
What ScriptEngine to choose ? DwScript, PascalScript, FastScript, TmsScripter, HtmlScripter
Rollo62 posted a topic in FMX
Hi there, I'm looking for a scripting engine in my projects, and since I had last time contact with scripting this is some years ago. I would like to check out the pros and cons of the solutions, to find the best fitting match for me. Since paxCompiler seems gone by Apex, this is maybe out of sight now, but I'm not so sure about that. DwScript is not available on mobile, as far as I know. DwScript is somewhat available in different forks (so it seems), not sure which one is the right one to choose. Maybe the list of engines is nit final, please let me know if there is something missing. What I'm looking for is a script engine that has the following features (I've put the most important in bold) usage for some base analysis and event control lightweight very stable well supported and documented Pascal supporting multiple languages would perfect, but not a main criteria (JS, C++, C#, Basic) Multiple platforms Win, Macos, Linux, iOS, Android is a must have supporting full language support is nice to have, but not a must (I can skip the special stuff I would say). performance (not that critical, but should be able to process dynamic protocols behaviour reasonable well ) memory footprint good, active community Free to use in commercial products I hope you can bring some light in this dark forest of possibilities, and share some experiences. -
How limit to one instance on android, windows, linux and mac ? There is any cross platform code? Thank you in advance. Pavel
-
Hello all, when I deploy a FMX application to Ubuntu (in this case the "Screenshot" fmx demo) the Delphi 10.4 debugger hangs totally. My Windows and Linux machines are both VMWare VM's. I can see that the freshly compiled executable appears in the home/PAServer/scratch-dir/myname/Screenshot directory. The message log in the Delphi IDE gives a warning "Local file \Redist\libfmux.so not found. Skipping deployment." The executable is not started on the Linux system by PAServer. I am able to start the executable manually, so the executable itself must be OK. But Delphi hangs so thoroughly that I can't debug it. I can only terminate Delphi in the task manager. Am I doing something wrong?
-
windows onShouldStartLoadWithRequest alternate solutions for FMX.TWebBrowser
PavelX posted a topic in Cross-platform
Hi, As you may know the onShouldStartLoadWithRequest is not working with FMX.TWebBrowser on Windows and Linux platforms. Is OK with Android and MacOS A bug report has been filled a long time (5 years ago) and reported again and again https://quality.embarcadero.com/browse/RSP-11206 27/May/15 2:08 AM https://quality.embarcadero.com/browse/RSP-24414/May/19 2:34 AM the actual status is " Unresolved" without any other reply or solution For me this event is very useful when I try to execute a delphi function from the web browser (javascript) EX: ==== HTML / JAVASCRIPT BROWSER <div id="fresult"></div> <button type="button" onclick="callDelphi()">Call delphi function</button> <script> function callDelphi(){ window.location.href='https://www.fake.com/?func=HiDelphi'; } function setResult(dresult){ document.getElementById('fresult').innerHTML=dresult; } </script> ==== DELPHI UNIT procedure TForm1.wb_ViewShouldStartLoadWithRequest(ASender: TObject; const URL: string); begin if pos('www.fake',url)>0 then begin wb_View.Stop; /// IMPORTANT here we stop the browser if pos('HiDelphi',URL)>0 then wb_View.EvaluateJavaScript('setResult('' Hi from Delphi '')'); end; end; I am just wondering if you have another solution to call a delphi function from FMX TWebBrowser (a cross platform solution) The example is working only with Android and MacOS . For Windows I have used Chromium FMX (another web browser component from https://github.com/salvadordf/CEF4Delphi) I need one source code for multiple platforms and at this moment this is not possible because of this bug Did you know how to create/modify/use other strategy with FMX.TWebBrowser to achieve this? - stop the browser before load/process any URL? Thank you in advance.-
- fmx.twebbrowser
- onshouldstartloadwithrequest
-
(and 2 more)
Tagged with:
-
System.Net.Socket: TSocket.Accept not behaving correctly in Linux ?
optimax posted a topic in Cross-platform
Hi, I have a Tcp daemon thread using TSocket from System.Net.Socket (cross platform), listening for incoming TCP connection and creating client threads when clients connect. It works just fine when compiled and run under Windows. I can connect with a Windows TCP client, a Linux TCP client, or even a simple Linux telnet session, and handle the client communication in the client thread. When compiled and run under Linux, it seems that TSocket.Accept always returns nil, even when a connection is successfully established via telnet or other client. Hence the code that creates the client threads is never executed.... In Linux, my logs show an infinite series of 'Daemon - Socket.Accept with timeout 500ms' followed by 'Daemon - No new connection after 500ms timeout', although a connection can be successfully established. However, without a client thread and a reference to the client socket, there isn't much I can do to handle the client communication... Has anyone seen this behavior when compiling a TCP server for Linux based on System.Net.Socket ? Any hint or help would be very much appreciated. procedure TTcpDaemon.Execute; var LConnectionSocket: TSocket; LConnectionThread: TTcpConnectionThread; begin FServerSocket := TSocket.Create(TSocketType.TCP, TEncoding.UTF8); FServerSocket.Listen(FIP, '', FPort); Log('Dameon started (IP: ' + FIP + ' Port: ' + IntToStr(FPort) + ')'); Log('Daemon - ConnectionThreadCount: ' + IntToStr(GetConnectionThreadCount)); while not Terminated do begin try Log('Daemon - Socket.Accept with timeout 500ms'); LConnectionSocket := FServerSocket.Accept(500); if Assigned(LConnectionSocket) then begin Log('Daemon - New connection - ' + LConnectionSocket.RemoteAddress + ':' + IntToStr(LConnectionSocket.RemotePort)); LConnectionThread := TTcpConnectionThread.Create(LConnectionSocket); FThreadList.Add(LConnectionThread); Log('Daemon - Adding new connection thread - ConnectionThreadCount: ' + IntToStr(GetConnectionThreadCount)); Log('Daemon - Starting new connection thread'); LConnectionThread.Start; end else Log('Daemon - No new connection after 500ms timeout'); except on E: Exception do Log(Self.ClassName + ' Exception (' + E.ClassName + '): ' + E.Message); end; end; TerminateAllThreads; FServerSocket.Close(True); end; -
Remember this hot topic re bringing Linux support to the Pro edition like any other platform already there? There is a famous RSP-17195 with a huge number of votes. Well, as one could expect, this issue has been closed with a popular resolution: Won't Fix. So much for the popular demand...
-
FMXLinux 1.36 is available. Start building UI Linux apps with Embarcadero Delphi and FmxLinux. What's new: #172: Combobox problem on second form #196: TMediaPlayer: Volume-Changes leads to crashes More info at: https://fmxlinux.com
-
- fmx
- firemonekey
-
(and 2 more)
Tagged with:
-
Hi, I've got a CentOS virtual machine and I can connect from the IDE. When I add a simple app and try to run it, I get this error message: [PAClient Error] Error: E0004 File does not exist: C:\Users\[user]\Documents\Embarcadero\Studio\Projects\Linux64\Project1._@emb_.tmp Anyone knows how I might solve this?
-
Hello, Can we use DBExpress on Linux platform? I am getting "E2202 Required package 'dbexpress' not found" error when I set target to linux. There are some .dcp files for other platforms such as win32, win64, osx32 and even for android and ios but I can't find any linux related file :) Also there is a file named bpldbexpress260.so in binlinux64 folder, so it must have been compiled before the ISO file released. Could some files be missing in Delphi 10.3? Can you suggest any solution? PS: I already checked all three December 2018 patches for Delphi 10.3 Rio @Marco Cantu