QuantLibAddin build in Mac OS X

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

QuantLibAddin build in Mac OS X

Jerry Jin
Hello, QuantLib community

Is there anyway to build QuantLibAddin project in Mac OS X?

I built QuantLib project in Mac by following instructions from http://quantlib.org/install/macosx.shtml

But is seems the same environment with port installed can't build QuantLibAddin project by following build steps for Linux (http://quantlib.org/quantlibaddin/build_cpp.html)

I got error while at step 3.3.1 Build log4cxx
cd /home/erik/build/log4cxx-0.10.0/src/apr
./buildconf

The buildconf was installed from port.

Please let me know how to build QuantLibAddin project in Mac, I need 2 static libraries:
QuantLibObjects
ObjectHandler

Thanks a lot!

Regards
Jerry




------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are
consuming the most bandwidth. Provides multi-vendor support for NetFlow,
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports. http://pubads.g.doubleclick.net/gampad/clk?id=1444514421&iu=/41014381
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: QuantLibAddin build in Mac OS X

Eric Ehlers-3
Hi Jerry,

> Is there anyway to build QuantLibAddin project in Mac OS X?
>
> I built QuantLib project in Mac by following instructions from
> http://quantlib.org/install/macosx.shtml
>
> But is seems the same environment with port installed can't build
> QuantLibAddin project by following build steps for Linux (
> http://quantlib.org/quantlibaddin/build_cpp.html)
>
> I got error while at step 3.3.1 Build log4cxx
>
> cd /home/erik/build/log4cxx-0.10.0/src/apr
> ./buildconf

log4cxx is optional and when it is not present then logging messages are
directed to stdout.  So unless you need to have a log file, I would
advise you to just disable log4cxx.  You can do that by passing the
argument --without-log4cxx to the configure command for ObjectHandler.
After that your build will not require log4cxx, apr, or apr-utils.

You are using the old build, which uses the gensrc python script to
autogenerate addin source code. Starting with version 1.7 there is a
new build which uses SWIG to autogenerate addin source code.  The new
build uses Boos.Log instead of log4cxx.

As of 1.7 the new build is not far enough along to replace the old
one, but work is ongoing. Next month we will be releasing version 1.8 of
the old and new builds. I am hoping that by that point the new build
will supercede the old one.

Kind Regards,
Eric

------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are
consuming the most bandwidth. Provides multi-vendor support for NetFlow,
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports. http://pubads.g.doubleclick.net/gampad/clk?id=1444514421&iu=/41014381
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: QuantLibAddin build in Mac OS X

Jerry Jin
Thank you Eric!

I tried to build ObjectHandler without log4cxx

./configure --with-gensrc=~/gensrc \

--prefix=/opt \

--without-log4cxx \

CPPFLAGS=-I/opt/local/include \

LDFLAGS=-L/opt/local/lib

The configure step is working fine

When run 'make' I got:

libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -I/opt/local/include -g -O2 -Wall -MT utilities.lo -MD -MP -MF .deps/utilities.Tpo -c utilities.cpp -o utilities.o >/dev/null 2>&1

mv -f .deps/utilities.Tpo .deps/utilities.Plo

/bin/sh ../libtool  --tag=CXX   --mode=link g++  -g -O2 -Wall  -lboost_filesystem -lboost_regex -lboost_serialization -release 1.7.0  -o libObjectHandler.la -rpath /opt/lib logger.lo processor.lo repository.lo serializationfactory.lo utilities.lo enumerations/libEnumerations.la 

libtool: link: g++ -dynamiclib -Wl,-undefined -Wl,dynamic_lookup -o .libs/libObjectHandler-1.7.0.dylib  .libs/logger.o .libs/processor.o .libs/repository.o .libs/serializationfactory.o .libs/utilities.o   -Wl,-force_load,enumerations/.libs/libEnumerations.a  -lboost_filesystem -lboost_regex -lboost_serialization -L/opt/local/lib  -O2   -install_name  /opt/lib/libObjectHandler-1.7.0.dylib  -Wl,-single_module

ld: library not found for -lboost_filesystem

clang: error: linker command failed with exit code 1 (use -v to see invocation)

make[2]: *** [libObjectHandler.la] Error 1

make[1]: *** [all] Error 2

make: *** [all-recursive] Error 1

The boost library was installed by port in /opt/local and I can find 'libboost_filesystem-mt.dylib' there

Did I missed anything? 

Regards

Jerry


On Thu, Jun 16, 2016 at 8:33 PM, Eric Ehlers <[hidden email]> wrote:
Hi Jerry,

> Is there anyway to build QuantLibAddin project in Mac OS X?
>
> I built QuantLib project in Mac by following instructions from
> http://quantlib.org/install/macosx.shtml
>
> But is seems the same environment with port installed can't build
> QuantLibAddin project by following build steps for Linux (
> http://quantlib.org/quantlibaddin/build_cpp.html)
>
> I got error while at step 3.3.1 Build log4cxx
>
> cd /home/erik/build/log4cxx-0.10.0/src/apr
> ./buildconf

log4cxx is optional and when it is not present then logging messages are
directed to stdout.  So unless you need to have a log file, I would
advise you to just disable log4cxx.  You can do that by passing the
argument --without-log4cxx to the configure command for ObjectHandler.
After that your build will not require log4cxx, apr, or apr-utils.

You are using the old build, which uses the gensrc python script to
autogenerate addin source code. Starting with version 1.7 there is a
new build which uses SWIG to autogenerate addin source code.  The new
build uses Boos.Log instead of log4cxx.

As of 1.7 the new build is not far enough along to replace the old
one, but work is ongoing. Next month we will be releasing version 1.8 of
the old and new builds. I am hoping that by that point the new build
will supercede the old one.

Kind Regards,
Eric


------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are
consuming the most bandwidth. Provides multi-vendor support for NetFlow,
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports. http://pubads.g.doubleclick.net/gampad/clk?id=1444514421&iu=/41014381
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users
Reply | Threaded
Open this post in threaded view
|

Re: QuantLibAddin build in Mac OS X

Jerry Jin
Please ignore my previous mail 

I removed '-mt' from boost lib file name then everything is working fine 

The QuantLib project is working fine with original boost lib name from port install

On Thu, Jun 16, 2016 at 10:43 PM, Jerry Jin <[hidden email]> wrote:
Thank you Eric!

I tried to build ObjectHandler without log4cxx

./configure --with-gensrc=~/gensrc \

--prefix=/opt \

--without-log4cxx \

CPPFLAGS=-I/opt/local/include \

LDFLAGS=-L/opt/local/lib

The configure step is working fine

When run 'make' I got:

libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I.. -I/opt/local/include -g -O2 -Wall -MT utilities.lo -MD -MP -MF .deps/utilities.Tpo -c utilities.cpp -o utilities.o >/dev/null 2>&1

mv -f .deps/utilities.Tpo .deps/utilities.Plo

/bin/sh ../libtool  --tag=CXX   --mode=link g++  -g -O2 -Wall  -lboost_filesystem -lboost_regex -lboost_serialization -release 1.7.0  -o libObjectHandler.la -rpath /opt/lib logger.lo processor.lo repository.lo serializationfactory.lo utilities.lo enumerations/libEnumerations.la 

libtool: link: g++ -dynamiclib -Wl,-undefined -Wl,dynamic_lookup -o .libs/libObjectHandler-1.7.0.dylib  .libs/logger.o .libs/processor.o .libs/repository.o .libs/serializationfactory.o .libs/utilities.o   -Wl,-force_load,enumerations/.libs/libEnumerations.a  -lboost_filesystem -lboost_regex -lboost_serialization -L/opt/local/lib  -O2   -install_name  /opt/lib/libObjectHandler-1.7.0.dylib  -Wl,-single_module

ld: library not found for -lboost_filesystem

clang: error: linker command failed with exit code 1 (use -v to see invocation)

make[2]: *** [libObjectHandler.la] Error 1

make[1]: *** [all] Error 2

make: *** [all-recursive] Error 1

The boost library was installed by port in /opt/local and I can find 'libboost_filesystem-mt.dylib' there

Did I missed anything? 

Regards

Jerry


On Thu, Jun 16, 2016 at 8:33 PM, Eric Ehlers <[hidden email]> wrote:
Hi Jerry,

> Is there anyway to build QuantLibAddin project in Mac OS X?
>
> I built QuantLib project in Mac by following instructions from
> http://quantlib.org/install/macosx.shtml
>
> But is seems the same environment with port installed can't build
> QuantLibAddin project by following build steps for Linux (
> http://quantlib.org/quantlibaddin/build_cpp.html)
>
> I got error while at step 3.3.1 Build log4cxx
>
> cd /home/erik/build/log4cxx-0.10.0/src/apr
> ./buildconf

log4cxx is optional and when it is not present then logging messages are
directed to stdout.  So unless you need to have a log file, I would
advise you to just disable log4cxx.  You can do that by passing the
argument --without-log4cxx to the configure command for ObjectHandler.
After that your build will not require log4cxx, apr, or apr-utils.

You are using the old build, which uses the gensrc python script to
autogenerate addin source code. Starting with version 1.7 there is a
new build which uses SWIG to autogenerate addin source code.  The new
build uses Boos.Log instead of log4cxx.

As of 1.7 the new build is not far enough along to replace the old
one, but work is ongoing. Next month we will be releasing version 1.8 of
the old and new builds. I am hoping that by that point the new build
will supercede the old one.

Kind Regards,
Eric



------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are
consuming the most bandwidth. Provides multi-vendor support for NetFlow,
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports. http://pubads.g.doubleclick.net/gampad/clk?id=1444514421&iu=/41014381
_______________________________________________
QuantLib-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/quantlib-users