Leopold Palomo-Avellaneda wrote:
A Dimecres 16 Gener 2008, Bill Hoffman va escriure:
Leopold Palomo-Avellaneda wrote:

Linking CXX shared library libpluginregistrodeiva.dylib
Undefined symbols:
"aplinteligentesview::aplinteligentesview(Empresa*, QWidget*)", referenced from:
      linprevcobro::creaPago()      in linprevcobro.o
  "aplinteligentesview::setfechaasiento(QString)", referenced from:
      linprevcobro::creaPago()      in linprevcobro.o
  "regivaprintview::regivaprintview(Empresa*, QWidget*)", referenced from:
      ListRegistroIvaView::boton_print()       in listregistroivaview.o


OK, so all these symbols are from your stuff. I think I know the problem. Linux allows for shared libraries to have undefined symbols, and the mac does not. You need to add some target_link_libraries(libpluginregistrodeiva ...)

Stuff into your cmake file.

My guess is that if you went on to a linux system, and did nm on the .so , you would find these symbols are also undefined. I think there is a flag like -undefined suppress or something that you can pass to the mac linker to make it work more like linux. However, if you ever want to go to windows you will have to figure this out as there is no such flag on Windows.

-Bill
_______________________________________________
CMake mailing list
CMake@cmake.org
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to