On Mon, Mar 7, 2011 at 3:31 AM, David Lichteblau <span dir="ltr"><<a href="mailto:david@lichteblau.com">david@lichteblau.com</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div class="im">Quoting Elliott Slaughter (<a href="mailto:elliottslaughter@gmail.com">elliottslaughter@gmail.com</a>):<br>
</div><div class="im">> g++ -headerpad_max_install_names -single_module -dynamiclib<br>
> -compatibility_version 1.0 -current_version 1.0.0 -install_name<br>
> libcommonqt.1.dylib<br>
> -o libcommonqt.1.0.0.dylib commonqt.o  -F/Library/Frameworks<br>
> -L/Library/Frameworks -lsmokeqtcore -framework QtGui<br>
> -L/tmp/qt-stuff-6474/source/qt-everywhere-opensource-src-4.7.0/lib<br>
> -F/tmp/qt-stuff-6474/source/qt-everywhere-opensource-src-4.7.0/lib<br>
> -framework QtCore<br>
<br>
</div>Hmm, I don't see any -I or -L flags pointing to smoke there.<br>
<br>
Perhaps that's normal (if smoke is installed in a default location that<br>
works without special flags, like /usr/local), and it must have found<br>
the header, but given that it fails to link afterwards, that's what I'd<br>
try to investigate first.<br>
<br>
For example, if you built smokeqt with<br>
  cmake CMakeLists.txt -DCMAKE_INSTALL_PREFIX=/opt/smoke<br>
  make install<br>
<br>
then CommonQt needs to be configured using:<br>
  qmake LIBS=-L/opt/smoke/lib/ INCLUDEPATH=/opt/smoke/include/<br></blockquote></div><div><br></div><div>Ok, my smoke was installed to ${HOME}/Programming/Lisp/new_kde_build/install, so I would have expected the following to work. I'm still getting the same error, although the -I and -L arguments do appear in the commands. See anything wrong with the following?</div>
<div><br></div><div>Thanks.</div><meta charset="utf-8"><div><br></div><div>$ qmake LIBS=-L${HOME}/Programming/Lisp/new_kde_build/install/lib INCLUDEPATH=${HOME}/Programming/Lisp/new_kde_build/install/include -spec macx-g++</div>
<div>$ make clean</div><div>rm -f commonqt.o</div><div>rm -f *~ core *.core</div><div>$ make</div><div>g++ -c -pipe -g -gdwarf-2 -Wall -W -fPIC -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/local/Qt4.7/mkspecs/macx-g++ -I. -I/Library/Frameworks/QtCore.framework/Versions/4/Headers -I/usr/include/QtCore -I/Library/Frameworks/QtGui.framework/Versions/4/Headers -I/usr/include/QtGui -I/usr/include -I/Users/elliott/Programming/Lisp/new_kde_build/install/include -I. -F/Library/Frameworks -o commonqt.o commonqt.cpp</div>
<div>rm -f libcommonqt.1.0.0.dylib libcommonqt.dylib libcommonqt.1.dylib libcommonqt.1.0.dylib</div><div>g++ -headerpad_max_install_names -single_module -dynamiclib -compatibility_version<span class="Apple-tab-span" style="white-space:pre">    </span>1.0 -current_version<span class="Apple-tab-span" style="white-space:pre">        </span>1.0.0 -install_name<span class="Apple-tab-span" style="white-space:pre"> </span>libcommonqt.1.dylib -o libcommonqt.1.0.0.dylib commonqt.o  -F/Library/Frameworks -L/Library/Frameworks -L/Users/elliott/Programming/Lisp/new_kde_build/install/lib -lsmokeqtcore -framework QtGui -L/tmp/qt-stuff-6474/source/qt-everywhere-opensource-src-4.7.0/lib -F/tmp/qt-stuff-6474/source/qt-everywhere-opensource-src-4.7.0/lib -framework QtCore  </div>
<div>ld: warning: directory '/tmp/qt-stuff-6474/source/qt-everywhere-opensource-src-4.7.0/lib' following -L not found</div><div>ld: warning: directory '/tmp/qt-stuff-6474/source/qt-everywhere-opensource-src-4.7.0/lib' following -F not found</div>
<div>Undefined symbols:</div><div>  "Smoke::classMap", referenced from:</div><div>      Smoke::findClass(char const*)in commonqt.o</div><div>      Smoke::findClass(char const*)in commonqt.o</div><div>  "Smoke::NullModuleIndex", referenced from:</div>
<div>      Smoke::idMethod(short, short)in commonqt.o</div><div>      Smoke::idClass(char const*, bool)in commonqt.o</div><div>      Smoke::idClass(char const*, bool)in commonqt.o</div><div>      Smoke::idMethodName(char const*)in commonqt.o</div>
<div>      Smoke::findClass(char const*)in commonqt.o</div><div>ld: symbol(s) not found</div><div>collect2: ld returned 1 exit status</div><div>make: *** [libcommonqt.1.0.0.dylib] Error 1</div><div><br></div><meta charset="utf-8"><div>
<div>Just to show that the libs are really there:</div><div><br class="Apple-interchange-newline">$ ls ${HOME}/Programming/Lisp/new_kde_build/install/lib</div><div>libclsmokeqtcore.0.0.1.dylib<span class="Apple-tab-span" style="white-space: pre; ">                </span>libsmokeqtnetwork.dylib</div>
<div>libclsmokeqtcore.0.0.dylib<span class="Apple-tab-span" style="white-space: pre; ">         </span>libsmokeqtopengl.3.0.0.dylib</div><div>libclsmokeqtcore.dylib<span class="Apple-tab-span" style="white-space: pre; ">                        </span>libsmokeqtopengl.3.dylib</div>
<div>libcppparser.dylib<span class="Apple-tab-span" style="white-space: pre; ">                 </span>libsmokeqtopengl.dylib</div></div><div>....</div><div><br></div><div>P.S. Do you know what /tmp/qt-stuff-6474 is? I have no idea what that would be, I definitely didn't install Qt to that location.</div>
<meta charset="utf-8"><br>-- <br>Elliott Slaughter<br><br>"Don't worry about what anybody else is going to do. The best way to predict the future is to invent it." - Alan Kay<br>