[fpc-pascal] linking error while cross compiling win64 - Linux64
Hi I have a linking error with the following compile command : è d:\pp\bin\x86_64-win64\fpc lib\snip\snip.dpr -Tlinux -n -va -Mdelphi -FuD:\pp\bin\x86_64-win64/../../units/$FPCTARGET/ In the above line, I removed lots of includes. The error is (founded in the below log) è D:\dev\devtools\MinGW\mingw\bin\ld.exe: unrecognised emulation mode: elf_x86_64 [1.367] Searching file D:\dev\devtools\MinGW\mingw\bin\ld.exe... found [1.371] Using util D:\dev\devtools\MinGW\mingw\bin\ld.exe D:\dev\devtools\MinGW\mingw\bin\ld.exe: unrecognised emulation mode: elf_x86_64 Supported emulations: i386pe [1.523] Error while linking [1.523] There were 1 errors compiling module, stopping [1.523] Compilation aborted Error: d:\pp\bin\x86_64-win64\ppcx64.exe returned an error exitcode (normal if you did not specify a source file to be compiled) Maybe I don't use the right ld.exe file ? I'm running fpc 2.4.0 regards Julien ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
[fpc-pascal] compiling 2.4.2 under 7-64
Hi i'm trying to compile fpc 2.4.2 under windows 7 64 bits. It raises the following error : make[5]: entrant dans le répertoire « C:/FPC/2.4.2/fpc-2.4.2/rtl/win32 » c:/gnuwin32/bin/gmkdir.exe -p C:/FPC/2.4.2/fpc-2.4.2/rtl/units/i386-win32 d:/pp_/bin/i386-win32/ppc386.exe -Ur -Xs -O2 -n -Fi../inc -Fi../i386 -Fi../win -FE. -FUC:/FPC/2.4.2/fpc-2.4.2/rtl/units/i386-win32 -di386 -dRELEASE - s -Sg system.pp -Fi../win system.pp(1011) Error: Can't create archive file: C:\FPC\2.4.2\fpc-2.4.2\rtl\units\i386-win32\libimpsystem.a Instead of making the C:/FPC/2.4.2/fpc-2.4.2/rtl/units/i386-win32, gmkdir creates a directory named : C:\FPC\2.4.2\fpc-2.4.2\rtl\win32\FPC\2.4.2\fpc-2.4.2\rtl\units\i386-win32 Should I consider that this is a bug of gmkdir ? I get this file with getGnuWin32. regards Julien ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] compiling 2.4.2 under 7-64
In our previous episode, Julien Devillers said: Should I consider that this is a bug of gmkdir ? I get this file with getGnuWin32. Use the binutils that come with FPC, not the ones from mingw. mingw's coreutils package has afaik moved in a different direction since it moved from mingw to msys. That also goes for the linker problem: ftp://ftp.freepascal.org/pub/fpc/contrib/cross/mingw/win64/ is where the win64 binutils are kept. ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
[fpc-pascal] Permuted index (KWIC) of function descriptions
As a comparative beginner, I still find myself stumbling across RTL functions that I've previously hand-coded. Is there an easy way of generating a complete permuted index from the one-line descriptions of the functions in the RTL (and optionally FCL and LCL)? For example, can I rapidly get all function descriptions with space as part of the description, which could subsequently be filtered (e.g. if I were interested in text operations I could quickly ignore anything with file in the description)? Copy2Space Returns first space character Copy2SpaceDel Deletes first space character DelSpace Delete a space from DelSpace1 Reduces of space characters DelSpace1 Reduces 1 space character IntToBin Converts inserting spaces at IsEmptyStr Check disregaring whitespace characters That's somewhat abbreviated so that it's not screwed too badly by wrap. -- Mark Morgan Lloyd markMLl .AT. telemetry.co .DOT. uk [Opinions above are the author's, not those of his employers or colleagues] ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Permuted index (KWIC) of function descriptions
On Wed, 26 Jan 2011, Mark Morgan Lloyd wrote: As a comparative beginner, I still find myself stumbling across RTL functions that I've previously hand-coded. Is there an easy way of generating a complete permuted index from the one-line descriptions of the functions in the RTL (and optionally FCL and LCL)? Shortly said: no. For example, can I rapidly get all function descriptions with space as part of the description, which could subsequently be filtered (e.g. if I were interested in text operations I could quickly ignore anything with file in the description)? Copy2Space Returns first space character Copy2SpaceDel Deletes first space character DelSpace Delete a space from DelSpace1 Reduces of space characters DelSpace1 Reduces 1 space character IntToBin Converts inserting spaces at IsEmptyStr Check disregaring whitespace characters That's somewhat abbreviated so that it's not screwed too badly by wrap. Creating such an index requires additional keywords, which are simply not present now. That said, I am still looking for a good search engine *written in Object pascal* for the FPC html docs. Any hints/tips are appreciated. Michael. ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Permuted index (KWIC) of function descriptions
In our previous episode, michael.vancann...@wisa.be said: IntToBin Converts inserting spaces at IsEmptyStr Check disregaring whitespace characters That's somewhat abbreviated so that it's not screwed too badly by wrap. Creating such an index requires additional keywords, which are simply not present now. Categorization of routines (string,file etc) would be a good place to start. I have thought about this before (for chm), but while the CHM format supports this (building e.g. a list of string routines over multiple independantly compiled CHMs), the Windows viewer's support for this is too basic, and the *nix viewers are even worse. It seems to be functionality intended for MSDN that never was finished because of the move to later formats. That said, I am still looking for a good search engine *written in Object pascal* for the FPC html docs. Any hints/tips are appreciated. CHM has a basic phrase indexer, and it operates on the html. The search part is maybe part of the viewer, and one would have to see how complex it is. (Iow if the complexity is in index or search, if the search is relative simple one could look at kchmviewer) ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
[fpc-pascal] Re: AnsiString (Luis Fernando Del Aguila Mej?a)
Thanks for the tip, David. My intention is to learn or acquire knowledge. True the function Length is easier to use, but it's always good to know the internals of the compiler. You never know when something may go wrong. Thanks - Original Message - From: fpc-pascal-requ...@lists.freepascal.org To: fpc-pascal@lists.freepascal.org Sent: Wednesday, January 26, 2011 6:00 AM Subject: fpc-pascal Digest, Vol 79, Issue 46 Send fpc-pascal mailing list submissions to fpc-pascal@lists.freepascal.org To subscribe or unsubscribe via the World Wide Web, visit http://lists.freepascal.org/mailman/listinfo/fpc-pascal or, via email, send a message with subject or body 'help' to fpc-pascal-requ...@lists.freepascal.org You can reach the person managing the list at fpc-pascal-ow...@lists.freepascal.org When replying, please edit your Subject line so it is more specific than Re: Contents of fpc-pascal digest... Today's Topics: 1. AnsiString (Luis Fernando Del Aguila Mej?a) 2. Re: AnsiString (David Emerson) 3. Re: AnsiString (J?rgen Hestermann) 4. linking error while cross compiling win64 - Linux64 (Julien Devillers) 5. compiling 2.4.2 under 7-64 (Julien Devillers) 6. Re: compiling 2.4.2 under 7-64 (Marco van de Voort) -- Message: 1 Date: Tue, 25 Jan 2011 10:13:13 -0500 From: Luis Fernando Del Aguila Mej?a luis3...@ec-red.com Subject: [fpc-pascal] AnsiString To: fpc-pascal@lists.freepascal.org Message-ID: E888C20F4BCF4E559E6F809EC8D9C194@IntelQuad Content-Type: text/plain; format=flowed; charset=utf-8; reply-type=original The documentation (http://www.freepascal.org/docs-html/prog/progsu146.html#x189-1990008.2.7) says: -8 Longint current string with size. -4 Longint with reference count. But, when I want access to that structure, I have to do it backwards. -8 Longint with reference count. -4 Longint current string with size. {$codepage UTF8} Var cad1:AnsiString; aux1:AnsiString; p:pointer; Begin SetLength(cad1,8); p:=pointer(cad1); Writeln('memory address : ',longint(p)); p:=p-4; Write('memory address : ',longint(p),'='); //Must show reference count, but shows size Writeln(longint(p^)); aux1:=cad1; p:=pointer(cad1); p:=p-8; Write('memory address : ',longint(p),'='); //Must show Size, but shows reference count Writeln(longint(p^)); End. Do these positions are different, depending on microprocessor being used ? Thanks -- Message: 2 Date: Tue, 25 Jan 2011 11:23:36 -0800 From: David Emerson dle...@angelbase.com Subject: Re: [fpc-pascal] AnsiString To: FPC-Pascal users discussions fpc-pascal@lists.freepascal.org Message-ID: 201101251123.36365.dle...@angelbase.com Content-Type: text/plain; charset=utf-8 Luis Fernando Del Aguila Mejía wrote: The documentation (http://www.freepascal.org/docs-html/prog/progsu146.html#x189-1990008.2.7) says: -8 Longint current string with size. -4 Longint with reference count. But, when I want access to that structure, I have to do it backwards. -8 Longint with reference count. -4 Longint current string with size. Do these positions are different, depending on microprocessor being used ? I'm fairly certain that is an error in the documentation, and that it SHOULD always be as you discovered it to actually be. As an aside, a tip for doing pointer arithmetic... var s : ansistring; p : ptruint; p := pointer(s); dec(p); // equivalent to p:=p-4 because p is a typed pointer. Using typed pointers in this way will likely make it easier to adapt your code to a 64-bit conversion in the future. Also note that, in this case, dec(p,2) would do p:=p-8, as (hopefully) expected I use these types of constructs frequently, and it makes it much easier to change types, if that is ever necessary, or adapt constructs to new types. Cheers, David -- Message: 3 Date: Wed, 26 Jan 2011 07:50:01 +0100 From: J?rgen Hestermann juergen.hesterm...@gmx.de Subject: Re: [fpc-pascal] AnsiString To: FPC-Pascal users discussions fpc-pascal@lists.freepascal.org Message-ID: 4d3fc419.7070...@gmx.de Content-Type: text/plain; charset=UTF-8; format=flowed Luis Fernando Del Aguila Mejía schrieb: p:=pointer(cad1); p:=p-8; Write('memory address : ',longint(p),'='); //Must show Size, but shows reference count Writeln(longint(p^)); I fail to see why you need to mess with the internals of ansistrings at all. What is the reason to access size and reference count this way? At least for the size there is Length(cad1) which would be much clearer. Although pointer arithmetic is possible in Pascal it looks like C. And you loose any help from the compiler to check types. -- Message: 4 Date: Tue, 25 Jan 2011 17:19:42 +0100 From: Julien Devillers julien.devill...@opti-time.com Subject: [fpc-pascal] linking error while cross compiling win64 - Linux64 To:
Re: [fpc-pascal] Permuted index (KWIC) of function descriptions
Marco van de Voort wrote: In our previous episode, michael.vancann...@wisa.be said: IntToBin Converts inserting spaces at IsEmptyStr Check disregaring whitespace characters That's somewhat abbreviated so that it's not screwed too badly by wrap. Creating such an index requires additional keywords, which are simply not present now. Categorization of routines (string,file etc) would be a good place to start. I have thought about this before (for chm), but while the CHM format supports this (building e.g. a list of string routines over multiple independantly compiled CHMs), the Windows viewer's support for this is too basic, and the *nix viewers are even worse. It seems to be functionality intended for MSDN that never was finished because of the move to later formats. That said, I am still looking for a good search engine *written in Object pascal* for the FPC html docs. Any hints/tips are appreciated. CHM has a basic phrase indexer, and it operates on the html. The search part is maybe part of the viewer, and one would have to see how complex it is. (Iow if the complexity is in index or search, if the search is relative simple one could look at kchmviewer) I used something called Perlfect Search for a while- which might fulfil Michael's criterion if Lazarus could handle Perl plugins :-) As shipped though I think it was oriented towards word (rather than phrase) indexing, and it had a limit of 64K files. http://www.perlmonks.org/index.pl?node_id=27509 -- Mark Morgan Lloyd markMLl .AT. telemetry.co .DOT. uk [Opinions above are the author's, not those of his employers or colleagues] ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Permuted index (KWIC) of function descriptions
On Wed, 26 Jan 2011, Marco van de Voort wrote: In our previous episode, michael.vancann...@wisa.be said: IntToBin Converts inserting spaces at IsEmptyStr Check disregaring whitespace characters That's somewhat abbreviated so that it's not screwed too badly by wrap. Creating such an index requires additional keywords, which are simply not present now. Categorization of routines (string,file etc) would be a good place to start. I have thought about this before (for chm), but while the CHM format supports this (building e.g. a list of string routines over multiple independantly compiled CHMs), the Windows viewer's support for this is too basic, and the *nix viewers are even worse. It seems to be functionality intended for MSDN that never was finished because of the move to later formats. That said, I am still looking for a good search engine *written in Object pascal* for the FPC html docs. Any hints/tips are appreciated. CHM has a basic phrase indexer, and it operates on the html. The search part is maybe part of the viewer, and one would have to see how complex it is. (Iow if the complexity is in index or search, if the search is relative simple one could look at kchmviewer) Secretly, I am still waiting for Michael Hess to open source his IDKSM indexer. It was/is exactly what we need... Maybe the Lazarus devels can exert some mild pressure :-) Michael. ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Permuted index (KWIC) of function descriptions
On Wed, 26 Jan 2011, Mark Morgan Lloyd wrote: Marco van de Voort wrote: In our previous episode, michael.vancann...@wisa.be said: IntToBin Converts inserting spaces at IsEmptyStr Check disregaring whitespace characters That's somewhat abbreviated so that it's not screwed too badly by wrap. Creating such an index requires additional keywords, which are simply not present now. Categorization of routines (string,file etc) would be a good place to start. I have thought about this before (for chm), but while the CHM format supports this (building e.g. a list of string routines over multiple independantly compiled CHMs), the Windows viewer's support for this is too basic, and the *nix viewers are even worse. It seems to be functionality intended for MSDN that never was finished because of the move to later formats. That said, I am still looking for a good search engine *written in Object pascal* for the FPC html docs. Any hints/tips are appreciated. CHM has a basic phrase indexer, and it operates on the html. The search part is maybe part of the viewer, and one would have to see how complex it is. (Iow if the complexity is in index or search, if the search is relative simple one could look at kchmviewer) I used something called Perlfect Search for a while- which might fulfil Michael's criterion if Lazarus could handle Perl plugins :-) The criterion is: *written* in object pascal. Not 'callable from Object pascal' :-) And I will rather spend an eternity in hell than use a perl tool... ;) Michael. ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Permuted index (KWIC) of function descriptions
In our previous episode, Mark Morgan Lloyd said: simple one could look at kchmviewer) I used something called Perlfect Search for a while- which might fulfil Michael's criterion if Lazarus could handle Perl plugins :-) Pascal, and pascal only. We might make exceptions for extremely common C libraries on Unix but that is it. If we were lenient with that, you now had to install Perl, Python, Ruby, PHP, Java, .NET and LUA as well as cygwin just to be able run FPC/Lazarus on Windows. Programming is about programming, not about smartshopping. (unless you can find somebody crazy enough to foot the bill for integration and support) As shipped though I think it was oriented towards word (rather than phrase) indexing, and it had a limit of 64K files. http://www.perlmonks.org/index.pl?node_id=27509 There should me more than enough decent C libs to port. No need to go to extremes like Perl. ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Permuted index (KWIC) of function descriptions
In our previous episode, michael.vancann...@wisa.be said: I used something called Perlfect Search for a while- which might fulfil Michael's criterion if Lazarus could handle Perl plugins :-) The criterion is: *written* in object pascal. Not 'callable from Object pascal' :-) And I will rather spend an eternity in hell than use a perl tool... ;) I still wakeup screaming in the night sometimes because of the last one. The little 1.5MB script that converted Latex to html. :-) ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Re: AnsiString (Luis Fernando Del Aguila Mej?a)
On 26 Jan 2011, at 15:00, Luis Fernando Del Aguila Mejía wrote: Thanks for the tip, David. My intention is to learn or acquire knowledge. True the function Length is easier to use, but it's always good to know the internals of the compiler. You never know when something may go wrong. The problem is that many people who learn the internals of a compiler also start to depend on these internals. And that is a very good recipe to write code that will go wrong at some point. Jonas___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Permuted index (KWIC) of function descriptions
On Wed, 26 Jan 2011, Marco van de Voort wrote: In our previous episode, michael.vancann...@wisa.be said: I'm sure that somebody familiar with XML (which I'm afraid doesn't include me) could knock out something half-way decent in a few minutes. Or is the problem actually XML in this case, i.e. it's obvious that we want to extract the short description but that leaves an uncertain context? The short description is not a problem. But the Returns Deletes Reduces etc ? IMHO that is overkill. It only works comprehensively for a handful routines. Well, a set of tags (not in XML sense, but in keyword sense) for each routine would be sufficient. This can be added easily, but the main problem is updating the many thousands of existing identifiers. Categorizing routines, with subcategs if need be will be trouble enough, specially if you want to do it future proof (and also be able to flag the static method approach that Delphi current favours) OK, that was totally chinese. I'll have to ask my chinese pillow to translate this. Michael. ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
[fpc-pascal] Re: AnsiString (Luis Fernando Del Aguila Mej?a) (Jonas Maebe)
My intention is not to write code that will go wrong at some point. My intention is to understand the inner workings of the compiler, apparently did not explain me well. Let me explain: If I use a function that should always return 5, and for unknown reasons returns 8. I wonder because it failed and so help with a solution. Anyway, if you do not understand me, I will need repeat my studies of English, or no longer use google translator. :) Do not worry I understand, what I say. Thanks. ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Permuted index (KWIC) of function descriptions
In our previous episode, michael.vancann...@wisa.be said: Categorizing routines, with subcategs if need be will be trouble enough, specially if you want to do it future proof (and also be able to flag the static method approach that Delphi current favours) OK, that was totally chinese. I'll have to ask my chinese pillow to translate this. I mean procedures and functions is not enough. It must be possible to add static methods to this categorization system too (to be visible in the same overviews as normal functions), because newer delphi versions stuff all new routines as static methods into classes, and sooner or later we will have to deal with that too. With subcateg(ory)s I meant that simply one dimensional tagging might not be enough. You might want to have a broad category with several smaller ones nested in it. I hope you and your chinese pillow will be allright :-) ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Permuted index (KWIC) of function descriptions
Marco van de Voort wrote: In our previous episode, michael.vancann...@wisa.be said: Categorizing routines, with subcategs if need be will be trouble enough, specially if you want to do it future proof (and also be able to flag the static method approach that Delphi current favours) OK, that was totally chinese. I'll have to ask my chinese pillow to translate this. I mean procedures and functions is not enough. It must be possible to add static methods to this categorization system too (to be visible in the same overviews as normal functions), because newer delphi versions stuff all new routines as static methods into classes, and sooner or later we will have to deal with that too. With subcateg(ory)s I meant that simply one dimensional tagging might not be enough. You might want to have a broad category with several smaller ones nested in it. The problems with tagging etc. are that (a) somebody's got to do the work retroactively and (b) there's a temptation to fit things into existing categories (should Soundex support go into sorting, hashing, or its own category?). As a user with limited experience, I'd settle for something that generated a simple KWIC list, even if I had to manually exclude some possibilities. -- Mark Morgan Lloyd markMLl .AT. telemetry.co .DOT. uk [Opinions above are the author's, not those of his employers or colleagues] ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Re: AnsiString (Luis Fernando Del Aguila Mej?a) (Jonas Maebe)
Luis Fernando Del Aguila Mejía schrieb: My intention is to understand the inner workings of the compiler I agree with you that such knowledge is imponderably useful. Any help information should explain this in detail. Then you can predict much easier what happens in the background and decide what kind of data types have what advantages/drawbacks. But if higher level functions (like Length) exist that can be used without any performance penalty (and even if it makes the program a *little* bit slower) it is wise to use them. Any changes that are done under the hood later will not harm your program. ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Permuted index (KWIC) of function descriptions
On 01/26/11 07:41, Marco van de Voort wrote: CHM has a basic phrase indexer, and it operates on the html. The search part is maybe part of the viewer, and one would have to see how complex it is. (Iow if the complexity is in index or search, if the search is relative simple one could look at kchmviewer) As far as I remember the chm search only indexes whole words. So searching for space would not return LotsOfSpace I'm not sure if it would find SpaceFoo since it starts with space. Does changing the indexer to extract words from capitalized words make sense? i.e. DoSomethingCool becomes do, something, cool ? Regards, Andrew Haines ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] Permuted index (KWIC) of function descriptions
On Wed, Jan 26, 2011 at 3:06 PM, michael.vancann...@wisa.be wrote: For example, can I rapidly get all function descriptions with space as part of the description, which could subsequently be filtered (e.g. if I were interested in text operations I could quickly ignore anything with file in the description)? ... That's somewhat abbreviated so that it's not screwed too badly by wrap. Creating such an index requires additional keywords, which are simply not present now. That said, I am still looking for a good search engine *written in Object pascal* for the FPC html docs. Any hints/tips are appreciated. Michael, are the docs hand-prepared or automatically generated from some db/xml? If the former, can it be safely assumed that the url http://www.freepascal.org/docs-html/rtl/{unitname}/{functionname}.htmlhttp://www.freepascal.org/docs-html/rtl/%7Bunitname%7D/%7Bfunctionname%7D.html is standardized? if the latter, is it possible to download this data from somewhere for experimenting? Thanks Max Vlasov ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal