Opened 3 years ago

Closed 3 years ago

#64476 closed defect (fixed)

gmic-clib @3.0.2: Undefined symbols

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: Schamschula (Marius Schamschula)
Priority: Normal Milestone:
Component: ports Version: 2.7.1
Keywords: Cc: mascguy (Christopher Nielsen)
Port: gmic

Description

gmic-clib @3.0.2 fails to build on all OS versions:

https://ports.macports.org/port/gmic-clib/details/

Undefined symbols for architecture x86_64:
  "gmic::decompress_stdlib()", referenced from:
      _gmic_get_stdlib in libcgmic.a(libcgmic.o)
  "gmic::gmic<float>(char const*, cimg_library::CImgList<float>&, cimg_library::CImgList<char>&, char const*, bool, float*, bool*)", referenced from:
      _gmic_call in libcgmic.a(libcgmic.o)
  "gmic::~gmic()", referenced from:
      _gmic_call in libcgmic.a(libcgmic.o)
  "std::__1::__basic_string_common<true>::__throw_length_error() const", referenced from:
      _gmic_call in libcgmic.a(libcgmic.o)
  "std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::basic_string(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, unsigned long, unsigned long, std::__1::allocator<char> const&)", referenced from:
      _gmic_call in libcgmic.a(libcgmic.o)
  "std::exception::~exception()", referenced from:
      cimg_library::CImgException::CImgException() in libcgmic.a(libcgmic.o)
      cimg_library::CImgException::~CImgException() in libcgmic.a(libcgmic.o)
  "std::terminate()", referenced from:
      ___clang_call_terminate in libcgmic.a(libcgmic.o)
  "typeinfo for std::exception", referenced from:
      typeinfo for cimg_library::CImgException in libcgmic.a(libcgmic.o)
  "vtable for __cxxabiv1::__class_type_info", referenced from:
      typeinfo for gmic_exception in libcgmic.a(libcgmic.o)
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
  "vtable for __cxxabiv1::__si_class_type_info", referenced from:
      typeinfo for cimg_library::CImgException in libcgmic.a(libcgmic.o)
      typeinfo for cimg_library::CImgArgumentException in libcgmic.a(libcgmic.o)
      typeinfo for cimg_library::CImgInstanceException in libcgmic.a(libcgmic.o)
      typeinfo for cimg_library::CImgDisplayException in libcgmic.a(libcgmic.o)
      typeinfo for cimg_library::CImgIOException in libcgmic.a(libcgmic.o)
  NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
  "operator delete[](void*)", referenced from:
      _gmic_delete_external in libcgmic.a(libcgmic.o)
      _gmic_call in libcgmic.a(libcgmic.o)
      cimg_library::CImgList<float>::assign(unsigned int) in libcgmic.a(libcgmic.o)
      cimg_library::CImgList<char>::assign(unsigned int) in libcgmic.a(libcgmic.o)
      cimg_library::CImg<unsigned char>::assign(unsigned char const*, unsigned int, unsigned int, unsigned int, unsigned int, bool) in libcgmic.a(libcgmic.o)
      cimg_library::CImg<unsigned char>::permute_axes(char const*) in libcgmic.a(libcgmic.o)
      cimg_library::CImg<unsigned char>::~CImg() in libcgmic.a(libcgmic.o)
      ...
  "operator delete(void*)", referenced from:
      _gmic_call in libcgmic.a(libcgmic.o)
      cimg_library::CImgArgumentException::~CImgArgumentException() in libcgmic.a(libcgmic.o)
      cimg_library::CImgException::~CImgException() in libcgmic.a(libcgmic.o)
      cimg_library::CImgDisplayException::~CImgDisplayException() in libcgmic.a(libcgmic.o)
      cimg_library::CImgIOException::~CImgIOException() in libcgmic.a(libcgmic.o)
      cimg_library::CImgInstanceException::~CImgInstanceException() in libcgmic.a(libcgmic.o)
  "operator new[](unsigned long)", referenced from:
      cimg_library::CImgList<float>::assign(unsigned int) in libcgmic.a(libcgmic.o)
      cimg_library::CImgList<char>::assign(unsigned int) in libcgmic.a(libcgmic.o)
      cimg_library::CImg<char>::assign(unsigned int, unsigned int, unsigned int, unsigned int) in libcgmic.a(libcgmic.o)
      cimg_library::CImgArgumentException::CImgArgumentException(char const*, ...) in libcgmic.a(libcgmic.o)
      cimg_library::CImgInstanceException::CImgInstanceException(char const*, ...) in libcgmic.a(libcgmic.o)
      cimg_library::CImgException::CImgException() in libcgmic.a(libcgmic.o)
      cimg_library::cimg::info() in libcgmic.a(libcgmic.o)
      ...
  "operator new(unsigned long)", referenced from:
      _gmic_call in libcgmic.a(libcgmic.o)
      cimg_library::CImgDisplay::_assign(unsigned int, unsigned int, char const*, unsigned int, bool, bool) in libcgmic.a(libcgmic.o)
  "___cxa_allocate_exception", referenced from:
      cimg_library::CImg<char>::assign(unsigned int, unsigned int, unsigned int, unsigned int) in libcgmic.a(libcgmic.o)
      cimg_library::CImg<char>::safe_size(unsigned int, unsigned int, unsigned int, unsigned int) in libcgmic.a(libcgmic.o)
      int cimg_library::cimg::dialog<unsigned char>(char const*, char const*, char const*, char const*, char const*, char const*, char const*, char const*, cimg_library::CImg<unsigned char> const&, bool) in libcgmic.a(libcgmic.o)
      cimg_library::CImgDisplay::screen_width() in libcgmic.a(libcgmic.o)
      cimg_library::CImgDisplay::screen_height() in libcgmic.a(libcgmic.o)
      cimg_library::CImg<unsigned char>& cimg_library::CImg<unsigned char>::_draw_text<unsigned char, unsigned char, unsigned char>(int, int, char const*, unsigned char const*, unsigned char const*, float, cimg_library::CImgList<unsigned char> const&, bool) in libcgmic.a(libcgmic.o)
      cimg_library::CImg<char>::CImg(unsigned int, unsigned int, unsigned int, unsigned int) in libcgmic.a(libcgmic.o)
      ...
  "___cxa_begin_catch", referenced from:
      _gmic_call in libcgmic.a(libcgmic.o)
      cimg_library::CImg<char>::assign(unsigned int, unsigned int, unsigned int, unsigned int) in libcgmic.a(libcgmic.o)
      ___clang_call_terminate in libcgmic.a(libcgmic.o)
      cimg_library::CImgArgumentException::CImgArgumentException(char const*, ...) in libcgmic.a(libcgmic.o)
      cimg_library::CImgInstanceException::CImgInstanceException(char const*, ...) in libcgmic.a(libcgmic.o)
      cimg_library::CImg<char>::CImg(unsigned int, unsigned int, unsigned int, unsigned int) in libcgmic.a(libcgmic.o)
      cimg_library::CImg<unsigned char>::assign(unsigned int, unsigned int, unsigned int, unsigned int) in libcgmic.a(libcgmic.o)
      ...
  "___cxa_end_catch", referenced from:
      _gmic_call in libcgmic.a(libcgmic.o)
      cimg_library::CImg<char>::assign(unsigned int, unsigned int, unsigned int, unsigned int) in libcgmic.a(libcgmic.o)
      cimg_library::CImgArgumentException::CImgArgumentException(char const*, ...) in libcgmic.a(libcgmic.o)
      cimg_library::CImgInstanceException::CImgInstanceException(char const*, ...) in libcgmic.a(libcgmic.o)
      cimg_library::CImg<char>::CImg(unsigned int, unsigned int, unsigned int, unsigned int) in libcgmic.a(libcgmic.o)
      cimg_library::CImg<unsigned char>::assign(unsigned int, unsigned int, unsigned int, unsigned int) in libcgmic.a(libcgmic.o)
      cimg_library::CImg<char>::assign(char const*, unsigned int, unsigned int, unsigned int, unsigned int) in libcgmic.a(libcgmic.o)
      ...
  "___cxa_free_exception", referenced from:
      cimg_library::CImg<char>::assign(unsigned int, unsigned int, unsigned int, unsigned int) in libcgmic.a(libcgmic.o)
      cimg_library::CImg<char>::safe_size(unsigned int, unsigned int, unsigned int, unsigned int) in libcgmic.a(libcgmic.o)
      int cimg_library::cimg::dialog<unsigned char>(char const*, char const*, char const*, char const*, char const*, char const*, char const*, char const*, cimg_library::CImg<unsigned char> const&, bool) in libcgmic.a(libcgmic.o)
      cimg_library::CImgDisplay::screen_width() in libcgmic.a(libcgmic.o)
      cimg_library::CImgDisplay::screen_height() in libcgmic.a(libcgmic.o)
      cimg_library::CImg<unsigned char>& cimg_library::CImg<unsigned char>::_draw_text<unsigned char, unsigned char, unsigned char>(int, int, char const*, unsigned char const*, unsigned char const*, float, cimg_library::CImgList<unsigned char> const&, bool) in libcgmic.a(libcgmic.o)
      cimg_library::CImg<char>::CImg(unsigned int, unsigned int, unsigned int, unsigned int) in libcgmic.a(libcgmic.o)
      ...
  "___cxa_guard_abort", referenced from:
      cimg_library::cimg::strbuffersize(unsigned long) in libcgmic.a(libcgmic.o)
      cimg_library::cimg::_vsnprintf(char*, unsigned long, char const*, __va_list_tag*) in libcgmic.a(libcgmic.o)
      cimg_library::cimg::output(__sFILE*) in libcgmic.a(libcgmic.o)
      int cimg_library::cimg::dialog<unsigned char>(char const*, char const*, char const*, char const*, char const*, char const*, char const*, char const*, cimg_library::CImg<unsigned char> const&, bool) in libcgmic.a(libcgmic.o)
      cimg_library::CImgDisplay::move(int, int) in libcgmic.a(libcgmic.o)
      cimg_library::CImgDisplay::screen_width() in libcgmic.a(libcgmic.o)
      cimg_library::CImgDisplay::screen_height() in libcgmic.a(libcgmic.o)
      ...
  "___cxa_guard_acquire", referenced from:
      cimg_library::cimg::strbuffersize(unsigned long) in libcgmic.a(libcgmic.o)
      cimg_library::cimg::_vsnprintf(char*, unsigned long, char const*, __va_list_tag*) in libcgmic.a(libcgmic.o)
      cimg_library::cimg::output(__sFILE*) in libcgmic.a(libcgmic.o)
      int cimg_library::cimg::dialog<unsigned char>(char const*, char const*, char const*, char const*, char const*, char const*, char const*, char const*, cimg_library::CImg<unsigned char> const&, bool) in libcgmic.a(libcgmic.o)
      cimg_library::CImg<unsigned char>& cimg_library::CImg<unsigned char>::draw_line<unsigned char>(int, int, int, int, unsigned char const*, float, unsigned int, bool) in libcgmic.a(libcgmic.o)
      cimg_library::CImgDisplay::move(int, int) in libcgmic.a(libcgmic.o)
      cimg_library::CImgDisplay::screen_width() in libcgmic.a(libcgmic.o)
      ...
  "___cxa_guard_release", referenced from:
      cimg_library::cimg::strbuffersize(unsigned long) in libcgmic.a(libcgmic.o)
      cimg_library::cimg::_vsnprintf(char*, unsigned long, char const*, __va_list_tag*) in libcgmic.a(libcgmic.o)
      cimg_library::cimg::output(__sFILE*) in libcgmic.a(libcgmic.o)
      int cimg_library::cimg::dialog<unsigned char>(char const*, char const*, char const*, char const*, char const*, char const*, char const*, char const*, cimg_library::CImg<unsigned char> const&, bool) in libcgmic.a(libcgmic.o)
      cimg_library::CImg<unsigned char>& cimg_library::CImg<unsigned char>::draw_line<unsigned char>(int, int, int, int, unsigned char const*, float, unsigned int, bool) in libcgmic.a(libcgmic.o)
      cimg_library::CImgDisplay::move(int, int) in libcgmic.a(libcgmic.o)
      cimg_library::CImgDisplay::screen_width() in libcgmic.a(libcgmic.o)
      ...
  "___cxa_throw", referenced from:
      cimg_library::CImg<char>::assign(unsigned int, unsigned int, unsigned int, unsigned int) in libcgmic.a(libcgmic.o)
      cimg_library::CImg<char>::safe_size(unsigned int, unsigned int, unsigned int, unsigned int) in libcgmic.a(libcgmic.o)
      int cimg_library::cimg::dialog<unsigned char>(char const*, char const*, char const*, char const*, char const*, char const*, char const*, char const*, cimg_library::CImg<unsigned char> const&, bool) in libcgmic.a(libcgmic.o)
      cimg_library::CImgDisplay::screen_width() in libcgmic.a(libcgmic.o)
      cimg_library::CImgDisplay::screen_height() in libcgmic.a(libcgmic.o)
      cimg_library::CImg<unsigned char>& cimg_library::CImg<unsigned char>::_draw_text<unsigned char, unsigned char, unsigned char>(int, int, char const*, unsigned char const*, unsigned char const*, float, cimg_library::CImgList<unsigned char> const&, bool) in libcgmic.a(libcgmic.o)
      cimg_library::CImg<char>::CImg(unsigned int, unsigned int, unsigned int, unsigned int) in libcgmic.a(libcgmic.o)
      ...
  "___gxx_personality_v0", referenced from:
      _gmic_call in libcgmic.a(libcgmic.o)
      cimg_library::CImg<unsigned char>::permute_axes(char const*) in libcgmic.a(libcgmic.o)
      cimg_library::CImg<float>::permute_axes(char const*) in libcgmic.a(libcgmic.o)
      cimg_library::CImg<char>::assign(unsigned int, unsigned int, unsigned int, unsigned int) in libcgmic.a(libcgmic.o)
      cimg_library::CImg<char>::safe_size(unsigned int, unsigned int, unsigned int, unsigned int) in libcgmic.a(libcgmic.o)
      cimg_library::CImgArgumentException::CImgArgumentException(char const*, ...) in libcgmic.a(libcgmic.o)
      cimg_library::cimg::strbuffersize(unsigned long) in libcgmic.a(libcgmic.o)
      ...
ld: symbol(s) not found for architecture x86_64

Change History (2)

comment:1 Changed 3 years ago by mascguy (Christopher Nielsen)

Cc: mascguy added

comment:2 Changed 3 years ago by mascguy (Christopher Nielsen)

Resolution: fixed
Status: assignedclosed

It looks like this is now fixed with the recent update to 3.1.0. Closing as resolved.

Note: See TracTickets for help on using tickets.