flat assembler
Message board for the users of flat assembler.
Index
> Main > /DEFAULTLIB Goto page 1, 2 Next |
Author |
|
decard 15 May 2004, 17:26
no. To use any library in COFF format you have to use some external linker, like GoLink or ALink.
|
|||
15 May 2004, 17:26 |
|
Tomasz Grysztar 15 May 2004, 17:48
This could be done by making the '.drectve' section in COFF object, but fasm currently doesnt' have any setting that would allow you to set IMAGE_SCN_LNK_INFO flag for such section, which is needed for it to be recognized by linker. If you suggest any good name for such flag setting (something like the already used "executable" or "discardable" flags), it can be implemented quickly.
When I was developing the first COFF-able version of fasm (it was 1.39, if I recall correctly) I was trying it with some temporarily chosen flag name and I was successful - all parameters passed inside the '.drectve' section were used by linker and section was not included in executable. |
|||
15 May 2004, 17:48 |
|
f0dder 15 May 2004, 23:04
what about calling it simply 'linkinfo'? or perhaps 'linkparms'?
|
|||
15 May 2004, 23:04 |
|
ShortCoder 16 May 2004, 09:09
What about linklib or even inslib or libinsert?
|
|||
16 May 2004, 09:09 |
|
f0dder 16 May 2004, 14:41
you can use the linker comment for more than just inserting libraries, though - like specifying /FILEALIGN or whatever.
|
|||
16 May 2004, 14:41 |
|
uri 17 May 2004, 17:36
Privalov
If you suggest any good name for such flag setting virtual Because this section not include for executable module. ? |
|||
17 May 2004, 17:36 |
|
pelaillo 17 May 2004, 18:39
Better '.virtual' ?
|
|||
17 May 2004, 18:39 |
|
uri 20 May 2004, 17:19
2 Privalov
If you suggest any good name for such flag setting (something like the already used "executable" or "discardable" flags), it can be implemented quickly. Please, this feature is very important. Because when you have more than 70 different lib's it's very hard ot write all in command line for link instead write only 'include filex.inc'... |
|||
20 May 2004, 17:19 |
|
vid 20 May 2004, 18:15
uri is right. Don't forget about DOS command line size limitation.
|
|||
20 May 2004, 18:15 |
|
uri 07 Jun 2004, 15:43
2 Privalov: and what you think about this thread?
|
|||
07 Jun 2004, 15:43 |
|
uri 04 Sep 2004, 13:15
Heh. For all, who want to use options for ms link (like /DEFAULTLIB) from asm code (with format MS COFF):
First: we must patch fasm sources. We must open FORMATS.INC and add to formatter_symbols (at the end of file) table this lines: Code: db 7,'drectve',19h,9 db 6,'hidden',19h,11 Attension: you must preserve alphabetically order in this table !!! You must get like this: Code: db 11,'discardable',19h,25 db 3,'dll',1Bh,80h db 7,'drectve',19h,9 db 3,'elf',18h,5 db 10,'executable',19h,29 db 6,'export',1Ah,0 db 6,'fixups',1Ah,5 db 3,'gui',1Bh,2 db 6,'hidden',19h,11 db 6,'import',1Ah,1 db 2,'ms',18h,41h Ok, now we must go to VERSION.INC and change version number to 1.55b (or other version, if you wish). And now we must recompile fasm: fasm fasm.asm fasm.exe (or fasmw.asm if you want to use fasmw). Thats all. To have new abilities we must write in our asm code lines like this: Code: section '.drectve' drectve hidden db '-defaultlib:kernel32.lib -defaultlib:user32.lib -defaultlib:gdi32.lib ' and when you will link this file (obj file, what will get from this asm) ms link will add to command line text from .drectve section. One moment. We add new option hidden. This option say to link do not add section to executable and you can use this sections to add comments (or copyrights) to you obj file, like this: Code: section 'comment' hidden db 'This file was created by Uri. All rights reserved...',0 section '.text' code readable executable You will have this text in obj, but do not have in exe (or dll, or ...). Thank you Privalov. Fasm the best !!! |
|||
04 Sep 2004, 13:15 |
|
FloHimself 07 Oct 2005, 19:41
will this feature become part of fasm someday?
_________________ Talent does what it can, genius what it must. I do what I get paid to do. |
|||
07 Oct 2005, 19:41 |
|
Tomasz Grysztar 13 Oct 2005, 17:25
I prefer the "linkinfo" name for the IMAGE_SCN_LNK_INFO flag. Still haven't decided for the IMAGE_SCN_LNK_REMOVE, but "hidden" seems to be a good choice.
|
|||
13 Oct 2005, 17:25 |
|
Tomasz Grysztar 13 Oct 2005, 19:46
The "linkinfo" and "hidden" are added as a "hidden" updated to the 1.64
|
|||
13 Oct 2005, 19:46 |
|
decard 13 Oct 2005, 21:27
Seems that you wish to keep version number 1.64 as long as it is possible
|
|||
13 Oct 2005, 21:27 |
|
Tomasz Grysztar 13 Oct 2005, 22:18
The 1.65.x development line is supposed to focus on the different things in my plans and I don't want to start it prematurely.
|
|||
13 Oct 2005, 22:18 |
|
vid 14 Oct 2005, 07:12
decard: it's a good version number
|
|||
14 Oct 2005, 07:12 |
|
Madis731 18 Oct 2005, 08:16
Off-topic: Version 1 means it is mature and 64 is the ability to compile a 64-bit binary file.
|
|||
18 Oct 2005, 08:16 |
|
revolution 18 Oct 2005, 09:15
Quote: ability to compile a 64-bit binary file. |
|||
18 Oct 2005, 09:15 |
|
Goto page 1, 2 Next < Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.