Holger Hoffstätte <hol...@applied-asynchrony.com> writes:

> On Mon, 26 Dec 2016 21:09:08 +0100, lee wrote:
>
>> Hi,
>> 
>> there are some things that refuse to compile.  One of them is
>> openimageio.
>> 
>> Is this a bug, or am I missing something?  Do I need to update something
>> else first?
>
> The latter, sort of. The error in question..
>

> [...]
>> | ../libOpenImageIO/libOpenImageIO.so.1.6.13: undefined reference to 
>> `Imf_2_1::Header::name[abi:cxx11]() const'
>> | ../libOpenImageIO/libOpenImageIO.so.1.6.13: undefined reference to 
>> `Imf_2_1::Header::setType(std::__cxx11::basic_string<char, 
>> std::char_traits<char>, std::allocator<char> > const&)'
>> | ../libOpenImageIO/libOpenImageIO.so.1.6.13: undefined reference to
>> | `Imf_2_1::TypedAttribute<std::__cxx11::basic_string<char,
>> | std::char_traits<char>, std::allocator<char> >
>> | >::writeValueTo(Imf_2_1::OStream&, int) const'
>> | collect2: error: ld returned 1 exit status
> [..]
>
> ..indicates a mismatch in C++11 ABI which changed in gcc5. What happens is 
> that one the
> dependencies of openimageio was built against the old C++11 std::string ABI 
> (hence the
> link errors), and needs to be rebuilt. It looks to be "Imf" aka libIlmImf,
> whatever that is. Try to rebuild it with --oneshot and it should work.
> If a similar error pops up for a different dependency, repeat. :)

Hm, this is really bad because it's difficult to figure out what needs
to be rebuilt.  Is there a way to rebuild everything in some order that
works?

Here's the next one already, and what would I need to rebuild for that?
I can remove the package, though there will probably many more that
don't compile.


,----
| >>> Emerging (19 of 109) dev-ml/camlp4-4.02.1_p3::gentoo
|  * camlp4-4.02.1_p3.tar.gz SHA256 SHA512 WHIRLPOOL size ;-) ...               
                                                                                
                                                                         [ ok ]
| >>> Unpacking source...
| >>> Unpacking camlp4-4.02.1_p3.tar.gz to 
/var/tmp/portage/dev-ml/camlp4-4.02.1_p3/work
| >>> Source unpacked in /var/tmp/portage/dev-ml/camlp4-4.02.1_p3/work
| >>> Preparing source in 
/var/tmp/portage/dev-ml/camlp4-4.02.1_p3/work/camlp4-4.02.1-3 ...
| >>> Source prepared.
| >>> Configuring source in 
/var/tmp/portage/dev-ml/camlp4-4.02.1_p3/work/camlp4-4.02.1-3 ...
| >>> Source configured.
| >>> Compiling source in 
/var/tmp/portage/dev-ml/camlp4-4.02.1_p3/work/camlp4-4.02.1-3 ...
| make -j16 byte 
| ocamlbuild -classic-display -no-ocamlfind  `./build/camlp4-byte-only.sh`
| + echo camlp4/Camlp4.cmo camlp4/Camlp4Top.cmo camlp4/camlp4prof.byte 
camlp4/mkcamlp4.byte camlp4/camlp4.byte camlp4/camlp4fulllib.cma 
camlp4/camlp4boot.byte camlp4/camlp4boot.cma camlp4/camlp4r.byte 
camlp4/camlp4r.cma camlp4/camlp4rf.byte
|  camlp4/camlp4rf.cma camlp4/camlp4o.byte camlp4/camlp4o.cma 
camlp4/camlp4of.byte camlp4/camlp4of.cma camlp4/camlp4oof.byte 
camlp4/camlp4oof.cma camlp4/camlp4orf.byte camlp4/camlp4orf.cma 
camlp4/Camlp4Parsers/Camlp4AstLoader.cmo camlp4/Cam
| lp4Parsers/Camlp4DebugParser.cmo camlp4/Camlp4Parsers/Camlp4GrammarParser.cmo 
camlp4/Camlp4Parsers/Camlp4ListComprehension.cmo 
camlp4/Camlp4Parsers/Camlp4MacroParser.cmo 
camlp4/Camlp4Parsers/Camlp4OCamlOriginalQuotationExpander.cmo camlp4
| /Camlp4Parsers/Camlp4OCamlParser.cmo 
camlp4/Camlp4Parsers/Camlp4OCamlParserParser.cmo 
camlp4/Camlp4Parsers/Camlp4OCamlReloadedParser.cmo 
camlp4/Camlp4Parsers/Camlp4OCamlRevisedParser.cmo 
camlp4/Camlp4Parsers/Camlp4OCamlRevisedParserParser
| .cmo camlp4/Camlp4Parsers/Camlp4OCamlRevisedQuotationExpander.cmo 
camlp4/Camlp4Parsers/Camlp4QuotationCommon.cmo 
camlp4/Camlp4Parsers/Camlp4QuotationExpander.cmo 
camlp4/Camlp4Printers/Camlp4AstDumper.cmo camlp4/Camlp4Printers/Camlp4AutoPr
| inter.cmo camlp4/Camlp4Printers/Camlp4NullDumper.cmo 
camlp4/Camlp4Printers/Camlp4OCamlAstDumper.cmo 
camlp4/Camlp4Printers/Camlp4OCamlPrinter.cmo 
camlp4/Camlp4Printers/Camlp4OCamlRevisedPrinter.cmo 
camlp4/Camlp4Filters/Camlp4AstLifter.cmo 
| camlp4/Camlp4Filters/Camlp4ExceptionTracer.cmo 
camlp4/Camlp4Filters/Camlp4FoldGenerator.cmo 
camlp4/Camlp4Filters/Camlp4LocationStripper.cmo 
camlp4/Camlp4Filters/Camlp4MapGenerator.cmo 
camlp4/Camlp4Filters/Camlp4MetaGenerator.cmo camlp4/Ca
| mlp4Filters/Camlp4Profiler.cmo camlp4/Camlp4Filters/Camlp4TrashRemover.cmo
| /usr/bin/ocamlopt.opt unix.cmxa -I /usr/lib64/ocaml/ocamlbuild 
/usr/lib64/ocaml/ocamlbuild/ocamlbuildlib.cmxa myocamlbuild_config.ml 
myocamlbuild.ml /usr/lib64/ocaml/ocamlbuild/ocamlbuild.cmx -o myocamlbuild
| /usr/bin/ocamldep.opt -modules camlp4/boot/camlp4boot.ml > 
camlp4/boot/camlp4boot.ml.depends
| /usr/bin/ocamldep.opt -modules camlp4/boot/Camlp4.ml > 
camlp4/boot/Camlp4.ml.depends
| /usr/bin/ocamldep.opt -modules camlp4/config/Camlp4_config.mli > 
camlp4/config/Camlp4_config.mli.depends
| cp /usr/lib64/ocaml/compiler-libs/warnings.cmi camlp4/import/warnings.cmi
| cp /usr/lib64/ocaml/compiler-libs/location.cmi camlp4/import/location.cmi
| cp /usr/lib64/ocaml/compiler-libs/longident.cmi camlp4/import/longident.cmi
| cp /usr/lib64/ocaml/compiler-libs/asttypes.cmi camlp4/import/asttypes.cmi
| cp /usr/lib64/ocaml/compiler-libs/parsetree.cmi camlp4/import/parsetree.cmi
| cp /usr/lib64/ocaml/compiler-libs/outcometree.cmi 
camlp4/import/outcometree.cmi
| cp /usr/lib64/ocaml/compiler-libs/oprint.cmi camlp4/import/oprint.cmi
| cp /usr/lib64/ocaml/compiler-libs/toploop.cmi camlp4/import/toploop.cmi
| /usr/bin/ocamlc.opt -c -g -w Z -I camlp4/import -warn-error A-3 -I 
camlp4/config -I camlp4 -o camlp4/config/Camlp4_config.cmi 
camlp4/config/Camlp4_config.mli
| /usr/bin/ocamlc.opt -c -g -w a -I camlp4/import -warn-error A-3 -I 
camlp4/config -I camlp4/boot -o camlp4/boot/Camlp4.cmo camlp4/boot/Camlp4.ml
| + /usr/bin/ocamlc.opt -c -g -w a -I camlp4/import -warn-error A-3 -I 
camlp4/config -I camlp4/boot -o camlp4/boot/Camlp4.cmo camlp4/boot/Camlp4.ml
| File "camlp4/boot/Camlp4.ml", line 14866, characters 41-44:
| Error: This expression has type string but an expression was expected of type
|          Asttypes.arg_label
| Command exited with code 2.
| Makefile:13: recipe for target 'byte' failed
| make: *** [byte] Error 10
|  * ERROR: dev-ml/camlp4-4.02.1_p3::gentoo failed (compile phase):
|  *   emake failed
`----

Reply via email to