Recent

Poll

When building own project - Finding Libraries, adding them to project and solving dependencies is EASY!!

Yes, it is - never searched for help.
6 (42.9%)
It takes just some minutes to solve or find a solution.
5 (35.7%)
It takes time, but not so much to raise a problem. Ready answers available instantly
2 (14.3%)
It takes time: I spend more then 2 hours/per week communicating on the forum, and asking colegues.
0 (0%)
No, could not use some libraries because of unsolved question.
1 (7.1%)

Total Members Voted: 14

Voting closed: November 29, 2018, 09:29:44 am

Author Topic: Lazarus SinglePoint Help and Internals for NewBies [HELP and PARTICIPATE]  (Read 2234 times)

Researching

  • New member
  • *
  • Posts: 46
IMPORTANT:
Please, see attachment: NEW-WIKI-ARTICLE TEMPLATE.doc
This reflects the idea raised during discussion on this topic.
IMPORTANT:
Last update: 2018-11-06.
(Document previously downloaded times: 21 )

GENERAL
Actual idea is: for a beginner it takes about a year to become confident in using Lazarus. While it could be about 1-2 weeks to start and a month or two to become confident.
Thinking about actual problem is more interesting then solving bugs, isn't it?
Please, vote if this idea seems required or not.

Good Day!
Quote
Asking for help: If someone has downloaded the repository of Parsery
git clone git@github.com:samueladama/parsery.git
Xml/CSV/TxtSYMFONIA Parsers - Parsers components for XML/CSV/TXT(symfonia). Parser's is very quick for reading XML/CSV/TXTsymfonia Files.. 17-08-2018 https://github.com/SamuelAdama/parsery not found (Error 404).
Would be glad to receive it


After considering things told by Marcov and 440bx, I changed the head of topic.
(The previous version in attachment)
The aimed auditory - Newcommers.
The primarily aimed subject is Lazarus IDE itself –
 as a system with *possibilities, *settings and *algorithms of production

Finally, i’d like to achieve building a CLEAR and EASY bridge between Beginners and Professionals.


The Content of final document should be :
The SHORT guide of step-by-step solutions with further links to WiKi.
The perfect concept of this guide:
0. Short
1.Tells about possibilities
2. Gives a direct step-by-step solutions (at the beginner’s level).

Finally the project is supposed to exist in two forms:
Wiki-page and Doc.

Should cover things like:

Code: Pascal  [Select]
  1. Lazarus Single Point Help and Internals
  2. https://forum.lazarus.freepascal.org/index.php/topic,43045.0.html
  3.  
  4. 0.INTRO: This document
  5. 1. IDE:
  6. 1.0. Installation
  7. 1.1. Compiling from source
  8. 1.2. Installing packages
  9. 2. IDE Settings
  10. 3. Project Settings
  11. 3.1 Targeting and Compiling
  12. 3.2 Using conditional compilation
  13. 4. Text Editing settings and profiles
  14. 4.1. Text hihlighting
  15. 4.2. Additional editing options
  16. 5. FPC
  17. What does it understand. The BNF/EBNF of Pascal, Object Pascal, Lazarus Pascal
  18. Structure of the project in Lazarus
  19. Using the opensource project code:
  20. The concept and methods of resolving dependancies.
  21. The concept and methods of importing and converting Delhi project.
  22. The concept and methods of adding ASM, C, C++ code injections
  23. The concept and tools for converting projects from another progr. languages.
  24. The concept and methos of using extenal modules in your project.
  25. The concept and methods modular compiling of the project (See also IDE settings)
  26. 4. MAIN packages and libraries
  27. 6. ADDITIONAL Packages and libraries
  28. 7. External source repositories
  29. 7.1. Libraries
  30. 7.2. Projects
  31. 8. Programs engeneering, projecting, life-cycle approaches and CASE tools.
  32.  
  33.  


Hoping for success.
Bye!
« Last Edit: November 28, 2018, 10:43:49 am by Researching »
Experienced help, advices greatly   appreciated.
NewBie in programming - now trying to optimize the general work with Lazarus, to solve some general questions clear and once-forever.

Handoko

  • Hero Member
  • *****
  • Posts: 2684
  • My goal: build my own game engine using Lazarus
- How to compile Lazarus from source in windows? (step-by-step)
- How to install several Lazarus IDE-s on a single machine for different purpose?

Recompiling (more correctly: rebuilding) Lazarus from the Lazarus IDE is very easy:
Start your Lazarus IDE > Lazarus main menu > Tools > Build Lazarus with profile: ...

Fpcdeluxe is a tool for installing and updating multiple versions of FPC and Lazarus on a single machine, read more:
http://wiki.freepascal.org/fpcupdeluxe

Have you try OPM? It is a tool that automates the process of installing, upgrading, configuring Lazarus packages.
http://wiki.freepascal.org/Online_Package_Manager

marcov

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 6617
Documentation is welcome, but why not simply use the wiki instead of attaching things here?

The wiki is meant for users that write their own todos, and make sure that their experiences are not lost to the community.

Researching

  • New member
  • *
  • Posts: 46
Hi, Handoko!

The first problem came up: I could not go Step-by-Step with Fpcdeluxe.
At least on widows.
What if I need to use an old version of Lazarus? Ex. Laz-0.9.30 with KOL-CE?
Where can I get a step-by step?
I had to install a fresh version of Laz. to use OPM. WELL! Yes - OPM - works. I succeded.
If I receive the message: OPM: could not install LazProfiler.lpk  What should I do ?
[would you like co compile with the profile NormalIDE] -> Yes
-> [There are two units of the same name.]  -> What to do ?

Hi, Marcov!
Great question! The answer is put to the intro of the topic.

« Last Edit: October 30, 2018, 11:42:28 am by Researching »
Experienced help, advices greatly   appreciated.
NewBie in programming - now trying to optimize the general work with Lazarus, to solve some general questions clear and once-forever.

sash

  • Full Member
  • ***
  • Posts: 158
tl;dr (because it's quite unclear (and typos), what this post is about). All this are a questions or solution proposals?


Lazarus 1.8.4 Unversioned directory FPC 3.0.4 x86_64-linux-gtk2 -- Ubuntu 18.04 XFCE

Researching

  • New member
  • *
  • Posts: 46
tl;dr (because it's quite unclear (and typos), what this post is about). All this are a questions or solution proposals?
This is a try to collect solution proposals in a single place in clear and short form.
So the very nube is able to use them instantly.

The final solution proposals are then collected to the head of topic in the documents.
By now: LazsinglePointHelpInternals-0001-v0.1.0.0.doc
Experienced help, advices greatly   appreciated.
NewBie in programming - now trying to optimize the general work with Lazarus, to solve some general questions clear and once-forever.

440bx

  • Sr. Member
  • ****
  • Posts: 387
@researching

I don't want to give the impression that I am trying to discourage you from creating documentation you feel is needed but, you got to keep in mind that, whatever questions you have and have difficulty finding answers for, are not necessarily the same questions and difficulties someone else is going to have.

The best documentation is one whose purpose is narrow and well defined.  Just having a list of questions (which based on what you posted, don't seem to belong to the frequently asked category) and possible answers is of limited value because, odds are not very good that the question someone has is in the list you intend to produce.

Using Google already answers most questions anyone may have and, when it doesn't then, one can ask a specific question here and get the answer from those who have experience in that area.

Marco's suggestion is very good.  If you manage to create a list of frequently asked questions along with answers to them then, including them in the Wiki ensures that anyone using Google will find the answer.  Creating a .doc file will not accomplish that and almost guarantees that your efforts will ultimately be mostly wasted.

IMO, your topic is too general and your method (creating a doc file) will seriously limit any benefit that others could derive from your efforts.

All that said, I certainly appreciate and value your interest in making a contribution.


Researching

  • New member
  • *
  • Posts: 46
OK.. may be my respected respondents are professional or already got used to getting help from this site.
But not me.
Now I am trying to compile an old project for WinCE.
In this message I will state the problems I come across and can not solve in 5 minutes.
Code: Pascal  [Select]
  1.  "Compiling package LazUtils 1.0" completed:
  2. ->->->-> lclproc.pas(33,44) Fatal: Can not find unit FPCAdds used by LCLProc.
  3.  
I could not find how to install the missing module/unit.
Experienced help, advices greatly   appreciated.
NewBie in programming - now trying to optimize the general work with Lazarus, to solve some general questions clear and once-forever.

marcov

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 6617
You are confusing two core things here:

  • the wince port having a severe maintenance defect. Certain things might not work at all. Such targets are considered for advanced users
  • people having problems with ordinary, supported targets

Making very generic documentation for people working on very special targets, like wince, is a bit counterproductive.


Researching

  • New member
  • *
  • Posts: 46
You are confusing two core things here:

  • the wince port having a severe maintenance defect. Certain things might not work at all. Such targets are considered for advanced users people having problems with ordinary, supported targets

Making very generic documentation for people working on very special targets, like wince, is a bit counterproductive.

Nice to read from you, Marcov!

Well, that's quite clear to me. And I'm not going to ask for special solutions - that's my own headache.
But what I consider general question - guidelines which give an ability
-- to state the question:" Is THIS possible or not?"
-- and to make an answer yourself in a couple of minutes.

What I stuck with - is not about WinCE itself - it is about the general approach to installation, finding packages, resolving dependencies, finding appropriate repository.

Actually - pages with answers about WinCE - are found easily. But I'm not able to use the data found on the certain page, before digging some more pages.
In the opposite - the solution finally found - IS EASY!!! It is step - by -step and takes 5-10 min of direct work.
So why to waste the time?
For example - now I tried to install LazVCSHelper Package inside Lazarus. I is NOT obsolete, and considering all 4 types of repositories supported - is useful on general basis. BUT!!..... Having TortoiseSVN, and Tortoise GIT installed properly (working) - I could not get this additional package to work!!!
What to do?
Now still having questions with fpcupdeluxe... I actually do not understand even how to ask the question to the forum!! May be "blind", but did not see any complete user guide for this tool (for example - Laz <->FPC version compatibility )
Etc...
I do not think - these questions are so "special"...
And I do think, that good "hands on" in these questions gives a great advance in solving the rest.

Thank you for response! :)
« Last Edit: October 31, 2018, 01:09:49 pm by Researching »
Experienced help, advices greatly   appreciated.
NewBie in programming - now trying to optimize the general work with Lazarus, to solve some general questions clear and once-forever.

Handoko

  • Hero Member
  • *****
  • Posts: 2684
  • My goal: build my own game engine using Lazarus
What I stuck with - is not about WinCE itself - it is about the general approach to installation, finding packages, resolving dependencies, finding appropriate repository.

Actually - pages with answers about WinCE - are found easily. But I'm not able to use the data found on the certain page, before digging some more pages.
In the opposite - the solution finally found - IS EASY!!! It is step - by -step and takes 5-10 min of direct work.

Most users in this forum already knew, the documentation and wiki pages need to be improved, they're not well-organized and not up-to-date. Almost all the newbies questions can be answered if they 'really' dig into the documentation and wiki. I see you're good in writing and organizing information, maybe you could help improve the documentation and wiki pages.

About the Laz <->FPC version compatibility, you can find it on the Announcements category in the forum. You don't have to use the exact version combination but you may run into trouble.

Researching

  • New member
  • *
  • Posts: 46
Next Question: I have three target platforms, so I install cross-compilation tools.
So, can I use a single IDE installation and just change the target each time?
Or (what's even better) - have the compiler to compile for all three on a single click?

And where to get information about packages (dependencies) changed/removed in Lazarus overtime?
Is there a comparison table somewhere??
Experienced help, advices greatly   appreciated.
NewBie in programming - now trying to optimize the general work with Lazarus, to solve some general questions clear and once-forever.

Researching

  • New member
  • *
  • Posts: 46
Want to add auto-completion for ',", (,{,[
Where to find this template?
Experienced help, advices greatly   appreciated.
NewBie in programming - now trying to optimize the general work with Lazarus, to solve some general questions clear and once-forever.

Researching

  • New member
  • *
  • Posts: 46
Let's proceed with refactoring, units,  project templates...

UNITS: the question is more about the work-flow, than general Lazarus standards:
- Where the error comes from? How to correct it??
- How to rename units in the project in the late stage of coding?
- Additionally: could not "refactor" variable "s" to "s_1". Why?
 
Scope: UI-BL-DB or MVC project.
0. Create new project, save as ProjTemplate_1 [OK]
1. Add units to project [use wizard - OK]
2. Want to set units names like uUI_1, uBL_1, uDB_1 [seems to be OK]
3. Want to rename the main form unit to uFmMain [ here errors begin ]
4. Want to copy the project folder to a new place and rename the folder to WorkingProject [ error - can not find units....]

WORKFLOW:
Create project > create procedure / function > test inside the main unit (uFmMain) -> move to the subunit (uUI_1)
Is this the correct approach?
What do experienced coders do, to test new code before including in the main project?
What steps should be taken, to test new code in consoleApp, and then move it to the visual application code?

Where to find the documentation
-- about the general architecture of project (internal dependencies, links and connections)?
-- About the general architecture/internals of IDE if I'd like to modify the UI for myself?
-- How do I change the internal code of some implemented control/component, if I need to?

With respect.
Researching.
 


Experienced help, advices greatly   appreciated.
NewBie in programming - now trying to optimize the general work with Lazarus, to solve some general questions clear and once-forever.

Handoko

  • Hero Member
  • *****
  • Posts: 2684
  • My goal: build my own game engine using Lazarus
-- about the general architecture of project (internal dependencies, links and connections)?

If you want see the dependency of your own project:
Lazarus main menu > View > Project Inspector > Required Packages

If you want an overview of the Lazarus Package System:
Lazarus main menu > Packages > Package Graph

-- About the general architecture/internals of IDE if I'd like to modify the UI for myself?

http://wiki.lazarus.freepascal.org/Lazarus_Documentation#IDE

-- How do I change the internal code of some implemented control/component, if I need to?

No, you should not change it directly. It is better to write a new component to enhance/modify the original component. Learn more about writing Lazarus component:
http://wiki.freepascal.org/How_To_Write_Lazarus_Component
« Last Edit: November 28, 2018, 12:16:03 pm by Handoko »