TailBite specific forum
Moderators: gnozal , ABBKlaus , lexvictory
lexvictory
Addict
Posts: 1027 Joined: Sun May 15, 2005 5:15 am
Location: Australia
Contact:
Post
by lexvictory » Tue Jan 27, 2009 8:18 am
I've never used this option before, but is this line correct? (because it seems very odd)
Code: Select all
"" /MACHINE:X64 /out:"taglib.lib" @"taglibObjFiles.txt"
I'm presuming I need to make it point to polib?
full batch:
Code: Select all
@echo OFF
"C:\Program Files\PureBasic4.30\Compilers\FAsm.exe" "Functions\TaglibGetTags.asm" "Functions\TaglibGetTags.obj"
"C:\Program Files\PureBasic4.30\Compilers\FAsm.exe" "Functions\taglib_Init.asm" "Functions\taglib_Init.obj"
"C:\Program Files\PureBasic4.30\Compilers\FAsm.exe" "Functions\taglibShared.asm" "Functions\taglibShared.obj"
"C:\Program Files\PureBasic4.30\Compilers\FAsm.exe" "Functions\Shared\taglib_End.asm" "Functions\Shared\taglib_End.obj"
"" /MACHINE:X64 /out:"taglib.lib" @"taglibObjFiles.txt"
Del "Functions\*.obj"
Del "Functions\Shared\*.obj"
"C:\Program Files\PureBasic4.30\SDK\LibraryMaker.exe" "taglib.Desc" /TO "C:\Program Files\PureBasic4.30\PureLibraries\UserLibraries\" /NOUNICODEWARNING
REM Del "taglib.lib"
ECHO Done
Demonio Ardente
Currently managing Linux & OS X Tailbite
OS X TailBite now up to date with Windows!
ABBKlaus
Addict
Posts: 1143 Joined: Sat Apr 10, 2004 1:20 pm
Location: Germany
Post
by ABBKlaus » Tue Jan 27, 2009 8:54 am
yes polib.exe is missing. Do you have a complete logfile ?
(Must be somewhere in the temp dir)
lexvictory
Addict
Posts: 1027 Joined: Sun May 15, 2005 5:15 am
Location: Australia
Contact:
Post
by lexvictory » Tue Jan 27, 2009 9:02 am
I believe you mean this?
Parameter() :C:\Documents and Settings\lex.XANDER\My Documents\pb\taglib stuff\taglib.pb
Parameter() :/DONTMAKELIB
Parameter() :/KEEPSRCFILES
Parameter() :/WRITEBATCH
Parameter() :/THRD
Parameter() :/SUBS:SubSystems\UserLibThreadSafe\PureLibraries\UserLibraries\
Parameter() :/HWND:3737236
GetPBFolder()
Detected OS : Windows XP/Server 2003
HKCU\Software\Classes\PureBasic.exe\shell\open\command="C:\Program Files\PureBasic4.30\PureBasic.exe" "%1" /P "C:\Documents and Settings\lex.XANDER\Application Data\PureBasic\PureBasic.prefs" /T "C:\Documents and Settings\lex.XANDER\Application Data\PureBasic\Templates.prefs" /A "C:\Documents and Settings\lex.XANDER\Application Data\PureBasic\Tools.prefs"
OSVersion()=65
C:\Program Files\PureBasic4.30\TailBite\TailBite.exe
PureBasic Version found : 4.30 C 2008 FANTAISIE SOFTWARE / 430 /X64
Mode=0
GetPBFolder()=C:\Program Files\PureBasic4.30\
TBPreferencesPath$=C:\Documents and Settings\lex.XANDER\Application Data\TailBite\
TBPrefsFile$=C:\Documents and Settings\lex.XANDER\Application Data\TailBite\TailBite_430X64.prefs
PBCompilerFolder$=C:\Program Files\PureBasic4.30\Compilers\
PrefsFound=1
PBFolder$=C:\Program Files\PureBasic4.30\
TBFolder$=C:\Program Files\PureBasic4.30\TailBite\
LibSourceFolder$=C:\Documents and Settings\lex.XANDER\My Documents\TailBite Library Sources\
LastFile$=H:\Documents\droopy svn\working copy\Droopy.pb
ManagerOnTop=0
PBSubsystem$=PureLibraries\UserLibraries\
Language$=English
PBPreferencesPath$=C:\Documents and Settings\lex.XANDER\Application Data\Purebasic\
TBTempPath$=C:\Documents and Settings\lex.XANDER\Local Settings\Temp\TBTemp\
pb_align$=pb_align
pb_bssalign$=pb_bssalign
LibraryMakerOptions$= /NOUNICODEWARNING
IsPB410=1
LibraryMaker$=C:\Program Files\PureBasic4.30\SDK\LibraryMaker.exe
TailBite Version found : 1.3 PR 1.879
Inc_Taibite > MainProc()
LibName$=taglib
recover=0
Opening PB 4.30 C 2008 FANTAISIE SOFTWARE asm source...
PBCompile(C:\Documents and Settings\lex.XANDER\My Documents\pb\taglib stuff\taglib.pb,, /COMMENTED /DEBUGGER)
ExecuteProgram("C:\Program Files\PureBasic4.30\Compilers\PBCompiler.exe","C:\Documents and Settings\lex.XANDER\My Documents\pb\taglib stuff\taglib.pb" /COMMENTED /DEBUGGER /THREAD /SUBSYSTEM "UserLibThreadSafe",)
RunProgram("C:\Program Files\PureBasic4.30\Compilers\PBCompiler.exe","C:\Documents and Settings\lex.XANDER\My Documents\pb\taglib stuff\taglib.pb" /COMMENTED /DEBUGGER /THREAD /SUBSYSTEM "UserLibThreadSafe",)
Creating function list...
Inc_Taibite > CreateFunctionList()
- Function index 0
function()\ID=0
function()\RetValue$=None
function()\Name$=TaglibGetTags
function()\PlainName$=TaglibGetTags
function()\Args$=, Long
function()\nArgs=1
function()\Main=1
function()\maxArgs=1
function()\HelpLine$=(*entry.TagV2)
function()\DLLFunction=1
function()\FIndex=22
function()\Modifiers$=
function()\DebugFunction=0
function()\nModifiers=0
function()\VarArgs$=
function()\VarArgStr$=
function()\VarHelpStr$=
- Function index 1
function()\ID=1
function()\RetValue$=InitFunction
function()\Name$=taglib_Init
function()\PlainName$=taglib_Init
function()\Args$=
function()\nArgs=0
function()\Main=1
function()\maxArgs=0
function()\HelpLine$=
function()\DLLFunction=1
function()\FIndex=-1
function()\Modifiers$=
function()\DebugFunction=0
function()\nModifiers=0
function()\VarArgs$=
function()\VarArgStr$=
function()\VarHelpStr$=
HelpName$(Choosehelp)=taglib.chm
HelpName$=taglib.chm
Splitting functions...
Inc_Taibite > SplitFunctions()
System function found : KERNEL32
Import function found (will be ignored) : C:\Documents and Settings\lex.XANDER\My Documents\downloads\taglib-1.5-win32-src\taglibx64.lib
WriteBatch
CreateFile "C:\Documents and Settings\lex.XANDER\Local Settings\Temp\TBTemp\224DA95E\taglibBuild.bat" successfull
===============C:\Documents and Settings\lex.XANDER\Local Settings\Temp\TBTemp\224DA95E\taglib.Desc===============
ASM
;
1
KERNEL32
;
LIB
;
6
String
Memory
FileSystem
Date
Object
SimpleList
;
taglib.chm
;
TaglibGetTags, Long (*entry.TagV2)
None | StdCall
;
taglib_Init
InitFunction | StdCall
;
==================================================================================================================
KeepSrcFiles
CopyDirectory "C:\Documents and Settings\lex.XANDER\Local Settings\Temp\TBTemp\224DA95E\" "C:\Documents and Settings\lex.XANDER\My Documents\TailBite Library Sources\taglib\" successfull
I should probably have mentioned this is on XP x64 (yet again)
Demonio Ardente
Currently managing Linux & OS X Tailbite
OS X TailBite now up to date with Windows!
ABBKlaus
Addict
Posts: 1143 Joined: Sat Apr 10, 2004 1:20 pm
Location: Germany
Post
by ABBKlaus » Tue Jan 27, 2009 9:11 am
its a bug. And its related to this :
Parameter() :/DONTMAKELIB
Code: Select all
If DontMakeLib=0
If FileSize(PBCompilerFolder$+"polib.exe")=-1
TBError(Language("TailBite","SorryNeedPolib"),0,"",#False)
End
Else
Libexe$ = PBCompilerFolder$+"polib.exe"
LibexeBaseName$ = "polib"
WriteLog("Libexe$="+Libexe$)
WriteLog("LibexeBaseName$="+LibexeBaseName$)
EndIf
EndIf
lexvictory
Addict
Posts: 1027 Joined: Sun May 15, 2005 5:15 am
Location: Australia
Contact:
Post
by lexvictory » Tue Jan 27, 2009 9:29 am
ok.
Btw, with regards to:
Import function found (will be ignored) :
Is there some way to make PB link it into a program that uses the userlib commands without doing an empty ImportC?
Demonio Ardente
Currently managing Linux & OS X Tailbite
OS X TailBite now up to date with Windows!
lexvictory
Addict
Posts: 1027 Joined: Sun May 15, 2005 5:15 am
Location: Australia
Contact:
Post
by lexvictory » Tue Jan 27, 2009 10:05 am
lexvictory wrote: Is there some way to make PB link it into a program that uses the userlib commands without doing an empty ImportC?
Never mind, I figured it out; add it to <libname>ObjFiles.txt
Does Tailbite do this automatically when called without the flag that makes it not build the lib?
Demonio Ardente
Currently managing Linux & OS X Tailbite
OS X TailBite now up to date with Windows!
ABBKlaus
Addict
Posts: 1143 Joined: Sat Apr 10, 2004 1:20 pm
Location: Germany
Post
by ABBKlaus » Tue Jan 27, 2009 12:19 pm
lexvictory wrote: Does Tailbite do this automatically when called without the flag that makes it not build the lib?
It should, if not its a bug.
But to test this i need some sources (including the taglib).
lexvictory
Addict
Posts: 1027 Joined: Sun May 15, 2005 5:15 am
Location: Australia
Contact:
Post
by lexvictory » Tue Jan 27, 2009 12:48 pm
Good, I did do some exploring of the sources after posing that question and thought I discovered that.
But it
doesn't do it if I use the /DONT flag. (Gee, I wonder why with a flag like that
)
I had to add it to the taglibObjFiles.txt in this particular case.
I'm playing with making a userlib with Ascii/Unicode/UnicodeThreadsafe/ThreadSafe modes all in one - I succeeded with doing it manually with only one exported function - so now comes the fun
I just chose to use Taglib as my test
Though I feel like kicking my computer since the wireless card's driver likes to freeze EVERYTHING networking based in this hot weather
Though I don't even know for sure if the wireless is at fault
Demonio Ardente
Currently managing Linux & OS X Tailbite
OS X TailBite now up to date with Windows!
ABBKlaus
Addict
Posts: 1143 Joined: Sat Apr 10, 2004 1:20 pm
Location: Germany
Post
by ABBKlaus » Tue Jan 27, 2009 9:32 pm
i found the bug, it was inside
If DontMakeLib=0 ... EndIf block.
Uploaded a new build to test :
http://www.tailbite.com/downloads/TailB ... R1.880.zip
[42] JAN 27th 2009 TailBite V1.3 PR 1.880
- fixed polib.exe not found if 'Don´t build library. only source files' was checked (found by lexvictory)
- fixed import libs where not written to objfiles.txt if 'Don´t build library. only source files' was checked (found by lexvictory)
lexvictory
Addict
Posts: 1027 Joined: Sun May 15, 2005 5:15 am
Location: Australia
Contact:
Post
by lexvictory » Wed Jan 28, 2009 2:55 am
Confirmed fixed.
A request: in Inc_Tailbite.pb, after
Code: Select all
WriteLog(ReplaceString(Language("TailBite","OpeningPB"),"%version%",PBVersion$))
FileOps$ = " /COMMENTED"
FileOps$ + " /DEBUGGER"
(Line 2015 in my 1.879 source - not sure if I've edited anything above this line)
Can the following be added to stop pbcompiler running the exe after commented asm output?
Code: Select all
FileOps$ + " /EXE "+#DQUOTE$+TBTempPath$+"PureBasic.exe"+#DQUOTE$
It not only stops it from running (annoying me in this project with a 'windows cannot find blah.dll') but it also makes the PureBasic.exe that is created get deleted by the DeleteFile at ~2050 (With keep source files purebasic.exe remains in Tailbite Library Sources\<libname>)
Demonio Ardente
Currently managing Linux & OS X Tailbite
OS X TailBite now up to date with Windows!
ABBKlaus
Addict
Posts: 1143 Joined: Sat Apr 10, 2004 1:20 pm
Location: Germany
Post
by ABBKlaus » Thu Jan 29, 2009 10:31 pm
Thanks, the change is added.