Lazarus

Installation => Windows (32/64) => Topic started by: ARYLIOA on May 07, 2012, 05:39:42 pm

Title: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: ARYLIOA on May 07, 2012, 05:39:42 pm
I am new to Lazarus.  I have a great deal of Delphi code which I am in the process of converting.  Currently I am targeting only Windows but the whole idea is to eventually port everything to Linux as well.  I run three computers with three versions of Windows (2 are purely XP, the other is a dual-boot configuration of Vista and Windows 7).  My source is on a network drive so in theory I can compile from any of the computers and from any OS I happen to be running at the time.

Is there an easy way to make sure each Lazarus installation is identical to the others?  For instance if I install a package in the IDE on one, or change the environment, I would like to make sure it is in all the others without having to do each manually.

Can I copy a particular directory/sub-directory tree, maybe just certain files, or is it even possible there is an application to do cross-computer/cross-OS synchronization?

Thanks.

(I searched for 'synchronize' but, unless I am badly mistaken, the only hits I find don't seem to address what I am asking about here.)
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: BigChimp on May 07, 2012, 07:19:37 pm
You can copy the Lazarus directory and subdirectories, but also the primary config path directory (see wiki, something like c:\documents and settings\<username>\local appdata\lazarus IIRC)
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: IPguy on May 07, 2012, 07:21:22 pm
Assuming the network drive is mounted as the same drive letter on all windows systems, you might try installing Laz on the network drive and running it from there.
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: mas steindorff on May 07, 2012, 07:35:18 pm
i use the 32 bit release candidates on WinXP and Win7 without any (pascal) problems. I also have a mutant/older pre release copy of one of the 64 bit IDE on win7 that makes me work in the IDE but complies the same code in the end.  I need to download the release rev of the 64 bit but it not high on my list at this time. 
I think if you are staying with windows, then you will not have any real issues working with the same source code even at the driver access level.

I was able to modify one of my projects to fix a windows registry bug I found in the 2.4.4 code in a way so that I did not need to recompile Lazarus on all of the machines it was installed on. 

http://www.lazarus.freepascal.org/index.php/topic,16786.msg92187.html#msg92187
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: ARYLIOA on May 07, 2012, 07:57:02 pm
.........
I think if you are staying with windows, then you will not have any real issues working with the same source code even at the driver access level........
I was not so concerned with the source or even the executables produced, but perhaps saving the time of making changes to Lazarus itself on each machine, some of which I would be sure to forget, and then wind up scratching my head about what would cause things to be causing errors at compile or link time.

IPguy:  I do use the same drive designation on all systems.  That still might leave the application data that BigChimp mentioned as a potential problem.  I will give it a try on a couple of the machines and see what happens.

Thanks for the replies.  I'll report back if the network drive idea works.

Status as of 1540:
Here's how it stands.  I installed on two computers with the network drive as the target for the installation.  Everything worked fine and Lazarus ran on each.

Then things went south.  I installed the RichMemo package on the second computer.  It worked fine on that computer but on the other computer I got the message The package "richmemopackage" is installed, but no valid package file (.lpk) was found.  A broken dummy package was created. as Lazarus loaded.

I thought maybe I would find something in the environment settings.  Looking at those there was good news/bad news.  They were identical in referencing the network drive, but identical even to the point that the path for test projects on both pointed to the computer where the 2nd installation was done.  That can probably be fixed, but would be a manual job.

Then I started a search starting at My Computer, on the computer where RichMemo was installed to try to find where the richmemopackage.lpk that Lazarus is looking for might live. That traverses the network drive as well, of course.  I found two copies.  Where it was downloaded in the zip file, and the unzipped file.  But so far I haven't found another, nor where and how Lazarus is looking for a link to the file when it tries to load.

I am tempted to copy the files from the 2nd machines Local Settings/Application Data/lazarus directory, but have no idea which one(s) might fix the problem or which one(s) might blow the whole thing out of the water.

Any ideas where Lazarus looks for links to the installed package files would be helpful.
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: IPguy on May 08, 2012, 02:05:45 am
I have a USB stick titled "Lazarus Portable" that I received when I purchased the Lazarus book.  I have not attempted to use it, but the title suggests it should be possible to run Laz from a common network drive location.  Unfortunately, I do not have a network drive to test with.

Here are some references from the forum on getting Lazarus to work "portably" (sp?) ...
http://www.lazarus.freepascal.org/index.php/topic,6347.0.html
http://www.lazarus.freepascal.org/index.php/topic,9171.msg44816.html#msg44816
http://www.lazarus.freepascal.org/index.php/topic,13627.msg79381.html#msg79381

Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: picstart on May 08, 2012, 02:25:33 am
Well the compiled code assuming you get that far is reasonably contained as far as dependencies go. The IDE is another matter it seems like a black art. The adventurous escape from a single lazarus directory into users\Local Settings\Application Data/lazarus directory etc  is so unpleasant it almost always needs to be deleted if any update to the IDE is happening along with a clean build. Now the packages appear to have dependencies on were they were when they are first installed. I don't get this since the IDE has to be compiled to absorb them. Projects have similar dependencies but it is mostly confined to the folder the project is developed in. There is an export to another project folder that helps with this. If Lazarus' IDE wasn't so adventurous it might have been contained within a single folder which could be copied to other systems using the same OS and file system. A single folder ( with subfolders)  would make the IDE more like the exe and free the user from frustration.
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: marcov on May 08, 2012, 11:19:55 am
I have a USB stick titled "Lazarus Portable" that I received when I purchased the Lazarus book.  I have not attempted to use it, but the title suggests it should be possible to run Laz from a common network drive location.  Unfortunately, I do not have a network drive to test with.

Afaik that one has some form of protection, and the starter program is binary only. It might have based on code from me to modify the Lazarus XML (see the last post of the first URL, the "fixxml" stuff).

In 0.9.30+ there is a lazarusdir option, and basically you simply set the lazarus config dir to $LAZARUSDIR/config, copy the profile there, and then start using startlazarus -lazarusdir=%driveletter%\lazarus

(or force that using --pcp=)

In theory this means you only need to

Install lazarus somewhere (say n:\lazarus).

Copy the profile to n:\lazarus\config

Get the batchfile from http://bugs.freepascal.org/view.php?id=15741 and check/update it a bit for current releases. (check FPC version and dir, root dir, name of the config dir)

And you have a version that you can copy around as long as you keep the base directory the same. If you want to change the base directory, one only should have
to edit the relative path (LAZARUSDIR) in the batchfile

I never tested it with .30 though :-) I did this back then for a project that ended before .30 came out, so I stuck with the XML rewriting trick.

Some loose ends:
- I don't know if the fpmkcfg in the batchfile is still necessary
- lazarus is started via lazarus.exe, not via startlazarus.
 
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: ARYLIOA on May 09, 2012, 04:57:18 am
………. The IDE is another matter it seems like a black art. The adventurous escape from a single lazarus directory into users\Local Settings\Application Data/lazarus directory etc  is so unpleasant it almost always needs to be deleted if any update to the IDE is happening along with a clean build. ………..

I know the feeling and I am beginning to feel inadequate to the job of making all four systems play together even if it were possible.  I have decided to do it the old fashioned way: write a procedure that works and follow it on each individual installation and update.

As I detailed in post#4 above I installed on one of the XP machines then the Windows 7 side of my dual-boot machine.  I used the network drive as the installation target on both.  Lazarus was already installed on the Vista side of the dual boot machine, installed in the C: partition.  As I said, the XP and Windows 7 machines each ran fine from the network drive until I tried to install RichMemo.  In addition to the things I listed there, I found four files in my User area that contained references to the RichMemo package.  I stopped the whole idea of all the computers sharing the install on the network drive right then.  It looked more complicated than was worth the trouble and I am anxious to get back to my Delphi conversions.

I uninstalled Lazarus on the XP machine and on the Windows 7 OS.  When I tried to reinstall to the respective local drives I got a make.exe[2]***[lazarus.exe]Error 1 error when I tried to install RichMemo.  No matter what I tried, I couldn't get around it.  I even uninstalled, deleted every file referencing Lazurus and even deleted every reference in the Registry.  That worked on the XP machine and I was able to get a stable IDE with RichMemo installed.  But nothing has worked so far on the Windows 7 OS.  Even the IDE without any changes will not recompile and ends with the make error.

As I said, I am new to Lazarus but it has me stumped.  In desperation, I restored the Windows 7 system with a full-image restoration of the partition which I had made on May 1 before trying any of this.  When I reinstall Lazarus to what I thought was as "scratch" OS I still get the ue]make error.  It appears that something that lives outside the Windows 7 (G:) partition may be involved.

One strange thing, which may be a lead, is that on the Windows 7 installation, the environment starts out with the FPC Source Directory and the Make Path both blank as if the installer doesn't know everything it needs to know.  I have copied the Compiler Path to the Make Path and changed fpc.exe to make.exe.  I used $(LazarusDir)fpc\$(FPCVer)\source\ for the FPC Source Directory since all three other installations have that.  But still no joy on getting the thing to build.  Any idea why those were not filled in at installation?  Are those the right entries?  Could the thing that caused them to be blank be causing the make errors?

Anyway, I have three working copies, 2 XP and one Vista.  All were installed step-by-step independently.  And to tell the truth, I dislike Windows 7 more than I dislike even Vista, so it is not a heart-breaker, but I hate to have a piece of software get the better of me.
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: ARYLIOA on May 09, 2012, 03:36:49 pm
Latest failure: (edited for clarity, pushed wrong button earlier)

I found this on http://wiki.freepascal.org/Lazarus_Faq#How_do_I_compile_Lazarus.3F

How do I compile Lazarus? Do something like this:

$ cd lazarus
$ make clean all

Interestingly, the make output was headed by "MAKE Version 5.1 Copyright <c> 1987, 1998 Borland International"

The first error is:
    "Error makefile 12: Colon expected"
There are others of that type scattered in the output.

Then there are hundreds of messages reading:
   "Error makefile 3672: Command syntax error" where 3672 is where it finally gave up.

That was followed by:
    "***1907 errors during make ***".

Should this have worked?  Should I have tried some other command?  Could this be what the real problem is, especially in light of the way I have the environment set?

Thanks for any solution you might offer.
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: JuhaManninen on May 09, 2012, 05:57:59 pm
Interestingly, the make output was headed by "MAKE Version 5.1 Copyright <c> 1987, 1998 Borland International"

You may have installed or updated Delphi after installing FPC.
Delphi comes with "make" which is incompatible with FPC's "make".
In any case you can delete or rename the Delphi's "make". Very likely you will not need it.


Quote
... Could this be what the real problem is, ...

Yes, I have got the same problem after installing and updating Delphi.

Regards,
Juha
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: ARYLIOA on May 09, 2012, 07:41:04 pm
Interestingly, the make output was headed by "MAKE Version 5.1 Copyright <c> 1987, 1998 Borland International"

You may have installed or updated Delphi after installing FPC.
Delphi comes with "make" which is incompatible with FPC's "make".
In any case you can delete or rename the Delphi's "make". Very likely you will not need it.

Quote
... Could this be what the real problem is, ...

Yes, I have got the same problem after installing and updating Delphi.

Regards,
Juha

Ah.  Thanks for the reply.  Apparently the default make command is the Borland version 5.1.  I suppose Delphi installed it way-back-when.

There is one in the \Lazarus.......\i386-win32\ directory.  It is identified as GNU Make 3.80.  But searching for the proper makefile yields literally dozens of makefiles under the top-level (G:Lazarus) directory and it's sub-directories.  I have no idea which to use as the target for the make command to build the entire system.

Whatever the problem, the makekfiles MakeFile and MakeFile.fpc in G:\Lazarus are dated 06/27/2011 and are the ones loaded by the Lazarus installation.  They match the files on the other computers' Lazurus top-level directories.

Assuming the Makefile in G:\Lazarus was the proper one, I tried the using the GNU Make 3.80 command with it.  It fails after apparently doing all the required compiles with the messages:
  "Linking ..\lazbuild.exe"
  "1278 lines compiled, 6.5 sec , 3747584 bytes code, 2331004 bytes data"
  "make[2]: Leaving directory G:/lazarus/ide"
  "make[1]: Leaving directory G:/lazarus/ide"

There's gotta be a way......
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: JuhaManninen on May 09, 2012, 09:41:34 pm
Ah.  Thanks for the reply.  Apparently the default make command is the Borland version 5.1.  I suppose Delphi installed it way-back-when.

There is really no default make command. The cmd shell searches from PATH and uses the first one it finds.

Quote
There is one in the \Lazarus.......\i386-win32\ directory.  It is identified as GNU Make 3.80.  But searching for the proper makefile yields literally dozens of makefiles under the top-level (G:Lazarus) directory and it's sub-directories.  I have no idea which to use as the target for the make command to build the entire system.

Don't count the makefiles. Just go to Lazarus root dir, G:\Lazarus in your case, and run "make clean all".

Quote
Whatever the problem, the makekfiles MakeFile and MakeFile.fpc in G:\Lazarus are dated 06/27/2011 and are the ones loaded by the Lazarus installation.  They match the files on the other computers' Lazurus top-level directories.

Assuming the Makefile in G:\Lazarus was the proper one, I tried the using the GNU Make 3.80 command with it.  It fails after apparently doing all the required compiles with the messages:
  "Linking ..\lazbuild.exe"
  "1278 lines compiled, 6.5 sec , 3747584 bytes code, 2331004 bytes data"
  "make[2]: Leaving directory G:/lazarus/ide"
  "make[1]: Leaving directory G:/lazarus/ide"

How does it fail? I don't see any error messages there.

Juha
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: ARYLIOA on May 09, 2012, 10:05:43 pm
I assumed perhaps installed as default since that is the one that ran from the g:\lazarus directory.  I also assumed the make.exe[2] and make.exe[1] were error messages since that is what I was seeing when Tools > Build Lazarus with Profile: Build IDE with Packages fails.  Obviously too many assumptions based on inexperience.

If I run the "make clean all" from the g:\Lazarus directory it picks up the Borland make and fails as indicated earlier with hundreds of errors.  I do wonder how that version is found before the one in the actual Lazarus directory tree.  The search must begin at the root directory somehow.  I think perhaps that is what the build in the IDE may be doing.  I think I am going to hunt down the Borland make and defeat it.  Then perhaps the IDE will  build properly.

Thanks for the pointers.  I am a long retired, long time DOS/Windows user and was a professional software developer in the aerospace industry on many OSs but never had any exposure to Unix in the 32 years I did that.  My goal is to add that to my "resume".  Times may get rough..... :D
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: BigChimp on May 09, 2012, 10:08:23 pm
Borland make is probably in your path, that's why it's picked up first. You can also remove the directory where Borland make is in from your path (right click my computer, advanced, environment, paths and system variables or something... also slightly different in each windows version)
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: JuhaManninen on May 10, 2012, 12:18:45 am
If I run the "make clean all" from the g:\Lazarus directory it picks up the Borland make and fails as indicated earlier with hundreds of errors.

You should also read the answers you get...
Either edit your PATH as BigChimp suggested, or follow my advice which I repeat here:
 - you can delete or rename the Delphi's "make". Very likely you will not need it.

Quote
Thanks for the pointers.  I am a long retired, long time DOS/Windows user and was a professional software developer in the aerospace industry on many OSs but never had any exposure to Unix in the 32 years I did that.  My goal is to add that to my "resume".  Times may get rough..... :D

Many things in Lazarus development become easier with Linux. There is no Delphi's "make" for starters. The cmd shell works better. Debugger works better. Many developers use it because it is simply better for this task.

Juha
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: ARYLIOA on May 10, 2012, 02:31:46 pm
I have been trying everything that has been suggested.  Sorry to say, so far, nothing has fixed the main problem, installing RichMemo into the Windows 7 hosted Lazarus.  I'm not complaining, just commenting. I appreciate any and all suggestions.  If nothing else, I am getting a crash course on some stuff I have never encountered before.

I removed the Borland binary from both the Windows 7 path and the DOS path.  Then make was an undefined command as far as DOS knew even though one was in a sub-directory.  Again, it looks like the search starts at the root and stops if it hasn't found one by the time it gets to the current directory.  I don't know that, but it sure looks that way.

Edit:  one of the first things I tried to force the proper make was to rename the Delphi make make.xex.  That worked just as I described above for the tests with the path modified.

So, I explicitly addressed the make in that directory using the command g:\Lazarus\fpc\2.6.0\bin\i386-win32\make clean all.   Those two lines which I thought were errors still appeared, but on your advice I ignored it and looked at the new executable and it was just built.  So far, so good.

Figuring I now had a clean copy and could add RichMenu to it, I went back to the IDE and tried Tools > Build Lazarus with profile: Build IDE with Packages.  It failed after many of what looked like "typical" compiler messages went by.   The last message that looked "typical" was:
  "Compiling package: SQLDBLaz 1.0.1 completed"
That is followed by the error line I have been fighting all along:
  "Make.exe[2]:***[Lazarus.exe] Error 1"

I even tried building the entire system while in the IDE by using Tools > Configure Build Lazarus > Clean up + Build all. .  It "appears" to end with the message:
  "g:\Lazarus\fpc\2.6.0\bin\i386-win32\make.exe: Leaving directory 'G:\lazarus\examples"
I say "seems" since it just sits there at that point and doesn't restart Lazarus.  That may be the normal end.

But RichMemo, and quite a few other packages are still marked with a "+" if I look at the Packages > Install/Uninstall Packages window.  If I then try to run Tools > Build Lazarus with profile: Build IDE with Packages it compiles a couple packages.  Then I get the identical results as before.  The last compilation message is:
  "Compiling package: SQLDBLaz 1.0.1 completed"
That is followed by the error line I have been fighting all along:
  "Make.exe[2]:***[Lazarus.exe] Error 1"

That's where the problem stands for now.  I hope you see that I haven't been sitting around awaiting a miracle.
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: JuhaManninen on May 11, 2012, 12:31:48 am
Make sure you have
  G:\Lazarus\fpc\2.6.0\bin\i386-win32\
in PATH. It should be there after installing FPC but who knows.

On Linux you could run "which make" to find out which make command gets called.

Juha
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: BigChimp on May 11, 2012, 12:03:53 pm
Quote
I hope you see that I haven't been sitting around awaiting a miracle
No, seems like you're trying hard enough. And I think you're going in the right direction, too.

Just FYI:
Quote
I removed the Borland binary from both the Windows 7 path and the DOS path.
There is no "Windows path" and "DOS path". There is a system-wide path and user-specific paths, which get combined to give the effective path.

Make clean doesn't always clean up everything. You can also try make distclean.. and then rebuild Lazarus etc.

If you still have problems, you might try renaming the settings directory (probably something like C:\Users\<username>\AppData\Local\lazarus) for that Lazarus, try make distclean etc again, run Lazarus and recompile a clean IDE, then add only the richmemo package, and try to rebuild.

I think this might be mentioned on the wiki, but am too lazy to check right now...

Of course, you could get even more drastic and rename/wipe the settings dir, delete the entire Lazarus dir and reinstall Lazarus to try again.

Good luck & keep us posted...
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: ARYLIOA on May 11, 2012, 03:14:42 pm
Quote
I removed the Borland binary from both the Windows 7 path and the DOS path.
There is no "Windows path" and "DOS path". There is a system-wide path and user-specific paths, which get combined to give the effective path.

If I use My Computer > Properties > etc.... there is an entirely different path than from Run > cmd > path.  It may be possible that if I am running from Windows those are combined, but are they when running DOS from the cmd line?  It looks like Windows and Windows installer can alter the DOS path, but if I remove things there, I believe they are gone when I work at the cmd level.  They aren't shown in the path any longer.

That is why I changed both paths to be sure Borland was missing from both.  It did prevent execution of  the "wrong" make, but did not find the "right" make at that point, requiring me to use full addressing to the correct one.  Putting that file structure in the path also works to find it.  All this because Microsoft still has a core system structure dating to what, 1983 or so?

Right now, it appears that the IDE is using the proper version of make but something else, some stray flag someplace on G: or maybe even on another partition seems to cause it trouble.  The build works fine from the cmd line but goes south if used in the IDE.  Is there a way to force an install of RichMemo from the cmd line?  I suppose I could edit the makefile but the warnings at the top of it, and the unfamiliar syntax has me cautious about that.

I'm pressing on.  I remember that in the early days we used to say we had to hold our mouth just the right way to make complilers work.  I am starting facial exercises today. %)
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: BigChimp on May 11, 2012, 05:53:54 pm
If you change paths they don't immediately propagate... I think you might need to log off and on for user paths, perhaps reboot for system-wide paths.
Existing cmd sessions won't change either, IIRC.
You can always reboot for good measure and to remind yourself you're using Windows ;)

As I can't remember these things (and because used to use DOS a lot), I keep as much out of the paths as possible...

As for core structures dating to 1983... wait till you try Linux :)

You'll have to get your IDE in shape, otherwise you can't rebuild it when adding packages etc. I'd stay away from the make file.
Is it a standard install and the only Lazarus on that machine?

Assuming you've tried make distclean all, why don't you try to rebuild a regular IDE first: Tools/Configure Build Lazarus, choose Normal IDE profile.
Then Tools/Build Lazarus with profile Normal IDE.
If that fails, you can post the messages that appear in the message window...
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: ARYLIOA on May 11, 2012, 09:11:05 pm
As for core structures dating to 1983... wait till you try Linux :)

But Microsoft claims to the world's leader in software development.  And they are sitting on tons of money, quite a bit of it mine.  By the time Vista hit the market they were due for a re-write of the core.

Anyway, back to Alfred in Wonderland.  Things are sure getting "curiouser and curiouser".  I did a make distclean all at the cmd level.  That worked.  So does make clean all.

But now something has changed and any attempt to build in the IDE ends with this as the last "successful" message:
   "Compiling package LazControls 0.0 completed
Followed by:
  "Error: Illegal parameter -w"

I did my daily uninstall, reinstall, and it still does that.  If I look in the makefile in G:\Lazarus I find these lines:
.PHONY: fpc_info
fpc_info: $(INFORULES)
.PHONY: fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_sub2 \
   fpc_makefile_dirs
fpc_makefile:
   $(FPCMAKE) -w -T$(OS_TARGET) Makefile.fpc
fpc_makefile_sub1:
ifdef TARGET_DIRS
   $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
endif
ifdef TARGET_EXAMPLEDIRS
   $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_EXAMPLEDIRS))
endif

I don't know if they are the ones causing the error or not.  And, of course, there are many makefiles in Lazarus directory tree.  Due to the "new and improved" search Microsoft sold us from Vista on, I have yet to be able to locate any files in the Lazarus directory tree that contain LazControls to find out what is invoking the compile and link sequence.  No wonder I prefer XP.

The good news is that during lulls in contemplating blowing my (Windows 7) brains out, I am converting some Delphi on my XP installation.  I am also looking for an explorer replacement for my Vista and Windows 7 systems.
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: ARYLIOA on May 11, 2012, 11:23:17 pm
I am still trying to find the makefile(s) that may be giving me trouble.  I thought maybe I could get on the trail if I could find out the location which invoked the last successful compilation.

I haven't used grep for 20 years.  Like I said, I was never really exposed to Unix.  If I am at the Lazarus top-level directory shouldn't grep -i -H LazControls *.* return a list of the files that contain the string?  What I get is a list of subdirectories.  Am I mixing Unix and DOS poorly here, or missing something else?  Do I really have to look in each sub-directory individually?
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: BigChimp on May 12, 2012, 06:20:34 am
I always use something like grep -i --recursive LaControls *
-i: case-insensitve search
--recursive: also search through subdirectories
* instead of *.* as it seems more Unixy (actually I think *.* might work too).

Let's go back a bit: you are trying to do this from a snapshot install or some release install?

Try the latest snapshot or, conversely, the latest release version (I know this may hinder keeping stuff in sync later on but if you can't add your components that will be irrelevant anyway).
Also remove your Lazarus settings directory before installing.

You are installing Lazarus in a directory without spaces?
On a local drive?
Or on a network drive?
What does fpc -iW and fpc -iSP return?
In your existing Lazarus, which Lazarus version and FPC version (which shows with which compiler that Lazarus was built, IIUC) is shown in Help/About?
(Perhaps asking things you already indicated, but it's getting to be a long thread).

As an alternative, you might want to give Ludob and my fpcup a go, which will install a parallel installation of Lazarus/FPC into c:\development\lazarus, c:\development\fpc and utilities (make, grep etc) c:\development\fpcbootstrap. It won't mess with your path or your primary Lazarus settings though, so you can remove those directories without problem.
You can also change the dirs, see the --lazdir, --fpcdir, --fpcbootstrapdir (IIRC), --binutilsdir (IIRC) options as shown in fpcup --help
By default, fpcup will download trunk/latest development Lazarus and FPC fixes 2.6 (=FPC 2.6.1), which seems to be fairly stable.
If this works, you could try to copy over the Lazarus directory fpcup generated over g:...lazarus (without overwriting the fpc subdirectory there).
Then restart that g:...lazarus, check the compiler settings (should still point to the fpc compiler in g...fpc), rebuild Lazarus from IDE to recompile everything with the g...fpc compiler.

Of course, if fpcup works for you you could switch to that, too ;)
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: ARYLIOA on May 12, 2012, 04:08:32 pm
Red is in-context response by ARYLIOA
I always use something like grep -i --recursive LaControls *
-i: case-insensitve search
--recursive: also search through subdirectories
* instead of *.* as it seems more Unixy (actually I think *.* might work too).  It does.

Missed that..... get hundreds of hits, more than I care to or even know how to chase down.

Let's go back a bit: you are trying to do this from a snapshot install or some release install?

Release 0.9.30.4 from sourceforge.  (To go back all the way, I have added a recap here also.)

Try the latest snapshot or, conversely, the latest release version (I know this may hinder keeping stuff in sync later on but if you can't add your components that will be irrelevant anyway).
Also remove your Lazarus settings directory before installing.

You are installing Lazarus in a directory without spaces? Yes.
On a local drive? Yes (To Windows 7 on a Vista (c:)/Windows 7 (G:) dual boot system with Lazarus up and working on the C: partition under Vista.)
Or on a network drive? No
What does fpc -iW  2.6.0 and fpc -iSP return? i386
In your existing Lazarus, which Lazarus version and FPC version (which shows with which compiler that Lazarus was built, IIUC) is shown in Help/About?  Same as above plus SVN Rev. 35940
(Perhaps asking things you already indicated, but it's getting to be a long thread).   I agree. Hopefully recap will help with that.
As an alternative, you might want to give Ludob and my fpcup a go, which will install a parallel installation of Lazarus/FPC into c:\development\lazarus, c:\development\fpc and utilities (make, grep etc) c:\development\fpcbootstrap. It won't mess with your path or your primary Lazarus settings though, so you can remove those directories without problem.
You can also change the dirs, see the --lazdir, --fpcdir, --fpcbootstrapdir (IIRC), --binutilsdir (IIRC) options as shown in fpcup --help
By default, fpcup will download trunk/latest development Lazarus and FPC fixes 2.6 (=FPC 2.6.1), which seems to be fairly stable.
If this works, you could try to copy over the Lazarus directory fpcup generated over g:...lazarus (without overwriting the fpc subdirectory there).
Then restart that g:...lazarus, check the compiler settings (should still point to the fpc compiler in g...fpc), rebuild Lazarus from IDE to recompile everything with the g...fpc compiler.

Of course, if fpcup works for you you could switch to that, too ;) How can I edit the .ini file to load the development system to G: just to make sure it doesn't get involved with the current installation on C:?  It might not matter, but as strange as this whole problem has been, it might be safer.
This thread is getting to be a lot to read so here is a brief(er) recap.

The first goal was to see if Lazarus could be installed on my network drive so all computers with access to it could run a common image.  I already had successfully installed Lazarus and installed RichMemo to Vista (C:) on a dual-boot Vista/Windows 7 computer.  I then loaded Lazarus on an XP machine using my Network Drive (N:) as the target.  That worked.  I then loaded it to the dual-boot Windows 7 OS using N: as the target also.  That worked.  However, when I installed a package on the XP machine, which worked, the Windows 7 machine did not also get the update.  Apparently enough information is stored in my User structure on each OS that making the installation common is not an easy job.  At that point I decided to just do conventional installations on my computer/OS combinations.

As a start, I removed both installations referring to the network drive.  I reinstalled on the XP machine and installed the RichMemo package with no problem.  However, since that time, I can load the system to Windows 7 (G:) but it fails with errors when trying to install RichMemo.  So far, I have not been able to determine and fix the problem.  There have been several problems resolved, like paths to the make executable, but those seem to have been incidental.  But may have (likely has?) corrupted something.

I have uninstalled, deleted all G: files related to Lazarus and even removed all references to Lazarus from the Registry.  None of that changes the behavior when I reinstall

Once I try to install RichMemo, it appears in the Install/Uninstall list but any build attempted from the IDE fails.  I can rebuild the system at the cmd level by using any of several combination of make.  That makes a clean copy which will immediately fail again if I try to install RichMemo.

Is there anyone out there who actually has Lazarus on a Vista/Windows 7 dual-boot setup?  Maybe the whole thing is impossible for some unknown quirk in Windows (nah, no quirks in Windows %)).

I hate to cross-post, but I think I will pose that question to the community.
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: BigChimp on May 13, 2012, 03:35:50 am
Quote
I have uninstalled, deleted all G: files related to Lazarus and even removed all references to Lazarus from the Registry.  None of that changes the behavior when I reinstall

Just to be clear: AFAIK, Lazarus doesn't store anything in the registry. File type associations (e.g. open .lpr with Lazarus.exe go there, but these are kept there for all associations.
Your settings are in a different directory (primary config path), see above in this thread.
If you want to completely erase all trace of Lazarus, you have to delete (or rename) that settings directory as well.
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: ARYLIOA on May 13, 2012, 02:12:46 pm
I didn't keep track of what I found in the Registry but it may have been just normal system references to directories and such.  I did find about 8 or 9 both in keys and values and deleted them on the assumption I could always restore the partition's image from a backup if all else failed.
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: ARYLIOA on May 14, 2012, 09:59:26 pm
More information, perhaps not useful but reported in the event it might be.

The "Error: Illegal parameter -w" was a red herring.  In all the changes I had made I had made an error in the IDE Environment Make Path.  After correcting the path that error is gone but I am back at the error "Make.exe[2]:***[Lazarus.exe] Error 1".

I tried deleting the entire Lazarus directory structure in my USERS account.  That results in only 5 or 6 packages being installed.  If I try to install even one more from the Packages menu, the build fails with the "Make.exe[2]:***[Lazarus.exe] Error 1" error.

Grasping at straws, I started progressively using the IDE to build portions of the system.  I started with the Build LCL option.  I progressivelyadded pieces to the build.  First Package Registration, then IDE Interface, then SynEdit, then IDE.  Until adding IDE everything appears to run properly.  At that point the build ends in the "Make.exe[2]:***[Lazarus.exe] Error 1" error.  If I remove IDE and add Examples, that seems to work also.  This behavior is the same whether with packages is checked or not or whether the Clean + Build option is used for each item in the builds.

I can use make clean all or make cleanlaz all from the DOS window at any time and it always succeeds except if the IDE is running in Windows.  I did that on the theory that Windows had the executable locked and the build was trying to replace it.  Those makes fail as well, and with the error  "Make.exe[2]:***[Lazarus.exe] Error 1"!  Whether that is indicitive of a similar problem building within the is beyond my level of experience to determine.  Gut it is reinforced in my mind because I do notice on the other systems that the link seems to be making a temporary ...new.exe, probably being renamed during the restart after the build.  I never get that far on the Windows 7 installation.

No one has yet tosay exactly what the "Make.exe[2]:***[Lazarus.exe] Error 1" means, but perhaps it has to do with the IDE executable being locked and the build process cannot replace it. I know that does not happen in any of the other three installations (XP, XP, and the Vista OS on the dual-boot computer where Windows 7 is causing all this turmoil.

Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: BigChimp on May 15, 2012, 07:21:24 am
I'd like to repeat a previous suggestion: try fpcup.

Also, if you delete the Lazarus settings dir from c:\users...bla, you are also removing info on which compiler to use etc. If you then use the IDE to recompile anything it probably won't work as you found out.
Do a
make distclean
make all
make bigide
(experts will tell me some of these can be combined)
to clean up old .ppu (package) files, build a clean Lazarus IDE and then build the IDE with some packages installed - the same set of packages you get when you install a snapshot or stable version.

At this point, you're better off reading the documentation on getting an SVN version as you are basically rebuilding Lazarus from scratch.

As I mentioned, I would give fpcup a go to see if it gets you to a working separate Lazarus install where you can install your packages again.
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: JuhaManninen on May 15, 2012, 09:04:38 am
ARYLIOA, I also recommend you follow BigChimp's advice.
I have not used fpcup myself because my tool-chain already works well, but I believe it is a good tool.
I feel you are still in a "write-only" mode. You do your own things and then write long storied about it, not paying attention to advice from other people.
Please switch to "read-write" mode.

Loading and building Lazarus from SVN server is rather easy once you have FPC installed, also without fpcup.
In any case you should switch to a new SVN version of Lazarus, either the development "trunk" branch or the 1.0 fixes branch.
  http://wiki.lazarus.freepascal.org/Lazarus_1.0_fixes_branch
Lazarus 1.0 will be released from it.
Unfortunately Lazarus releases happen seldom and 0.9.30.x is already old.
So, if you must struggle, at least struggle with a recent version.
New Lazarus code has improvements especially for building and installation. For example all packages, including LCL, are now "normal" packages and will be built automatically when needed. And many other improvements...

Regards,
Juha

P.S.
One thing about DOS / Windows:
Windows has not used DOS anymore since Windows98. The old Windows versions indeed were just GUIs built on top of DOS but more recent versions are based on Windows NT and have a much better design.
The command prompt looks like a DOS prompt but it does not use DOS. In some cases it makes a big difference.

Changing a system-wide PATH affects only programs started after the change. This is true in any OS.
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: ARYLIOA on May 15, 2012, 02:13:56 pm
.........I have not used fpcup myself because my tool-chain already works well, but I believe it is a good tool.
I feel you are still in a "write-only" mode. You do your own things and then write long storied about it, not paying attention to advice from other people.........

 

 I appreciate your interest, but feel your criticism is invalid.  I feel you are narrowly focused on each succeeding post and have lost sight of the real problem. I realize the original purpose of the thread is not the focus now, but that was a natural progression since the first was abandoned because of ensuing problems.  The only thing I have not tried which has been suggested until this morning is to use fpcup, and that is because I had a question pending on it.  Namely if I could edit the .ini file so the installation would reside on G: instead if C: which might add even more complications in this case.  I also plan to try his latest suggestion as soon as I finish this.

As to trying things on my own, sorry, that has been equally as effective as following any of the advice given here, at least until I try this morning's suggestion.  As to writing a lot, I keep hoping someone will follow the entire chain and have an "Eureka!" moment.  I have even admitted my errors and false starts when they have happened.  Do you know many folks who do that?

Also remember that the problem seems to be an installation problem, not a Lazarus/FPC problem.  The installs and the installed software has worked on three or the 4 systems.   Unless the installation mechanism is different for the SVC SVN, I suspect that would only result in another of my long progress reports......
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: BigChimp on May 15, 2012, 02:32:27 pm
Don't edit fpcup.ini. Run fpcup --help and read the readme please (see https://bitbucket.org/reiniero/fpcup (https://bitbucket.org/reiniero/fpcup))
HOWEVER, if you don't have a c:\development directory, I'd suggest just running fpcup with standard settings first.
If it doesn't work (or even if it doess), you can always zap these directories. Your corresponding settings will be stored somewhere in c:\users\<username>\...<localsomething>\lazarusdevsettings\

Make sure you run fpcup under an elevated command prompt under Win Vista+ if you do this otherwise you won't get write access to those directories.

You mentioned you tried everything (except fpcup).
Did you do this:
Quote
delete the Lazarus settings dir from c:\users...bla, you are also removing info on which compiler to use etc. If you then use the IDE to recompile anything it probably won't work as you found out.
Do a
make distclean
make all
make bigide
(experts will tell me some of these can be combined)
to clean up old .ppu (package) files, build a clean Lazarus IDE and then build the IDE with some packages installed - the same set of packages you get when you install a snapshot or stable version.
... what happened? Error messages?

As I also indicated earlier, you could delete the primary config path directory (c:\users\<username>\....\lazarus and try a reinstall) as cleanging the registry and removing the c:\lazarus directory in itself is not enough to remove all traces. Then do a reinstall.
Have you tried that? Could you add your packages and recompile?

As for Juha's point: I do agree with him. Please try to read up on how to rebuild Lazarus etc in the wiki. If things aren't clear there, then we'll need to update the wiki.

I agree with you that the thread chenged to a different target, but I suspect the one that needs to get the eureka moment is you... in the sense that you understand how building Lazarus works.
(It took a while for that concept to sink in with me and it's still a bit unclear now and then - which is why I started fpcup so I didn't need to remember all of it).
Yes, your posts are comprehensive and you admit your mistakes which surely more people should do...  however, I don't get always get specific feedback on what suggestions you tried and what the results were. So for me it's starting to get a bit repetitive in my suggestions...

Anyway, hope we can get it working sooner rather than later so you can chalk this up to experience ;)

Anyway, hoping to hear good news from you,

BigChimp
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: ARYLIOA on May 15, 2012, 02:36:44 pm
I'd like to repeat a previous suggestion: try fpcup.

I asked a question about how to edit the .ini file to put the install n G: instead of C:.  You may have missed it.  (See #18 {and #29, sorry})  Can that be done, and if so, how?  I.e. what changes need to be made?

Also, if you delete the Lazarus settings dir from c:\users...bla, you are also removing info on which compiler to use etc. If you then use the IDE to recompile anything it probably won't work as you found out.

Right.  I was out of ideas.  I looked at deleting the .ppu and the .o files but had a question about that since using a search so many were found that I started to wonder if you wanted only the ones in a given directory (e.g. maybe \Lazarus) or all.

Do a
make distclean
make all
make bigide
(experts will tell me some of these can be combined)

No joy on that.  The install was intact (but richmemopackage was flagged for install, should it have been after running all three of those makes?)  When I attemped a Build IDE with Pachages, I get the same error in the same part of process.  SQLDBLaz is the last success.  There is no indication of what is being attempted, just the persistent error.

to clean up old .ppu (package) files, build a clean Lazarus IDE and then build the IDE with some packages installed - the same set of packages you get when you install a snapshot or stable version.

All instances in all directories?  Then do the three makes listed above?

At this point, you're better off reading the documentation on getting an SVN version as you are basically rebuilding Lazarus from scratch.

As I mentioned, I would give fpcup a go to see if it gets you to a working separate Lazarus install where you can install your packages again.
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: BigChimp on May 15, 2012, 02:56:48 pm
Hi ARYLIOA,

Re fpcup.ini: don't edit it as it isn't used for setting these options. Please see the readme etc.


Also, if you delete the Lazarus settings dir from c:\users...bla, you are also removing info on which compiler to use etc. If you then use the IDE to recompile anything it probably won't work as you found out.

Right.  I was out of ideas.  I looked at deleting the .ppu and the .o files but had a question about that since using a search so many were found that I started to wonder if you wanted only the ones in a given directory (e.g. maybe \Lazarus) or all.
Deleting the settings is different from deleting ppu files. PPU files are compiled packages that get linked later on.
If somebody is talking about deleting ppu files he probably means deleting those in a certain install e.g. c:\lazarus\ and lower

Do a
make distclean
make all
make bigide
(experts will tell me some of these can be combined)

No joy on that.  The install was intact (but richmemopackage was flagged for install, should it have been after running all three of those makes?)  When I attemped a Build IDE with Pachages, I get the same error in the same part of process.  SQLDBLaz is the last success.  There is no indication of what is being attempted, just the persistent error.
After the make bigide, when starting Lazarus, unmark richmemo for install, then rebuild Lazarus to see if that works.
Then mark richmemo package for installation, rebuild.
There is a way to show hidden errors showing up in messages, but haven't used it and don't know. Perhaps it's documented somewhere.
Also, you can specify a log in your startlazarus (IIRC) command that should capture all problems, something like --debug-log=. Once again, have no experience with that myself.

to clean up old .ppu (package) files, build a clean Lazarus IDE and then build the IDE with some packages installed - the same set of packages you get when you install a snapshot or stable version.

All instances in all directories?  Then do the three makes listed above?
Huh? How many Lazarus installs do you have on that computer? I thought you had one that rested somewhere on the system drive which was G:
Perhaps you could confirm that...

Good luck...
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: ARYLIOA on May 15, 2012, 03:07:25 pm
Don't edit fpcup.ini. Run fpcup --help and read the readme please (see https://bitbucket.org/reiniero/fpcup (https://bitbucket.org/reiniero/fpcup))..................

Will do.  I am quite busy today but will do it ASAP.

You mentioned you tried everything (except fpcup).
Did you do this................ what happened? Error messages?

I indicated that was next as soon as I was done with that message.  You have probably already read the results of that.  Again, it did not seem to change anything.

As I also indicated earlier, you could delete the primary config path directory (c:\users\<username>\....\lazarus and try a reinstall) as cleanging the registry and removing the c:\lazarus directory in itself is not enough to remove all traces. Then do a reinstall.
Have you tried that? Could you add your packages and recompile?

Is that not what I did as reported in #19.  I thought what I did was what you suggested.  Was it not?  That was when I had only 5 or 6 packages in place after the installation.

As for Juha's point: I do agree with him. Please try to read up on how to rebuild Lazarus etc in the wiki. If things aren't clear there, then we'll need to update the wiki.

I did that and thought I had done everything correctly.  After all, the other three installations went just fine.  This one seems to be unique.

I agree with you that the thread chenged to a different target, but I suspect the one that needs to get the eureka moment is you... in the sense that you understand how building Lazarus works.
(It took a while for that concept to sink in with me and it's still a bit unclear now and then - which is why I started fpcup so I didn't need to remember all of it).

Yes, your posts are comprehensive and you admit your mistakes which surely more people should do...  however, I don't get always get specific feedback on what suggestions you tried and what the results were. So for me it's starting to get a bit repetitive in my suggestions...

Anyway, hope we can get it working sooner rather than later so you can chalk this up to experience ;)

Me, too.

Anyway, hoping to hear good news from you,

Me too. %)

BigChimp
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: ARYLIOA on May 15, 2012, 03:28:34 pm
Your next came in while I was answering the previous.

I think the big problem is probably related to the fact that I am using a dual-boot computer.  I have Vista and Windows 7 installed.  I sometimes wind up on those at random depending on what I am doing at any given time.  (E.g. due to Microsoft's planned obsolescence, my perfectly adequate version of Access will not run under Windows 7.)  That is why I would like to have Lazarus on both systems.  (And why I am interested in converting my thousands of lines of Delphi code to Lazarus since I consider Linux the next step in telling Microsoft I do not need them any longer.)

I have successfully installed, with no significant problems, on two computers running only XP and on the Vista side of the dual-boot computer.  All these problems are specific to trying to get an installation on the Windows 7 side.  Whether the dual-boot is the problem or something else, so far nothing that has been suggested (and I have tried all but the fpcup now and installing from the SVN) has worked.  And that is why I was concerned about using fpcup to put something on C:, the Vista systems partition, because the results might not be definitive.

I did start another thread specifically concerning dual-boot, but so far no one has indicated he has done that.  In theory, it should work.  But so should have the initial installation and all the suggestions to date.   Lacking an answer to that, I asked if anyone had installed on Windows 7.  No one has replied.
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: BigChimp on May 15, 2012, 03:50:03 pm
Ok. So
Vista: C:=system partition?
Windows 7: G:=system partition?

Just to confirm: in a standard install, fpcup will place the Lazarus settings (primary config path) on in localappdata folder (or whatever it's called).
Standard Windows non-dual-boot install would be on a C:-drive, giving this path (on Vista at least):
C:\Users\<username>\AppData\Local\lazarusdevsettings\ (http://C:\Users\<username>\AppData\Local\lazarusdevsettings\)
If your system drive is different, fpcup will however correctly place it wherever your local app data is stored.

This leaves the fpcbootstrap, binutils, lazarus and fpc dir.

Yes, you could then use something like (air code - untested!!!) - adjust as required:
Code: [Select]
mkdir g:\development
rem bootstrap and binutils dirs can be the same
fpcup --binutilsdir=g:\development\bootstrap --fpcbootstrapdir=g:\development\bootstrap --fpcdir=g:\development\fpc --lazdir=g:\development\lazarus
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: JuhaManninen on May 15, 2012, 08:01:11 pm
I did start another thread specifically concerning dual-boot, but so far no one has indicated he has done that.  In theory, it should work.  But so should have the initial installation and all the suggestions to date. 

I have done that, yes!
Just install Lazarus to all the systems you want to use. What is the problem?
Dual-booting makes no difference for the OS after it has been booted.
You can use your projects from a shared drive but install Lazarus to every OS you use. Simple, right?


Quote
Lacking an answer to that, I asked if anyone had installed on Windows 7.  No one has replied.

I have done that. It is easy.

Juha
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: ARYLIOA on May 17, 2012, 02:38:17 pm
I did start another thread specifically concerning dual-boot, but so far no one has indicated he has done that.  In theory, it should work.  But so should have the initial installation and all the suggestions to date. 

I have done that, yes!
Just install Lazarus to all the systems you want to use. What is the problem?
Dual-booting makes no difference for the OS after it has been booted.
You can use your projects from a shared drive but install Lazarus to every OS you use. Simple, right?

Quote
Lacking an answer to that, I asked if anyone had installed on Windows 7.  No one has replied.

I have done that. It is easy.

Juha


At least we know it will work on Windows 7, and I thank you for that, but:

It is not always easy or this thread would have ended at post #8.  It was easy on 2 computers running XP.  It was easy on the dual-boot computer on the Vista OS.  It has yet to work, in spite of all the things tried both on my own and in accordance with suggestions on here, on the Windows 7 side of the dual-boot computer.

I just tried fpcup, and it did not work as expected.  Next post has questions about that.
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: ARYLIOA on May 17, 2012, 03:09:29 pm
Ok. So
Vista: C:=system partition?
Windows 7: G:=system partition?

Yes.

Just to confirm: in a standard install, fpcup will place the Lazarus settings (primary config path) on in localappdata folder (or whatever it's called).
Standard Windows non-dual-boot install would be on a C:-drive, giving this path (on Vista at least):
C:\Users\<username>\AppData\Local\lazarusdevsettings\ (http://C:\Users\<username>\AppData\Local\lazarusdevsettings\)
If your system drive is different, fpcup will however correctly place it wherever your local app data is stored.

Confirming my steps:  the fpcup was run from the cmd line while running under the Windows 7 OS on G:.

The development directory was installed on C:

The fpcup icon was installed on the Windows 7 desktop

lazarusdevsettings was installed nowhere!

Any ideas what happened with it?

This leaves the fpcbootstrap, binutils, lazarus and fpc dir.

Yes, you could then use something like (air code - untested!!!) - adjust as required:
Code: [Select]
mkdir g:\development
rem bootstrap and binutils dirs can be the same
fpcup --binutilsdir=g:\development\bootstrap --fpcbootstrapdir=g:\development\bootstrap --fpcdir=g:\development\fpc --lazdir=g:\development\lazarus

I will try this but I am going to do a system restore before I do.  A full system restore of both OSs from backup full-disk images.
Title: Re: "Synchronizing" Lazarus installation across multiple computers/Windows versions
Post by: BigChimp on May 17, 2012, 04:59:18 pm
Quote
It has yet to work, in spite of all the things tried both on my own and in accordance with suggestions on here, on the Windows 7 side of the dual-boot computer.
If a removal of your settings dir, uninstall of Lazarus, reinstall of stable Lazarus setup leads to problems installing a package, you should really raise a bug report against the package (or Lazarus if it happens with multiple packages).
Because that just shouldn't happen.

Quote
Confirming my steps:  the fpcup was run from the cmd line
... assuming without any other arguments/parameters?

Please post fpcup.log that should have been generated; that also tells you where things should be installed.

Did fpcup output include any warnings/errors? Did it report success? Please post the screen output... or at least tell us what it said.

Quote
lazarusdevsettings was installed nowhere!

Any ideas what happened with it?
See earlier post on where it should end up. Somewhere on G, I suspect.
Once again: if this directory doesn't get created, fpcup should very probably have reported an error. Please post relevant info.

Quote
The development directory was installed on C:
And what was in that development directory? fpcbootstrap? lazarus? fpc? nothing?

BTW, why are you going to try and fiddle with
Quote
mkdir g:\development
rem bootstrap and binutils dirs can be the same
fpcup --binutilsdir=g:\development\bootstrap --fpcbootstrapdir=g:\development\bootstrap --fpcdir=g:\development\fpc --lazdir=g:\development\lazarus
when the first run didn't work as you expected? I'd suggest first finding out what's wrong there.
Doing another fpcup run with default settings after a full backup from image is fine - it lessens the chances of something else influencing things, but just willy-nilly trying something else without understanding its effects isn't going to help.

I've been trying to help for a lot of posts but if you keep changing things while we are still trying to guide you through troubleshooting the previous situation, it's a bit of a waste of time.
TinyPortal © 2005-2018