[Clam-devel] osx/darwinports scons adds quotes ("") to LINKFLAGS. g++ doesn't like it

Pau Arumi parumi at iua.upf.edu
Sat Dec 30 03:19:29 PST 2006


after sending the howto i realized that forgot to mention scons (and 
python). we used the version from its web, installed via .dmg or 
package, don't remember.  of course, it would be a lot nicer if they 
were available also as darwinports, so i took a look and they where. and 
a very recent versions: python 2.5 and scons 0.96.92 (more recent than 
the ones i manually installed).

so i installed darwinports (sudo port install scons. so easy!) and 
modified the PATH so it didn't use the previous version.

* clam compiles and install ok
* but it chokes when linking against qt4, because it adds flags inside 
quotes. to be specific:

this is the command that works. using non-darwinport scons (v0.96.1.D001)

g++ -o Annotator -F/usr/local/Trolltech/Qt-4.2.2//lib 
-L/usr/local/Trolltech/Qt-4.2.2//lib -framework QtCore -framework QtGui 
-framework QtOpenGL -F/System/Library/Frameworks -framework AGL 
-framework OpenGL -dynamic -bind_at_load src/SchemaBrowser.o

this is the command produced by darwinport scons (v0.96.92.D002)

g++ -o Annotator -F/usr/local/Trolltech/Qt-4.2.2//lib 
-L/usr/local/Trolltech/Qt-4.2.2//lib "-framework QtCore" "-framework 
QtGui" "-framework QtOpenGL" -F/System/Library/Frameworks "-framework 
AGL" "-framework OpenGL" -dynamic -bind_at_load src/SchemaBrowser.o

and the error is the same as everything in "..." wasn't there.

now i guess these -framework options comes from yesterday changes in qt4 
sconstool:

in CLAM/scons/sconstools/qt4.py :
             for module in modules :
                       
self.AppendUnique(CPPPATH=[os.path.join("$QTDIR","include")])
                       
self.AppendUnique(CPPPATH=[os.path.join("$QTDIR","include",module)])
                       if module in pclessModules :
                               
self.AppendUnique(LIBS=[module+debugSuffix]) # TODO: Add the debug suffix
                               
self.AppendUnique(LIBPATH=[os.path.join("$QTDIR","lib")])
                       else :
                               self.AppendUnique(LINKFLAGS="-framework 
"+module)
               if 'QtOpenGL' in modules:
                       
self.AppendUnique(LINKFLAGS="-F/System/Library/Frameworks")
                       self.AppendUnique(LINKFLAGS='-framework AGL')
                       self.AppendUnique(LINKFLAGS='-framework OpenGL')
               return

but i don't see anything strange here so i guess it's a scons problem. 
btw, note that -F/System/Library/Frameworks gets free of quotes, but why?
any idea david? you are the sconstools expert...

 pau

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.





More information about the clam-devel mailing list