digitalmars.D - Ref to deh_end deh_beg
- Barry Denton (63/63) Mar 14 2008 these obviously internal but keep coming on compile . often, we think so...
- Denton Cockburn (1/1) Mar 14 2008 is main defined in multiple places somewhere in the compiled code?
- Frits van Bommel (16/23) Mar 14 2008 The last message means no valid main() was defined. The other symbols
- Barry Denton (2/29) Mar 14 2008 Thanks so . Had main in class , dumb
- Frits van Bommel (3/10) Mar 14 2008 D !is Java :).
- Barry Denton (2/29) Mar 14 2008 Thanks so . Had main in class , dumb
these obviously internal but keep coming on compile . often, we think something missing on install like extern C ? . have tango-src-SNAPSHOT-20080308 , dmd 1.027 built with dsss 0.75 nm Out [davwk]$ nm calcLoanRepayments.o U _D10ModuleInfo6__vtblZ U _D10TypeInfo_d6__initZ U _D10TypeInfo_i6__initZ U _D11BankAccount11BankAccount4RateFdZv U _D11BankAccount11BankAccount6getFeeFZd U _D11LoanAccount11LoanAccount5_ctorMFdZC11LoanAccount11LoanAccount U _D11LoanAccount11LoanAccount7__ClassZ U _D11TypeInfo_Aa6__initZ 00000000 V _D14TypeInfo_B3Aad6__initZ 00000000 V _D14TypeInfo_B3Aai6__initZ U _D14TypeInfo_Tuple6__vtblZ 00000060 D _D18calcLoanRepayments12__ModuleInfoZ 00000000 T _D18calcLoanRepayments18calcLoanRepayments4mainMFAAaZv 00000120 R _D18calcLoanRepayments18calcLoanRepayments6__initZ 00000150 R _D18calcLoanRepayments18calcLoanRepayments6__vtblZ 00000000 D _D18calcLoanRepayments18calcLoanRepayments7__ClassZ U _D5tango2io5Print12__T5PrintTaZ5Print5printMFYC5tango2io5Print12__T5PrintTaZ5Print U _D5tango2io5Print12__T5PrintTaZ5Print7newlineMFZC5tango2io5Print12__T5PrintTaZ5Print U _D5tango2io6Stdout12__ModuleInfoZ U _D5tango2io6Stdout6StdoutC5tango2io5Print12__T5PrintTaZ5Print U _D6Object7__ClassZ U _D6object6Object5opCmpMFC6ObjectZi U _D6object6Object6toHashMFZk U _D6object6Object8opEqualsMFC6ObjectZi U _D6object6Object8toStringMFZAa U _D9ClassInfo6__vtblZ U _D9invariant12_d_invariantFC6ObjectZv U _Dmodule_ref 00000010 r _TMP1 00000028 r _TMP2 00000040 r _TMP3 00000058 r _TMP4 00000078 r _TMP5 00000098 r _TMP6 000000b8 r _TMP7 000000e0 r _TMP8 U _d_newclass 00000000 t gcc2_compiled. 00000048 d internal 00000050 d internal ------------------------------------------------------------------------------------------------------- Compiler Out [davwk]$ dsss build -oq calcLoanRepayments.d Default prefix /usr is unwritable, using /home/davwk/d instead. calcLoanRepayments.d => calcLoanRepayments + /usr/bin/rebuild -Idsss_imports/ -I. -S./ -I/home/davwk/d/include/d -S/home/davwk/d/lib/ -oq -I/usr/include/d -S/usr/lib -I/home/davwk/d/include/d -S/home/davwk/d/lib -oqdsss_objs/D calcLoanRepayments.d -ofcalcLoanRepayments gcc dsss_objs/D/_calcLoanRepayments.o dsss_objs/D/_LoanAccount.o dsss_objs/D/_BankAccount.o -o calcLoanRepayments -m32 -ltango-base-dmd -ltango-user-dmd -lDD-tango-io -lDD-tango-sys -lDD-tango-stdc -lDD-tango-sys-linux -lDD-tango-stdc -lDD-tango-io -lDD-tango-text -lDD-tango-io -Xlinker -L./ -Xlinker -L/home/davwk/d/lib/ -Xlinker -L/usr/lib -Xlinker -L/home/davwk/d/lib -ltango-user-dmd -ltango-user-dmd -ltango-base-dmd -lpthread -lm /usr/lib/gcc/i586-suse-linux-gnu/4.1.2/../../../libtango-base-dmd.a(deh2.o): In function `_D4deh213__eh_finddataFPvZPS4deh213DHandlerTable': deh2.d:(.text._D4deh213__eh_finddataFPvZPS4deh213DHandlerTable+0x9): undefined reference to `_deh_beg' deh2.d:(.text._D4deh213__eh_finddataFPvZPS4deh213DHandlerTable+0xe): undefined reference to `_deh_beg' deh2.d:(.text._D4deh213__eh_finddataFPvZPS4deh213DHandlerTable+0x14): undefined reference to `_deh_end' deh2.d:(.text._D4deh213__eh_finddataFPvZPS4deh213DHandlerTable+0x37): undefined reference to `_deh_end' /usr/lib/gcc/i586-suse-linux-gnu/4.1.2/../../../libtango-base-dmd.a(dmain2.o): In function `_D6dmain24mainUiPPaZi7runMainMFZv': dmain2.d:(.text._D6dmain24mainUiPPaZi7runMainMFZv+0x10): undefined reference to `_Dmain' collect2: ld returned 1 exit status --- errorlevel 1 Command /usr/bin/rebuild returned with code 65280, aborting. Error: Command failed, aborting. [davwk]$
Mar 14 2008
is main defined in multiple places somewhere in the compiled code?
Mar 14 2008
Barry Denton wrote:/usr/lib/gcc/i586-suse-linux-gnu/4.1.2/../../../libtango-base-dmd.a(deh2.o): In function `_D4deh213__eh_finddataFPvZPS4deh213DHandlerTable': deh2.d:(.text._D4deh213__eh_finddataFPvZPS4deh213DHandlerTable+0x9): undefined reference to `_deh_beg' deh2.d:(.text._D4deh213__eh_finddataFPvZPS4deh213DHandlerTable+0xe): undefined reference to `_deh_beg' deh2.d:(.text._D4deh213__eh_finddataFPvZPS4deh213DHandlerTable+0x14): undefined reference to `_deh_end' deh2.d:(.text._D4deh213__eh_finddataFPvZPS4deh213DHandlerTable+0x37): undefined reference to `_deh_end' /usr/lib/gcc/i586-suse-linux-gnu/4.1.2/../../../libtango-base-dmd.a(dmain2.o): In function `_D6dmain24mainUiPPaZi7runMainMFZv': dmain2.d:(.text._D6dmain24mainUiPPaZi7runMainMFZv+0x10): undefined reference to `_Dmain'The last message means no valid main() was defined. The other symbols (_deh_beg and _deh_end) are automatically generated by the compiler when main() is compiled, so they will also disappear when main() is linked in. Your D program can't run without a valid main(). Valid declarations are: void main() { ... } void main(char[][] args) { ... } int main() { ... } int main(char[][] args) { ... } (see <http://www.digitalmars.com/d/1.0/function.html> or <http://www.digitalmars.com/d/2.0/function.html>, near the bottom) The calling convention must be extern(D), which is the default if none is specified. I'm not sure if D 2.0 accepts main(string[] args) instead, but in D 1.0 string[] is identical to char[][] and should be accepted. ('args' may have another name, of course)
Mar 14 2008
Frits van Bommel Wrote:Barry Denton wrote:Thanks so . Had main in class , dumb/usr/lib/gcc/i586-suse-linux-gnu/4.1.2/../../../libtango-base-dmd.a(deh2.o): In function `_D4deh213__eh_finddataFPvZPS4deh213DHandlerTable': deh2.d:(.text._D4deh213__eh_finddataFPvZPS4deh213DHandlerTable+0x9): undefined reference to `_deh_beg' deh2.d:(.text._D4deh213__eh_finddataFPvZPS4deh213DHandlerTable+0xe): undefined reference to `_deh_beg' deh2.d:(.text._D4deh213__eh_finddataFPvZPS4deh213DHandlerTable+0x14): undefined reference to `_deh_end' deh2.d:(.text._D4deh213__eh_finddataFPvZPS4deh213DHandlerTable+0x37): undefined reference to `_deh_end' /usr/lib/gcc/i586-suse-linux-gnu/4.1.2/../../../libtango-base-dmd.a(dmain2.o): In function `_D6dmain24mainUiPPaZi7runMainMFZv': dmain2.d:(.text._D6dmain24mainUiPPaZi7runMainMFZv+0x10): undefined reference to `_Dmain'The last message means no valid main() was defined. The other symbols (_deh_beg and _deh_end) are automatically generated by the compiler when main() is compiled, so they will also disappear when main() is linked in. Your D program can't run without a valid main(). Valid declarations are: void main() { ... } void main(char[][] args) { ... } int main() { ... } int main(char[][] args) { ... } (see <http://www.digitalmars.com/d/1.0/function.html> or <http://www.digitalmars.com/d/2.0/function.html>, near the bottom) The calling convention must be extern(D), which is the default if none is specified. I'm not sure if D 2.0 accepts main(string[] args) instead, but in D 1.0 string[] is identical to char[][] and should be accepted. ('args' may have another name, of course)
Mar 14 2008
Barry Denton wrote:Frits van Bommel Wrote:[snip]Barry Denton wrote:dmain2.d:(.text._D6dmain24mainUiPPaZi7runMainMFZv+0x10): undefined reference to `_Dmain'The last message means no valid main() was defined. The other symbolsThanks so . Had main in class , dumbD !is Java :).
Mar 14 2008
Frits van Bommel Wrote:Barry Denton wrote:Thanks so . Had main in class , dumb/usr/lib/gcc/i586-suse-linux-gnu/4.1.2/../../../libtango-base-dmd.a(deh2.o): In function `_D4deh213__eh_finddataFPvZPS4deh213DHandlerTable': deh2.d:(.text._D4deh213__eh_finddataFPvZPS4deh213DHandlerTable+0x9): undefined reference to `_deh_beg' deh2.d:(.text._D4deh213__eh_finddataFPvZPS4deh213DHandlerTable+0xe): undefined reference to `_deh_beg' deh2.d:(.text._D4deh213__eh_finddataFPvZPS4deh213DHandlerTable+0x14): undefined reference to `_deh_end' deh2.d:(.text._D4deh213__eh_finddataFPvZPS4deh213DHandlerTable+0x37): undefined reference to `_deh_end' /usr/lib/gcc/i586-suse-linux-gnu/4.1.2/../../../libtango-base-dmd.a(dmain2.o): In function `_D6dmain24mainUiPPaZi7runMainMFZv': dmain2.d:(.text._D6dmain24mainUiPPaZi7runMainMFZv+0x10): undefined reference to `_Dmain'The last message means no valid main() was defined. The other symbols (_deh_beg and _deh_end) are automatically generated by the compiler when main() is compiled, so they will also disappear when main() is linked in. Your D program can't run without a valid main(). Valid declarations are: void main() { ... } void main(char[][] args) { ... } int main() { ... } int main(char[][] args) { ... } (see <http://www.digitalmars.com/d/1.0/function.html> or <http://www.digitalmars.com/d/2.0/function.html>, near the bottom) The calling convention must be extern(D), which is the default if none is specified. I'm not sure if D 2.0 accepts main(string[] args) instead, but in D 1.0 string[] is identical to char[][] and should be accepted. ('args' may have another name, of course)
Mar 14 2008