Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>The linking errors of concern start with:</p> <pre><code>[...]/lib/libCommandLineInterface.so: In function `_start': (.text+0x0): multiple definition of `_start' /usr/lib/gcc/x86_64-linux-gnu/4.4.3/../../../../lib/crt1.o:(.text+0x0): first defined here [...]/lib/libCommandLineInterface.so: In function `_fini': (.fini+0x0): multiple definition of `_fini' /usr/lib/gcc/x86_64-linux-gnu/4.4.3/../../../../lib/crti.o:(.fini+0x0): first defined here [...]/lib/libCommandLineInterface.so:(.rodata+0x0): multiple definition of `_IO_stdin_used' /usr/lib/gcc/x86_64-linux-gnu/4.4.3/../../../../lib/crt1.o:(.rodata.cst4+0x0): first defined here [...]/lib/libCommandLineInterface.so: In function `__data_start': (.data+0x0): multiple definition of `__data_start' /usr/lib/gcc/x86_64-linux-gnu/4.4.3/../../../../lib/crt1.o:(.data+0x0): first defined here [...]/lib/libCommandLineInterface.so: In function `__data_start': (.data+0x8): multiple definition of `__dso_handle' /usr/lib/gcc/x86_64-linux-gnu/4.4.3/crtbegin.o:(.data+0x0): first defined here [...]/lib/libCommandLineInterface.so: In function `_edata': (*ABS*+0x607130): multiple definition of `__bss_start' [...]/lib/libCommandLineInterface.so: In function `_end': (*ABS*+0x6073b8): multiple definition of `_end' [...]/lib/libCommandLineInterface.so: In function `_edata': (*ABS*+0x607130): multiple definition of `_edata' [...]/lib/libCommandLineInterface.so: In function `main': /home/daniel/skola/exjobb/miniballscripts/Common/CommandLineInterface.cc:6: multiple definition of `main' </code></pre> <p>The symbols that are multiply defined are 'standard' on Unix - and I've never needed to bother with them myself on Mac either, though I don't do GUI programming there.</p> <p>You need to look at <code>libCommandLineInterface.cc</code> with a very prejudiced attitude and decide whether it provides anything that you need. You might be able to remove it altogether. If it contains some stuff you do need, you will need to cauterize the material that defines <code>_start</code>, and <code>_end</code> and <code>main</code> and so on.</p> <p>You are also going to have to worry about the missing vtables:</p> <pre><code>[...]/libTransfer.so: undefined reference to `vtable for Annular' [...]/libTransfer.so: undefined reference to `ROOT::GenerateInitInstance(Barrel const*)' [...]/libTransfer.so: undefined reference to `ROOT::GenerateInitInstance(Annular const*)' [...]/libTransfer.so: undefined reference to `vtable for Barrel' [...]/libTransfer.so: undefined reference to `vtable for Crystal' [...]/libTransfer.so: undefined reference to `vtable for Germanium' </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload