[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Linking failure; telling gcc versions



I am attempting to compile a program (iscan) and get some errors like
this at the linker step:
-------------------------------------------
gcc -rdynamic -o .libs/iscan file-selector.o pisa_aleart_dialog.o pisa_change_unit.o pisa_configuration.o pisa_error.o pisa_esmod_tool.o pisa_gamma_correction.o pisa_gimp.o pisa_image_controls.o pisa_img_converter.o pisa_main.o pisa_marquee.o pisa_main_window.o pisa_preference.o pisa_preview_window.o pisa_print_window.o pisa_progress_window.o pisa_sane.o pisa_sane_scan.o pisa_scan_manager.o pisa_save_file.o pisa_scan_selector.o pisa_scan_tool.o pisa_settings.o pisa_tool.o pisa_view_manager.o xpm_data.o ../esmodule/libesmod.so  -L/usr/lib -L/usr/X11R6/lib ../sanei/libsanei.a ../backend/.libs/libsane.so ../lib/liblib.a -lnsl /usr/lib/libusb.so /usr/lib/libgdk_imlib.so /usr/lib/libgtk.so /usr/lib/libgdk.so /usr/lib/libgmodule.so /usr/lib/libglib.so -ldl -lXi -lXext -lX11 -lm -Wl,--rpath -Wl,/usr/local/src/scanner/iscan-test/lib
file-selector.o(.text+0x1bd): In function `file_selector::init()':
/usr/local/src/scanner/iscan-1.5.1/frontend/file-selector.cc:155: undefined reference to `operator new[](unsigned)'
file-selector.o(.text+0x220):/usr/local/src/scanner/iscan-1.5.1/frontend/file-selector.cc:169: undefined reference to `operator new[](unsigned)'
file-selector.o(.text+0x4dd): In function `file_selector::create_window(_GtkWidget*, int)':
/usr/local/src/scanner/iscan-1.5.1/frontend/file-selector.cc:197: undefined reference to `__cxa_allocate_exception'
file-selector.o(.text+0x4fc):/usr/local/src/scanner/iscan-1.5.1/frontend/file-selector.cc:197:
undefined reference to `__cxa_throw'
[and lots more]
------------------------------------

My suspicion is these arise from incompatibilities between gcc 3.3
used for this  compile and earlier versions for some of the other
libraries.

First, does that seem likely?

Second, is there any good way to determine which version of gcc was
used to build a given library?

I assume that with things trickling into testing my libraries are
currently an odd mix of different versions.

Finally, some of the libraries (gdk-imlib1-dev) this program seems to
require (I think that's GNOME 1) are in the obsolete (old?) section,
so I assume they're not going to get rebuilt with newer tools.  Is
that accurate?  And, at least in this case, does it matter?  I think
gdk is C, not C++, and so not sensitive to these versioning
issues--right?

Thanks for any advice.



Reply to: