[QScintilla] Re: QScintilla Digest, Vol 19, Issue 12

Patrick Mabie pmabie at gmail.com
Fri Feb 29 13:24:16 GMT 2008


qscintilla-request at riverbankcomputing.com wrote:
> Send QScintilla mailing list submissions to
> 	qscintilla at riverbankcomputing.com
>
> To subscribe or unsubscribe via the World Wide Web, visit
> 	http://www.riverbankcomputing.com/mailman/listinfo/qscintilla
> or, via email, send a message with subject or body 'help' to
> 	qscintilla-request at riverbankcomputing.com
>
> You can reach the person managing the list at
> 	qscintilla-owner at riverbankcomputing.com
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of QScintilla digest..."
>
>
> Today's Topics:
>
>    1. RE: create external lexer (Joan Pablo Jimenez Milian)
>    2. Compiling New Release  (Patrick Mabie)
>    3. Re: Compiling New Release (Phil Thompson)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Thu, 28 Feb 2008 09:41:22 -0500
> From: "Joan Pablo Jimenez Milian" <jpjimenez at estudiantes.uci.cu>
> Subject: RE: [QScintilla] create external lexer
> To: "Phil Thompson" <phil at riverbankcomputing.com>,
> 	<qscintilla at riverbankcomputing.com>
> Message-ID: <2D55CFBA2384074EA35D74F2A71F445685718A at ucixs90.uci.cu>
> Content-Type: text/plain;	charset="iso-8859-1"
>
>
> Thanks anyway Phil, I will keep traying. 
>
> -----Original Message-----
> From: qscintilla-bounces at riverbankcomputing.com on behalf of Phil Thompson
> Sent: Thu 28/02/2008 3:53
> To: qscintilla at riverbankcomputing.com
> Subject: Re: [QScintilla] create external lexer
>  
> On Thursday 28 February 2008, Joan Pablo Jimenez Milian wrote:
>   
>> Hi, I'm new about QScintilla. I'm working in a simple IDE (to Linux) to
>> learn more about Qt and QScintilla and for personal and my friends use.
>>
>> I know how to write a new Lexer but I want to create an External Lexer and
>> load it as a Dynamic Library.
>>
>> I need some help about this, these are my problems :
>>
>> I have make the .so with the functions I need :
>>
>> void EXT_LEXER_DECL Lex(unsigned int lexer, unsigned int startPos, int
>> length, int initStyle, char *words[], WindowID window, char *props); int
>> EXT_LEXER_DECL GetLexerCount();
>> void EXT_LEXER_DECL GetLexerName(unsigned int Index, char *name, int
>> buflength); void EXT_LEXER_DECL Fold(unsigned int lexer, unsigned int
>> startPos, int length, int initStyle, char *words[], WindowID window, char
>> *props);
>>
>> 1-) But I don't know how to make a PropSet with props (I don't know what
>> are props). I just know that I need PropSet and WindowID to make a
>> WindowAccesor and use it as a Accesor style (or I'm wrong?).
>>
>> 2-) How can I load MyLexer.so from my QtApp (what code I should write).
>>
>> Please, any help. I will apreciate very much if somebody can explain me if
>> posible with some sample code.
>>     
>
> You are best asking on the Scintilla mailing list as these questions aren't 
> specific to QScintilla.
>
> However, I'm not sure that Scintilla can currently be used with external 
> lexers. Also QScintilla does not include WindowAccessor.
>
> Phil
> _______________________________________________
> QScintilla mailing list
> QScintilla at riverbankcomputing.com
> http://www.riverbankcomputing.com/mailman/listinfo/qscintilla
>
>
>
>
> ------------------------------
>
> Message: 2
> Date: Thu, 28 Feb 2008 11:57:25 -0500
> From: Patrick Mabie <pmabie at gmail.com>
> Subject: [QScintilla] Compiling New Release 
> To: qscintilla at riverbankcomputing.com
> Message-ID: <47C6E7F5.1000209 at gmail.com>
> Content-Type: text/plain; charset=ISO-8859-1; format=flowed
>
> Hello!
>
> Using
> Qt-Win-4.3.4 OpenSource
> Windows Vista Ult
> MSVC 9.0
>
> <D:\QScintilla\Qt4>
> <>nmake
>
> Microsoft (R) Program Maintenance Utility Version 9.00.21022.08
> Copyright (C) Microsoft Corporation.  All rights reserved.
>
>         "C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\nmake.exe" 
> -f Makefile.Release
>
> Microsoft (R) Program Maintenance Utility Version 9.00.21022.08
> Copyright (C) Microsoft Corporation.  All rights reserved.
>
>         link /LIBPATH:"d:\Qt-Win-4.3.4\lib" /NOLOGO /INCREMENTAL:NO /DLL 
> /MANIFESTFILE:"release\qscintilla2.intermediate.manifest" /OUT:rele
> ase\qscintilla2.dll @C:\Users\PJM\AppData\Local\Temp\nmB70B.tmp
> qsciscintillabase.obj : error LNK2005: "public: long __thiscall 
> QsciScintillaBase::SendScintilla(unsigned int,unsigned long,char const *)con
> st " (?SendScintilla at QsciScintillaBase@@QBEJIKPBD at Z) already defined in 
> qsciscintilla.obj
> qsciscintillabase.obj : error LNK2005: "public: long __thiscall 
> QsciScintillaBase::SendScintilla(unsigned int,char const *)const " (?SendSci
> ntilla at QsciScintillaBase@@QBEJIPBD at Z) already defined in qsciscintilla.obj
> qsciscintillabase.obj : error LNK2005: "public: long __thiscall 
> QsciScintillaBase::SendScintilla(unsigned int,char const *,char const *)cons
> t " (?SendScintilla at QsciScintillaBase@@QBEJIPBD0 at Z) already defined in 
> qsciscintilla.obj
> qsciscintillabase.obj : error LNK2005: "public: long __thiscall 
> QsciScintillaBase::SendScintilla(unsigned int,long)const " (?SendScintilla at Q
> sciScintillaBase@@QBEJIJ at Z) already defined in qsciscintilla.obj
> qsciscintillabase.obj : error LNK2005: "public: long __thiscall 
> QsciScintillaBase::SendScintilla(unsigned int,int)const " (?SendScintilla at Qs
> ciScintillaBase@@QBEJIH at Z) already defined in qsciscintilla.obj
> qsciscintillabase.obj : error LNK2005: "public: long __thiscall 
> QsciScintillaBase::SendScintilla(unsigned int,unsigned long,class QPixmap co
> nst &)const " (?SendScintilla at QsciScintillaBase@@QBEJIKABVQPixmap@@@Z) 
> already defined in qsciscintilla.obj
>    Creating library release\qscintilla2.lib and object 
> release\qscintilla2.exp
> release\qscintilla2.dll : fatal error LNK1169: one or more multiply 
> defined symbols found
> NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 
> 9.0\VC\BIN\link.EXE"' : return code '0x491'
> Stop.
> NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio 
> 9.0\VC\BIN\nmake.exe"' : return code '0x2'
> Stop.
>
> Any thoughts , I tried the linker option /FORCE:MULTIPLE it worked , but 
> it also said that it might not work right ,
> so I didn't use it. I have never had a problem  with any of your work, 
> so I thought I would let you know.
>
> Thanks for your time Phil.
> Patrick Mabie.
>
>
>
>
> ------------------------------
>
> Message: 3
> Date: Fri, 29 Feb 2008 05:10:36 +0000
> From: Phil Thompson <phil at riverbankcomputing.com>
> Subject: Re: [QScintilla] Compiling New Release
> To: qscintilla at riverbankcomputing.com
> Message-ID: <200802290510.36230.phil at riverbankcomputing.com>
> Content-Type: text/plain;  charset="iso-8859-1"
>
> On Thursday 28 February 2008, Patrick Mabie wrote:
>   
>> Hello!
>>
>> Using
>> Qt-Win-4.3.4 OpenSource
>> Windows Vista Ult
>> MSVC 9.0
>>
>> <D:\QScintilla\Qt4>
>> <>nmake
>>
>> Microsoft (R) Program Maintenance Utility Version 9.00.21022.08
>> Copyright (C) Microsoft Corporation.  All rights reserved.
>>
>>         "C:\Program Files\Microsoft Visual Studio 9.0\VC\BIN\nmake.exe"
>> -f Makefile.Release
>>
>> Microsoft (R) Program Maintenance Utility Version 9.00.21022.08
>> Copyright (C) Microsoft Corporation.  All rights reserved.
>>
>>         link /LIBPATH:"d:\Qt-Win-4.3.4\lib" /NOLOGO /INCREMENTAL:NO /DLL
>> /MANIFESTFILE:"release\qscintilla2.intermediate.manifest" /OUT:rele
>> ase\qscintilla2.dll @C:\Users\PJM\AppData\Local\Temp\nmB70B.tmp
>> qsciscintillabase.obj : error LNK2005: "public: long __thiscall
>> QsciScintillaBase::SendScintilla(unsigned int,unsigned long,char const
>> *)con st " (?SendScintilla at QsciScintillaBase@@QBEJIKPBD at Z) already defined
>> in qsciscintilla.obj
>> qsciscintillabase.obj : error LNK2005: "public: long __thiscall
>> QsciScintillaBase::SendScintilla(unsigned int,char const *)const "
>> (?SendSci ntilla at QsciScintillaBase@@QBEJIPBD at Z) already defined in
>> qsciscintilla.obj qsciscintillabase.obj : error LNK2005: "public: long
>> __thiscall
>> QsciScintillaBase::SendScintilla(unsigned int,char const *,char const
>> *)cons t " (?SendScintilla at QsciScintillaBase@@QBEJIPBD0 at Z) already defined
>> in qsciscintilla.obj
>> qsciscintillabase.obj : error LNK2005: "public: long __thiscall
>> QsciScintillaBase::SendScintilla(unsigned int,long)const "
>> (?SendScintilla at Q sciScintillaBase@@QBEJIJ at Z) already defined in
>> qsciscintilla.obj
>> qsciscintillabase.obj : error LNK2005: "public: long __thiscall
>> QsciScintillaBase::SendScintilla(unsigned int,int)const "
>> (?SendScintilla at Qs ciScintillaBase@@QBEJIH at Z) already defined in
>> qsciscintilla.obj
>> qsciscintillabase.obj : error LNK2005: "public: long __thiscall
>> QsciScintillaBase::SendScintilla(unsigned int,unsigned long,class QPixmap
>> co nst &)const " (?SendScintilla at QsciScintillaBase@@QBEJIKABVQPixmap@@@Z)
>> already defined in qsciscintilla.obj
>>    Creating library release\qscintilla2.lib and object
>> release\qscintilla2.exp
>> release\qscintilla2.dll : fatal error LNK1169: one or more multiply
>> defined symbols found
>> NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio
>> 9.0\VC\BIN\link.EXE"' : return code '0x491'
>> Stop.
>> NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio
>> 9.0\VC\BIN\nmake.exe"' : return code '0x2'
>> Stop.
>>
>> Any thoughts , I tried the linker option /FORCE:MULTIPLE it worked , but
>> it also said that it might not work right ,
>> so I didn't use it. I have never had a problem  with any of your work,
>> so I thought I would let you know.
>>     
>
> The problem is that the compiler is finding the installed QScintilla .h files 
> before the new ones.
>
> Until I fix the problem properly, delete the \path\to\Qt\include\QSci 
> directory before running nmake.
>
> Phil
>
>
> ------------------------------
>
> _______________________________________________
> QScintilla mailing list
> QScintilla at riverbankcomputing.com
> http://www.riverbankcomputing.com/mailman/listinfo/qscintilla
>
>
> End of QScintilla Digest, Vol 19, Issue 12
> ******************************************
>
>   
Thanks!
That did the trick.

Have a great day Phil!



More information about the QScintilla mailing list