Thread overview | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
May 05, 2012 undefined reference - Derelict2 | ||||
---|---|---|---|---|
| ||||
After succesful building of the Derelict libraries using: 'make -flinux.mak DC=dmd', I am unable to compile the provided example code: http://svn.dsource.org/projects/derelict/branches/Derelict2/doc/index.html They look like linker problems to me. rdmd test.d -Iinclude/Derelict2/import/ test.o:(.data+0x10): undefined reference to `_D8derelict6openal2al12__ModuleInfoZ' test.o:(.data+0x18): undefined reference to `_D8derelict6opengl2gl12__ModuleInfoZ' test.o: In function `_Dmain': test.d:(.text._Dmain+0x3d): undefined reference to `_D8derelict6openal2al10DerelictALC8derelict6openal2al16DerelictALLoader' test.d:(.text._Dmain+0x61): undefined reference to `_D8derelict6opengl2gl10DerelictGLC8derelict6opengl2gl16DerelictGLLoader' collect2: ld returned 1 exit status --- errorlevel 1 gdc gave an different kind of error: include/Derelict2/import/derelict/util/compat.di:64: Error: identifier 'c_long' is not defined Using a makefile generated errors similar to those for (r)dmd. dmd 2.059 derelict2 630 |
May 06, 2012 Re: undefined reference - Derelict2 | ||||
---|---|---|---|---|
| ||||
Posted in reply to sergeiV | On Saturday, 5 May 2012 at 23:42:36 UTC, sergeiV wrote: > After succesful building of the Derelict libraries using: 'make > -flinux.mak DC=dmd', I am unable to compile the provided example > code: > http://svn.dsource.org/projects/derelict/branches/Derelict2/doc/index.html > > They look like linker problems to me. > > rdmd test.d -Iinclude/Derelict2/import/ > > test.o:(.data+0x10): undefined reference to > `_D8derelict6openal2al12__ModuleInfoZ' > test.o:(.data+0x18): undefined reference to > `_D8derelict6opengl2gl12__ModuleInfoZ' > test.o: In function `_Dmain': > test.d:(.text._Dmain+0x3d): undefined reference to > `_D8derelict6openal2al10DerelictALC8derelict6openal2al16DerelictALLoader' > test.d:(.text._Dmain+0x61): undefined reference to > `_D8derelict6opengl2gl10DerelictGLC8derelict6opengl2gl16DerelictGLLoader' > collect2: ld returned 1 exit status > --- errorlevel 1 > > gdc gave an different kind of error: > include/Derelict2/import/derelict/util/compat.di:64: Error: > identifier 'c_long' is not defined > > Using a makefile generated errors similar to those for (r)dmd. > > dmd 2.059 > derelict2 630 Solved, missed -of: rdmd -Iinclude/Derelict2/import/ -Linclude/Derelict2/lib/libDerelictAL.a -Linclude/Derelict2/lib/libDerelictUtil.a -ofderelict_test test.d |
May 06, 2012 Re: undefined reference - Derelict2 | ||||
---|---|---|---|---|
| ||||
Posted in reply to sergeiV | On Sunday, 6 May 2012 at 01:23:48 UTC, sergeiV wrote:
> On Saturday, 5 May 2012 at 23:42:36 UTC, sergeiV wrote:
>> After succesful building of the Derelict libraries using: 'make
>> -flinux.mak DC=dmd', I am unable to compile the provided example
>> code:
>> http://svn.dsource.org/projects/derelict/branches/Derelict2/doc/index.html
>>
>> They look like linker problems to me.
>>
>> rdmd test.d -Iinclude/Derelict2/import/
>>
>> test.o:(.data+0x10): undefined reference to
>> `_D8derelict6openal2al12__ModuleInfoZ'
>> test.o:(.data+0x18): undefined reference to
>> `_D8derelict6opengl2gl12__ModuleInfoZ'
>> test.o: In function `_Dmain':
>> test.d:(.text._Dmain+0x3d): undefined reference to
>> `_D8derelict6openal2al10DerelictALC8derelict6openal2al16DerelictALLoader'
>> test.d:(.text._Dmain+0x61): undefined reference to
>> `_D8derelict6opengl2gl10DerelictGLC8derelict6opengl2gl16DerelictGLLoader'
>> collect2: ld returned 1 exit status
>> --- errorlevel 1
>>
>> gdc gave an different kind of error:
>> include/Derelict2/import/derelict/util/compat.di:64: Error:
>> identifier 'c_long' is not defined
>>
>> Using a makefile generated errors similar to those for (r)dmd.
>>
>> dmd 2.059
>> derelict2 630
>
> Solved, missed -of:
> rdmd -Iinclude/Derelict2/import/
> -Linclude/Derelict2/lib/libDerelictAL.a
> -Linclude/Derelict2/lib/libDerelictUtil.a -ofderelict_test test.d
This is ofcourse enough:
rdmd -Iinclude/Derelict2/import/ -oftest test.d
(rdmd -Iinclude/Derelict2/import/ test.d FAILS)
Could anybody explain why an output file specification is necessary?
Or is this a bug?
|
May 06, 2012 Re: undefined reference - Derelict2 | ||||
---|---|---|---|---|
| ||||
Posted in reply to sergeiV | On 2012-05-06 03:43, sergeiV wrote: > This is ofcourse enough: > rdmd -Iinclude/Derelict2/import/ -oftest test.d > (rdmd -Iinclude/Derelict2/import/ test.d FAILS) > > Could anybody explain why an output file specification is necessary? > Or is this a bug? I don't know, you should not need to specify the -of flag. -- /Jacob Carlborg |
May 07, 2012 Re: undefined reference - Derelict2 | ||||
---|---|---|---|---|
| ||||
Posted in reply to sergeiV | On Sunday, 6 May 2012 at 01:23:48 UTC, sergeiV wrote:
>
> Solved, missed -of:
> rdmd -Iinclude/Derelict2/import/
> -Linclude/Derelict2/lib/libDerelictAL.a
> -Linclude/Derelict2/lib/libDerelictUtil.a -ofderelict_test test.d
This is on Linux? Shouldn't it be something like
rdmd -Iinclude/Derelict2/import -L-Linclude/Derelict2/lib -L-lDerelictAL -L-lDerelictUtil -L-ldl test.d
?
|
May 07, 2012 Re: undefined reference - Derelict2 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Stanislav Blinov | > rdmd -Iinclude/Derelict2/import -L-Linclude/Derelict2/lib -L-lDerelictAL -L-lDerelictUtil -L-ldl test.d
Thnx, this works.
Though I was under the impression that the new Derelict2 hierarchy / d interface files in Derelict2/import reduced the neccesity for command line arguments, that is a Derelict related question.
Condsider this solved.
|
May 07, 2012 Re: undefined reference - Derelict2 | ||||
---|---|---|---|---|
| ||||
Posted in reply to sergeiV | > Though I was under the impression that the new Derelict2 hierarchy / d interface files in Derelict2/import reduced the neccesity for command line arguments, that is a Derelict related question.
You may try to use --chatty and compare the output.
|
May 08, 2012 Re: undefined reference - Derelict2 | ||||
---|---|---|---|---|
| ||||
Posted in reply to sergeiV | On 5/7/2012 8:53 PM, sergeiV wrote:
>> rdmd -Iinclude/Derelict2/import -L-Linclude/Derelict2/lib
>> -L-lDerelictAL -L-lDerelictUtil -L-ldl test.d
> Thnx, this works.
>
> Though I was under the impression that the new Derelict2 hierarchy / d
> interface files in Derelict2/import reduced the neccesity for command
> line arguments, that is a Derelict related question.
Well, it does. With all of the imports in a single directory, you don't need to specify multiple import directories. But you will always need to link with the libraries. The import directory doesn't affect that.
|
Copyright © 1999-2021 by the D Language Foundation