-
2010.05.02 02:51 "Re: [Tiff] qmake (Qt) and libtiff "undefined symbols" problem on mac (snow leopard).", by Chris Cox
- 2010.05.02 11:39 "Re: [Tiff] qmake (Qt) and libtiff "undefined symbols" problem on mac (snow leopard).", by Dave
- 2010.05.02 12:25 "Re: [Tiff] qmake (Qt) and libtiff "undefined symbols" problem on mac (snow leopard).", by Toby Thain
- 2010.05.02 21:48 "Re: [Tiff] qmake (Qt) and libtiff "undefined symbols" problem on mac (snow leopard).", by Dmitry Fedorov
2010.05.02 21:48 "Re: [Tiff] qmake (Qt) and libtiff "undefined symbols" problem on mac (snow leopard).", by Dmitry Fedorov
Hi Dave,
If you installed Qt from the binary package from the official website it comes in a 32 bit form as of a latest build. If you got a default libtiff for your mac it should be 64 bit and thus different architectures. The best idea there would be to rebuild qt for snow leopard and cocoa (will take you an hour). Another problem might arise if you did build Qt yourself as a universal binary, in this case you would need to supply libtiff as a universal binary as well.
Dmitry
On Sat, May 1, 2010 at 6:54 PM, Dave Sun <hotdog.sun@gmail.com> wrote:
Dear folks,
I have problems using qmake to compile my simplest libtiff program. Here are the information about my system.
> computer: Darwin Darwin Kernel Version 10.2.0: Tue Nov 3 10:37:10 PST
2009; root:xnu-1486.2.11~1/RELEASE_I386 i386 Qt version: Qt 4.6.2
libtiff version: 3.9.2
operating system: snow leopard.Simplest program:
#include <QtCore/QCoreApplication>
#include "tiff.h"
#include "tiffio.h"
#include <iostream>int main(int argc, char *argv[])
{
a(argc, argv); //QCoreApplication
tif = TIFFOpen("foo.tif", "r"); TIFF*
> if(tif == NULL)
> std::cout << "could not open the file";
> TIFFClose(tif);
> //return a.exec();
std::cout << "hello";
> return 0;
> }
> my pro file:
> QT -= gui
TARGET = libtiffSimpleTest
> CONFIG += console
> CONFIG -= app_bundle
TEMPLATE = app
LIBS += -ltiff
SOURCES += main.cppI used Qt creator as my IDE. When I run compiling program I got the following error:
ld: warning: in /usr/local/lib/libtiff.dylib, file is not of required architecture
Undefined symbols:
"_TIFFOpen", referenced from:
_main in main.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make: *** [libtiffSimpleTest] Error 1
However, when I just use the following:
g++ main.cpp -ltiff
It works well. What is the problem here?
--
__________________________________
Dmitry Fedorov Levit
<dima@dimin.net> <http://www.dimin.net/>
Skype: dima_fedorov
Google: fedorov
__________________________________
Center for Bio-Image Informatics:
<http://www.bioimage.ucsb.edu/>
Vision Research Lab, Electrical and Computer Engineering
Image Registration:
<http://vision.ece.ucsb.edu/>
<http://vision.ece.ucsb.edu/registration/demo/>
<http://regima.dpi.inpe.br/>
University of California, Santa Barbara
_________________________________
DIMIN Viewer n5:
<http://www.dimin.net/software/viewer/>
__________________________________