Re: [fpc-devel] FPC 3.0.0rc2 and fppkg
Op 26-10-15 om 15:14 schreef Joost van der Sluis: Op 26-10-15 om 14:29 schreef Sven Barth: > The description is available, but not easy accessible in fppkg. We should add some sort of webpage with the available packages and more information on those. IMHO that should be made available with fppkg as well. Other package managers like apt-get, pacman, ports etc. do that as well. This way I don't need to consult a browser which might not even be available at that moment. Yes, you are right. All this information is available through the fppkg-package. There's a Lazarus-package that also shows this information in the IDE, I'm not sure if it is still operational, though. Trunk now supports 'fppkg info ' Joost. ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] FPC 3.0.0rc2 and fppkg
Am 05.11.2015 17:54 schrieb "Joost van der Sluis": > > Op 26-10-15 om 15:14 schreef Joost van der Sluis: > >> Op 26-10-15 om 14:29 schreef Sven Barth: >>> >>> >>> > The description is available, but not easy accessible in fppkg. We should add some sort of webpage with the available packages and more information on those. >>> >>> IMHO that should be made available with fppkg as well. Other package managers like apt-get, pacman, ports etc. do that as well. This way I don't need to consult a browser which might not even be available at that moment. >>> >> Yes, you are right. All this information is available through the fppkg-package. There's a Lazarus-package that also shows this information in the IDE, I'm not sure if it is still operational, though. > > > Trunk now supports 'fppkg info ' > Yay! ^^ Regards, Sven ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] FPC 3.0.0rc2 and fppkg
Okay, I'll check into more a bit later. As a package manager, where is the description of packages? How is anyone to know what webdesign is and what it does other than by just looking at the package name and perhaps trying to google it? The first google result for "fpc webdesign package" leads to a copy of a mailing list question asking what the package does. After a bit more googling it would seem that the OP is the author of the package. To be of any value IMO, a package manager it ought to provide brief of descriptions next to package names, otherwise people will have no idea what they are looking at. webdesign add new form designer to Lazarus which can be used to build websites Also packages ought to be organized in such that the user knows what they depend on or what is optional. webdesign depends on lnet, gecko, embweb; optional jquery I had to guess at the above and might be wrong. The only reason I picked those packages is because they are only one which show up when libs isn't configured they way fppkg expects. ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] FPC 3.0.0rc2 and fppkg
I got it working, somewhat. It would seem that you have to duplicate the entire FPC lib tree underneath {UserDir}.fppkg/ The instructions at the page referenced in my last post are very unclear about that. I suppose under normal fpc install this is needed because the lib files are typically only create as root under some folder other than your $HOME (done during install). This copy (assuming everything in fpc/lib is needed) results in an extra 900MB of files duplicated and eating up disk space (I use small SSDs on my laptop), However, since I always clone FPC and Lazarus from sources and build somewhere under my $HOME folder (normally $HOME/Development/Base or $HOME/Development/FreePascal), I was able to set LocalRepository and GlobalPrefix in ~/.config/fppkg.cfg to my FPC folder ( $HOME/Development/Base/fpc) and then fppkg worked, sort of. I found that almost all package were already "installed". I take installed to mean the package source were are already included with FPC and compile when I ran "make all" some time ago. Of the 6 package not installed, I could only compile half. The rest complained with results similar to the following: Target OS: Linux for x86-64 Compiling custembweb.pp PPU Loading /home/gigauser/Development/Base/fpc/lib/fpc/3.1.1/units/x86_64-linux/lnet/lnetssl.ppu PPU Source: lnetssl.pp not found Recompiling lNetSSL, checksum changed for openssl lnetssl.pp(43,57) Fatal: Can't find unit lNetSSL used by lhttp Fatal: Compilation aborted ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] FPC 3.0.0rc2 and fppkg
Anthony Walter wrote on Mon, 26 Oct 2015: I got it working, somewhat. It would seem that you have to duplicate the entire FPC lib tree underneath {UserDir}.fppkg/ That is not necessary. However, the request was to test with FPC 3.0.0rc2 and from your previous mail it seemed that you were testing with 3.1.1 instead. I'm not familiar with all of the details of fppkg, but it's quite possible that a) the official installer script sets up some global fppkg configuration (per version?) b) the server where the package listings are stored also stores information per version Jonas ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] FPC 3.0.0rc2 and fppkg
Op 26-10-15 om 09:19 schreef Anthony Walter: I got it working, somewhat. It would seem that you have to duplicate the entire FPC lib tree underneath {UserDir}.fppkg/ No, that should not be necessary. Fppkg uses two locations to install packages. One is {UserDir}.fppkg (the local version), but the other one should be the location where fpc is installed. That way there is no need to duplicate. Read the other mail for hints why it can not find your global configuration. The instructions at the page referenced in my last post are very unclear about that. I suppose under normal fpc install this is needed because the lib files are typically only create as root under some folder other than your $HOME (done during install). This copy (assuming everything in fpc/lib is needed) results in an extra 900MB of files duplicated and eating up disk space (I use small SSDs on my laptop), However, since I always clone FPC and Lazarus from sources and build somewhere under my $HOME folder (normally $HOME/Development/Base or $HOME/Development/FreePascal), I was able to set LocalRepository and GlobalPrefix in ~/.config/fppkg.cfg to my FPC folder ( $HOME/Development/Base/fpc) and then fppkg worked, sort of. This should have worked 'out-of-the-box', and it should work with fpc 3.0.0-rc2, but it could be that you hane to tweak fpc 3.1.1. I found that almost all package were already "installed". I take installed to mean the package source were are already included with FPC and compile when I ran "make all" some time ago. Of the 6 package not installed, I could only compile half. The rest complained with results similar to the following: Target OS: Linux for x86-64 Compiling custembweb.pp PPU Loading /home/gigauser/Development/Base/fpc/lib/fpc/3.1.1/units/x86_64-linux/lnet/lnetssl.ppu PPU Source: lnetssl.pp not found Recompiling lNetSSL, checksum changed for openssl lnetssl.pp(43,57) Fatal: Can't find unit lNetSSL used by lhttp Fatal: Compilation aborted Each compiler-version has it's own repository. I did test all packages in the 3.0.0 repository. I'll update the 3.1.1 packages later. Joost. ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] FPC 3.0.0rc2 and fppkg
Op 26-10-15 om 12:25 schreef Anthony Walter: Okay, I'll check into more a bit later. As a package manager, where is the description of packages? How is anyone to know what webdesign is and what it does other than by just looking at the package name and perhaps trying to google it? The description is available, but not easy accessible in fppkg. We should add some sort of webpage with the available packages and more information on those. The first google result for "fpc webdesign package" leads to a copy of a mailing list question asking what the package does. After a bit more googling it would seem that the OP is the author of the package. To be of any value IMO, a package manager it ought to provide brief of descriptions next to package names, otherwise people will have no idea what they are looking at. Those are packages that we are using at my work. I had to guess at the above and might be wrong. The only reason I picked those packages is because they are only one which show up when libs isn't configured they way fppkg expects. I had to start with *some* packages. I think that only lnet is of a real value, maybe I should remove the others. We should work on a decent list of packages. Maybe add 'libmicrohttpd', 'googleapi' and the new IPC-package... Joost. ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] FPC 3.0.0rc2 and fppkg
Op 26-10-15 om 14:29 schreef Sven Barth: > The description is available, but not easy accessible in fppkg. We should add some sort of webpage with the available packages and more information on those. IMHO that should be made available with fppkg as well. Other package managers like apt-get, pacman, ports etc. do that as well. This way I don't need to consult a browser which might not even be available at that moment. Yes, you are right. All this information is available through the fppkg-package. There's a Lazarus-package that also shows this information in the IDE, I'm not sure if it is still operational, though. Joost. ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] FPC 3.0.0rc2 and fppkg
Op 26-10-15 om 08:43 schreef Anthony Walter: *Nothing works for me.* You are using fpc 3.1.1. The repository for fpc 3.1.1 only contains the 'extra' packages, like embweb, gecko etc. This is because all the other packages can constantly change... *Following the instructions at http://wiki.freepascal.org/fppkg* * * *When I do fppkg list I see:* $ fppkg list -l Name Installed (G) Installed (L) Available embweb - - 0.9.1-968 gecko- - 2.9.0-3 jquery - - 0.9.0-842 lazmkunit- - 0.9.3-1 lnet - - 0.6.6-2606 webdesign- - 0.9.0-906 But it should list all the installed packages, although they are not available for download. *When I try to install I get this:* $ fppkg install embweb The FPC Package tool encountered the following error: [embweb] Package fcl-web is not available Because it can not find the installed packages. (In this case fcl-web) *When I try with fcl-base I get this:* $ fppkg install fcl-base The FPC Package tool encountered the following error: Package "fcl-base" not found. Normal for fpc 3.1.1 *What's the issue? A valid fpc is in the path as well as a valid fpc.cfg.* * * *Output of fppkg listsettings:* Using global configuration from file "/home/gigauser/.config/fppkg.cfg": RemoteMirrorsURL: http://www.freepascal.org/repository/mirrors.xml RemoteRepository: auto LocalRepository: "{UserDir}.fppkg/" -> "/home/gigauser/.fppkg/" BuildDir: "{LocalRepository}build/" -> "/home/gigauser/.fppkg/build/" ArchivesDir: "{LocalRepository}archives/" -> "/home/gigauser/.fppkg/archives/" CompilerConfigDir: "{LocalRepository}config/" -> "/home/gigauser/.fppkg/config/" DefaultCompilerConfig: "default" FPMakeCompilerConfig: "default" Downloader:lnet Using compiler configuration file "/home/gigauser/.fppkg/config/default": Compiler: "/home/gigauser/Development/Base/fpc/bin/fpc" Target: x86_64-linux Version: 3.1.1 GlobalPrefix: "/home/gigauser/Development/Base/fpc/bin" -> "/home/gigauser/Development/Base/fpc/bin/" LocalPrefix: "{LocalRepository}" -> "/home/gigauser/.fppkg/" GlobalInstallDir: "{GlobalPrefix}lib/fpc/{CompilerVersion}/" -> "/home/gigauser/Development/Base/fpc/bin/lib/fpc/3.1.1/" This setting should point to the location where the packages are installed. And it looks right. Do you have a directory called 'fpmkinst' here: /home/gigauser/Development/Base/fpc/bin/lib/fpc/3.1.1/fpmkinst/x86_64 And does this directory contain a lot of .fpm files? It should... Joost. ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] FPC 3.0.0rc2 and fppkg
Am 26.10.2015 13:17 schrieb "Joost van der Sluis": > > Op 26-10-15 om 12:25 schreef Anthony Walter: > >> Okay, I'll check into more a bit later. >> >> As a package manager, where is the description of packages? How is anyone to know what webdesign is and what it does other than by just looking at the package name and perhaps trying to google it? > > > The description is available, but not easy accessible in fppkg. We should add some sort of webpage with the available packages and more information on those. IMHO that should be made available with fppkg as well. Other package managers like apt-get, pacman, ports etc. do that as well. This way I don't need to consult a browser which might not even be available at that moment. Regards, Sven ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
[fpc-devel] FPC 3.0.0rc2 and fppkg
Hi all, One of the new (or rather improved) features of fpc 3.0.0 is the Free Pascal packages repository, or shortly fppkg. Basically this is an online repository in which you can find several Free Pascal libraries that you can use in your projects. It would be nice if some people can test if it works correctly. It should be configured correctly when you used one of the official 3.0.0-rc2 releases. First test would be to run 'fppkg list -l'. It should list the name of all available packages. All packages that come by default with fpc should be marked as installed. If this does not work, there is probably a flaw in the configuration. Or you are on Windows, in which case you should read the note below this mail. To troubleshoot the configuration, use 'fppkg listsettings'. Second test is to install a package, for example fcl-base, by running 'fppkg install fcl-base'. This should download the fcl-base package, compile it, install it, and thereafter recompile all packages that have a dependency on fcl-base. In case the code of these packages is not available it should also download those. This test might look useless, as fcl-base is already installed, but try 'fppkg list -l' after the installation. You will see that the fcl-base package is not installed into the default location (G, short for global) but in another location (L, short for local). The local-repository is user-specific and useful if you want to test a change in a package, or want to have the package compiled with different compiler settings. So the next test is to install fcl-base with debug-information. You do this with 'fppkg install fcl-base -o -gl'. This will install fcl-base compiled with debug information and re-compile all depending packages. (With the same compiler-settings they were compiled with earlier - so normally without debug-information) Now fcl-base is installed into the local repository with debug information, you can create an application using the contnrs unit, and see if you can step into it inside the debugger. If not, the Free Pascal compiler might not be configured correctly, so that is does not add the local repository to it's search path. Instead of adding debug-information to a package, you could also try to add some new functionality to an unit in a package and install it without getting into troubles with packages that depend on the changed package, as they are automatically re-compiled. Last, and real, test is to install a package that is not available in fpc by default. Like lnet. Please test and send your findings here. Regards, Joost Note for Windows users: It seems that there is a bug in the inno-installer of 3.0.0rc2, with as result that fppkg can not find the packages that are installed by the official installer. This should not be a big problem, as fppkg will download all the packages that it needs and install those. So in the case of fcl-base, it will also download and install all packages that fcl-base itself depends on. There is one other issue, though, and that is that fppkg needs the fpmkunit-package to compile packages. There is a fallback-mode to work without fpmkunit, but this might not work in all cases due to another bug in 3.0.0rc2. You can work-around this bug by installing the fpmkunit package before you try to install any other package. ('fppkg install fpmkunit') ___ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel