Problem when build appleseed on linux

161 views
Skip to first unread message

Yuheng Zou

unread,
Oct 8, 2017, 5:25:35 AM10/8/17
to appleseed-dev
I tried the instructions in wiki page. Download the prebuilt-deps and then install qt on linux by apt-get. Then I get the following error:

../appleseed/libappleseed.so: undefined reference to `boost::match_results<__gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<boost::sub_match<__gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > >::maybe_assign(boost::match_results<__gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<boost::sub_match<__gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > > const&)'
../appleseed/libappleseed.so: undefined reference to `boost::re_detail_106100::perl_matcher<__gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<boost::sub_match<__gnu_cxx::__normal_iterator<char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, boost::regex_traits<char, boost::cpp_regex_traits<char> > >::construct_init(boost::basic_regex<char, boost::regex_traits<char, boost::cpp_regex_traits<char> > > const&, boost::regex_constants::_match_flags)'
../appleseed/libappleseed.so: undefined reference to `Imf_2_2::Header::setName(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../appleseed/libappleseed.so: undefined reference to `Imf_2_2::addComments(Imf_2_2::Header&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../appleseed/libappleseed.so: undefined reference to `OpenImageIO::v1_7::geterror[abi:cxx11]()'
../appleseed/libappleseed.so: undefined reference to `OpenImageIO::v1_7::ustring::empty_std_string[abi:cxx11]'
../appleseed/libappleseed.so: undefined reference to `SeExpression::setExpr(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../appleseed/libappleseed.so: undefined reference to `Imf_2_2::TypedAttribute<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::writeValueTo(Imf_2_2::OStream&, int) const'
../appleseed/libappleseed.so: undefined reference to `OSL::OSLCompiler::compile_buffer(OpenImageIO::v1_7::string_view, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, OpenImageIO::v1_7::string_view)'
../appleseed/libappleseed.so: undefined reference to `Imf_2_2::TypedAttribute<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::staticTypeName()'
../appleseed/libappleseed.so: undefined reference to `Imf_2_2::addCapDate(Imf_2_2::Header&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../appleseed/libappleseed.so: undefined reference to `SeExprFuncNode::getStrArg[abi:cxx11](int) const'
../appleseed/libappleseed.so: undefined reference to `OpenImageIO::v1_7::ImageInput::open(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, OpenImageIO::v1_7::ImageSpec const*)'
../appleseed/libappleseed.so: undefined reference to `Imf_2_2::addOwner(Imf_2_2::Header&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
../appleseed/libappleseed.so: undefined reference to `Imf_2_2::TypedAttribute<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::readValueFrom(Imf_2_2::IStream&, int, int)'
collect2: error: ld returned 1 exit status
make[2]: *** [src/appleseed.cli/appleseed.cli] Error 1
make[1]: *** [src/appleseed.cli/CMakeFiles/appleseed.cli.dir/all] Error 2
make: *** [all] Error 2


Does anyone have some solutions?

Est

unread,
Oct 8, 2017, 3:32:23 PM10/8/17
to appleseed-dev






Hi,

Are you using a recent gcc version?

I think that the issue is related to this:

The prebuilt dependencies are built using gcc 4.8,using the old ABI and are not compatible 
with the new C++11 ABI using in recent gcc versions.

The solution is to define _GLIBCXX_USE_CXX11_ABI=0. You can modify the cmake files to add it 
or use cmake-gui or cmake command line to add the definitions to cmake's CXXFLAGS.

Est.

Yuheng Zou

unread,
Oct 9, 2017, 1:04:43 AM10/9/17
to appleseed-dev
Hi,

Thank you very much! This solves my problem completely.

May I join you as a contributor? I am now a sophomore from China. I love computer graphics and want to practice my skills. I find appleseed is a good place to start and I want to meet people who are experienced on CG.

I am a gold medal winner in CNOI (China National Olympiad in Informatics), so I know the basic algorithm. I took the computer graphics class in Peking University last year, and wrote a simple path tracer. The code is here: https://github.com/KuribohG/z-renderer. I accomplished a fluid simulator as a final project in group at: https://github.com/KuribohG/Waterflow. However, I don't know much in software engineering so these code is hard to read and maintain.

I want to know how is the renderer like in product, and how to build large size software. This is why I want to join appleseed.

Thanks,
Yuheng

在 2017年10月9日星期一 UTC+8上午3:32:23,Est写道:

François Beaune

unread,
Oct 9, 2017, 3:13:13 AM10/9/17
to apples...@googlegroups.com
Hey Yuheng,

Welcome, it'll be a pleasure to have you!

The best is to join us on Slack, this is where most of the discussions take place nowadays.

Could you request an invite here please? https://slackin-hjzwcqzcjp.now.sh/ This auto-invite thing is a bit experimental so let us know here if it doesn't work properly.

Franz

--
You received this message because you are subscribed to the Google Groups "appleseed-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to appleseed-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Yuheng Zou

unread,
Oct 9, 2017, 5:27:40 AM10/9/17
to appleseed-dev
Hello Franz,

This link works fine for me. I can receive the email from it.

Thanks,
Yuheng

在 2017年10月9日星期一 UTC+8下午3:13:13,Franz Beaune写道:
To unsubscribe from this group and stop receiving emails from it, send an email to appleseed-de...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages