digitalmars.D.learn - Linker errors on OSX
- Peter Alexander (28/28) Jun 19 2011 I've been having strange linker errors recently and I have no ideas why
- Daniel Murphy (4/12) Jun 19 2011 Last time I got something like this it was from an outdated phobos.lib o...
- Dmitry Olshansky (5/33) Jun 20 2011 I had a lot of undefined linker symbols on linux recently, in the end I
I've been having strange linker errors recently and I have no ideas why
they've started happening.
When compiling/linking:
import std.stdio;
void main() { writeln("Hello"); }
with DMD 2.053 I get linker error:
Undefined symbols:
"_D3std9exception7bailOutFAyaixAaZv", referenced from:
_D3std9exception148__T7enforceTbVAyaa60_2f4c6962726172792f436f6d70696c6572732f646d64322f6f73782f62696e2f2e2e2f2e2e2f7372632f70686f626f732f7374642f737464696f2e64Vi1481Z7enforceFbLAxaZb
in test.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
My first thought was that it isn't linking with phobos, but compiling
with -v confirms that it is:
gcc test.o -o test -m32 -Xlinker
-L/Library/Compilers/dmd2/osx/bin/../lib -lphobos2 -lpthread -lm
My GCC version is 4.2.1
$ gcc --version
i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5664)
Copyright (C) 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There
is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
I've tried re-downloading DMD again, but this didn't work.
It appeared to start happening after running an update of all my
outdated packages in MacPorts, but I can't be sure that that's the issue.
Any help tracking down the problem would be much appreciated. Thanks.
Jun 19 2011
"Peter Alexander" <peter.alexander.au gmail.com> wrote in message news:itlk5g$e7t$1 digitalmars.com...I've been having strange linker errors recently and I have no ideas why they've started happening. Undefined symbols: "_D3std9exception7bailOutFAyaixAaZv", referenced from: _D3std9exception148__T7enforceTbVAyaa60_2f4c6962726172792f436f6d70696c6572732f646d64322f6f73782f62696e2f2e2e2f2e2e2f7372632f70686f626f732f7374642f737464696f2e64Vi1481Z7enforceFbLAxaZb in test.o ld: symbol(s) not found collect2: ld returned 1 exit statusLast time I got something like this it was from an outdated phobos.lib on my path. Could be what's happening to you.
Jun 19 2011
On 19.06.2011 23:52, Peter Alexander wrote:
I've been having strange linker errors recently and I have no ideas
why they've started happening.
When compiling/linking:
import std.stdio;
void main() { writeln("Hello"); }
with DMD 2.053 I get linker error:
Undefined symbols:
"_D3std9exception7bailOutFAyaixAaZv", referenced from:
_D3std9exception148__T7enforceTbVAyaa60_2f4c6962726172792f436f6d70696c6572732f646d64322f6f73782f62696e2f2e2e2f2e2e2f7372632f70686f626f732f7374642f737464696f2e64Vi1
81Z7enforceFbLAxaZb
in test.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
My first thought was that it isn't linking with phobos, but compiling
with -v confirms that it is:
gcc test.o -o test -m32 -Xlinker
-L/Library/Compilers/dmd2/osx/bin/../lib -lphobos2 -lpthread -lm
My GCC version is 4.2.1
$ gcc --version
i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5664)
Copyright (C) 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There
is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE.
I've tried re-downloading DMD again, but this didn't work.
It appeared to start happening after running an update of all my
outdated packages in MacPorts, but I can't be sure that that's the issue.
Any help tracking down the problem would be much appreciated. Thanks.
I had a lot of undefined linker symbols on linux recently, in the end I
had to rebuild dmd, druntime & phobos from the latest git master.
--
Dmitry Olshansky
Jun 20 2011









"Daniel Murphy" <yebblies nospamgmail.com> 