[Ipe-discuss] Ipe 7 and Mac OS 10.6
Gwenaël Cléon
gwenael.cleon at gmail.com
Wed Nov 11 17:41:15 CET 2009
Hello, and thanks for your advises.
I followed your instructions (except I compiled everything manually),
I still have these error
I really don't understand what the problem is, what is not recognized.
Hope you could help me on this.
Thanks,
Gwenaël Cleon
(...)
Compiling image.cpp...
g++ -Wall -g -O2 -fPIC -I../../include -I/Library/Frameworks/
QtCore.framework/Versions/4/Headers -I/Library/Frameworks/
QtGui.framework/Versions/4/Headers -c -o ../../../build/obj/ipelets/
image.o image.cpp
mkdir -p ../../../build/ipelets
g++ -dynamiclib -o ../../../build/ipelets/image.so ../../../build/
obj/ipelets/image.o -L../../../build/lib -lipe -F/Library/Frameworks -
L/Library/Frameworks -framework QtCore -framework ApplicationServices -
framework QtGui -framework AppKit -framework Cocoa -lz -lm
Undefined symbols:
"ipe::Page::append(ipe::TSelect, int, ipe::Object*)", referenced
from:
ImageIpelet::insertBitmap(QString) in image.o
ImageIpelet::insertJpeg(QString) in image.o
"ipe::Cascade::findLayout() const", referenced from:
ImageIpelet::computeRect() in image.o
"ipe::Bitmap::Bitmap(ipe::Bitmap const&)", referenced from:
ImageIpelet::insertBitmap(QString) in image.o
ImageIpelet::insertJpeg(QString) in image.o
"ipe::Buffer::Buffer(ipe::Buffer const&)", referenced from:
ImageIpelet::insertBitmap(QString) in image.o
"ipe::Bitmap::~Bitmap()", referenced from:
ImageIpelet::insertBitmap(QString) in image.o
ImageIpelet::insertBitmap(QString) in image.o
ImageIpelet::insertBitmap(QString) in image.o
ImageIpelet::insertBitmap(QString) in image.o
ImageIpelet::insertJpeg(QString) in image.o
ImageIpelet::insertJpeg(QString) in image.o
ImageIpelet::insertJpeg(QString) in image.o
ImageIpelet::insertJpeg(QString) in image.o
"ipe::Buffer::~Buffer()", referenced from:
ImageIpelet::insertBitmap(QString) in image.o
ImageIpelet::insertBitmap(QString) in image.o
ImageIpelet::insertBitmap(QString) in image.o
ImageIpelet::insertBitmap(QString) in image.o
ImageIpelet::insertJpeg(QString) in image.o
ImageIpelet::insertJpeg(QString) in image.o
"ipe::Vector::ZERO", referenced from:
ImageIpelet::computeRect() in image.o
"ipe::Bitmap::Bitmap(int, int, ipe::Bitmap::TColorSpace, int,
ipe::Buffer, ipe::Bitmap::TFilter, bool)", referenced from:
ImageIpelet::insertBitmap(QString) in image.o
ImageIpelet::insertJpeg(QString) in image.o
"ipe::Buffer::Buffer(int)", referenced from:
ImageIpelet::insertBitmap(QString) in image.o
"ipe::Buffer::Buffer(char const*, int)", referenced from:
ImageIpelet::insertJpeg(QString) in image.o
"ipe::Image::Image(ipe::Rect const&, ipe::Bitmap)", referenced from:
ImageIpelet::insertBitmap(QString) in image.o
ImageIpelet::insertJpeg(QString) in image.o
"ipe::Rect::Rect(ipe::Vector const&, ipe::Vector const&)",
referenced from:
ImageIpelet::computeRect() in image.o
ImageIpelet::computeRect() in image.o
"ipe::Ipelet::~Ipelet()", referenced from:
ImageIpelet::~ImageIpelet()in image.o
ImageIpelet::~ImageIpelet()in image.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make[1]: *** [../../../build/ipelets/image.so] Error 1
make: *** [ipelets/image] Error 2
Le 11 nov. 2009 à 15:41, Marc Scherfenberg a écrit :
> Hi,
>
> It seems there are some modifications necessary in order to get Ipe
> 7 compiled on the current Mac OS 10.6.
> So maybe there are some people interested in how it worked for me.
>
> Needed libraries:
> - QT: I installed QT 4.6 cocoa binaries (these are 64 bit only, so
> everything needs to be compiled in 64 bit, QT does currently not
> compile under MacPorts)
> - freetype and cairo: I installed it via MacPorts, this is
> convenient and automatically compiled under 64 bit.
> - lua: compiled source manually, as the MacPorts directory structure
> of lua is different from what ipe expects. Add '-arch x86_64' to
> the CFLAGS in the makefile.
>
> Furthermore, we need to modify common.mak and config.mak:
> common.mak:
> - delete the '-s' in 'INSTALL_PROGRAMS = install -s -m 0755' (this
> prevents a faulty stripping)
> config.mak:
> - add a line 'CONFIG += x86_64' (thanks to Zach Teitler)
> - Qt does not install pkg-config-files under mac os any more, which
> are used by the compilation process of Ipe. The same holds for lua.
> So we need to set the needed flags manually:
> QT_CFLAGS =-I/Library/Frameworks/QtCore.framework/Versions/4/
> Headers -I/Library/Frameworks/QtGui.framework/Versions/4/Headers
> QT_LIBS =-F/Library/Frameworks -L/Library/Frameworks -framework
> QtCore -framework ApplicationServices -framework QtGui -framework
> AppKit -framework Cocoa -lz -lm
> LUA_CFLAGS = -L/usr/local/include
> LUA_LIBS = -L/usr/local/lib -llua -lm
>
> I am not sure whether the modified compilation flags are set
> optimally, however this way it works on my Mac.
>
> Good luck!
> Marc Scherfenberg_______________________________________________
> Ipe-discuss mailing list
> Ipe-discuss at cs.uu.nl
> https://mail.cs.uu.nl/mailman/listinfo/ipe-discuss
More information about the Ipe-discuss
mailing list