View previous topic :: View next topic |
Author |
Message |
tbone
Joined: 05 Nov 2009 Posts: 19
|
Posted: Thu Nov 05, 2009 5:58 pm Post subject: Compiling Problem : undefined identifier importLibs |
|
|
Where is importLibs defined? Looking in gtk/Builder.d, it is used but not defined there, and I can't figure out where it is defined.
gtk/Builder.d:401: Error: undefined identifier importLibs
gtk/Builder.d:401: Error: cannot infer type for lib
Command /usr/local/bin/rebuild returned with code 256, aborting.
Error: Command failed, aborting.
DSSS version 0.75
gcc version 4.1.3 20080428 (prerelease (gdc 0.24, using dmd 1.020))
FreeBSD 8.0-RC2 |
|
Back to top |
|
|
Mike Wey
Joined: 07 May 2007 Posts: 428
|
Posted: Fri Nov 06, 2009 2:40 pm Post subject: |
|
|
gtkc/paths.d but currently only for windows, linux and OSX. |
|
Back to top |
|
|
tbone
Joined: 05 Nov 2009 Posts: 19
|
Posted: Fri Nov 06, 2009 3:03 pm Post subject: |
|
|
Ahh, perfect, thanks.
That gives me a good place to look for other packages that don't like FreeBSD. There are a couple of other small issues I have found in gtkd, once I get this stuff all working and tested, I'll submit a patch. |
|
Back to top |
|
|
Mike Wey
Joined: 07 May 2007 Posts: 428
|
Posted: Fri Nov 06, 2009 3:09 pm Post subject: |
|
|
I've changed the version statements in svn r723 |
|
Back to top |
|
|
tbone
Joined: 05 Nov 2009 Posts: 19
|
Posted: Fri Nov 06, 2009 3:27 pm Post subject: |
|
|
That fixes the compiling problem, but the demos now try to link against -ldl (the dlopen() family is found in -lc in freebsd).
The other issue I had was an issue with demoselect.sh, which assumes bash in is /bin (which really is more of a linux thing then a unix thing). /bin/sh is pretty common for a basic bourne shell.
The syntax can be a little different from bash, but its pretty similar. For my testing I just disable the use of demoselect, but ti might be a problem if you want 'dsss net install gtkd' or similar to work out of the box on FreeBSD (and other unix systems). |
|
Back to top |
|
|
Mike Wey
Joined: 07 May 2007 Posts: 428
|
Posted: Sat Nov 07, 2009 7:04 am Post subject: |
|
|
It should now link with libc on FreeBSD.
svn r724/r725 |
|
Back to top |
|
|
tbone
Joined: 05 Nov 2009 Posts: 19
|
Posted: Sat Nov 07, 2009 10:44 am Post subject: |
|
|
It doesn't seem to like an else block for version without curly brackets.
Changing it to:
version (freebsd) {
} else {
}
works, although I think linking against libdl is a corner case for linux, so version(linux) to link against libdl might be a better solution. |
|
Back to top |
|
|
tbone
Joined: 05 Nov 2009 Posts: 19
|
Posted: Sat Nov 07, 2009 11:04 am Post subject: |
|
|
-ldl keeps creeping in from somewhere and I can't figure out where. I have even removed all occurrences of it from the gtkd tree.
However when manually compiling some of the demos, most (some) of them compile and execute, so the library itself seems to be working fine, its just some of the build stuff that is broken. |
|
Back to top |
|
|
Mike Wey
Joined: 07 May 2007 Posts: 428
|
Posted: Sun Nov 08, 2009 9:38 am Post subject: |
|
|
tbone wrote: | It doesn't seem to like an else block for version without curly brackets.
Changing it to:
version (freebsd) {
} else {
}
works, although I think linking against libdl is a corner case for linux, so version(linux) to link against libdl might be a better solution. |
Changed in svn r727
tbone wrote: | -ldl keeps creeping in from somewhere and I can't figure out where. I have even removed all occurrences of it from the gtkd tree.
However when manually compiling some of the demos, most (some) of them compile and execute, so the library itself seems to be working fine, its just some of the build stuff that is broken. |
The dsss.conf files add -L-ldl to the build flags, but they are in a linux version block. |
|
Back to top |
|
|
tbone
Joined: 05 Nov 2009 Posts: 19
|
Posted: Sun Nov 08, 2009 11:58 am Post subject: |
|
|
Sweet! Works from a fresh check out now. The only thing it is complaining about now is sed syntax in demoselect, which doesn't cause a build error just doesn't update the dsss.conf file properly.
The cairo clock demo segfaults when I close it, but I think it might be a gdc problem (I have seen similar things happen with C gtk apps).
In case you want to look into it, here is a bt:
Code: | #0 0x28a2e300 in ?? ()
#1 0x08206b20 in _D3gtk7Timeout7Timeout4stopMFZv ()
#2 0x08206b56 in _D3gtk7Timeout7Timeout5_dtorMFZv ()
#3 0x08327231 in _d_callfinalizer (p=0x288624a0)
at ../.././../gcc-4.1-20080428/libphobos/internal/gc/gc.d:492
#4 0x08328413 in _D3gcx3Gcx11fullcollectMFPvZk (this=0x28708080, stackTop=0xbfbfea58)
at ../.././../gcc-4.1-20080428/libphobos/internal/gc/gcx.d:1837
#5 0x08328884 in _D3gcx3Gcx16fullcollectshellMFZk (this=0x28708080)
at ../.././../gcc-4.1-20080428/libphobos/internal/gc/gcx.d:1582
#6 0x08329020 in _D3gcx2GC11fullCollectMFZv (this=@0x28707050)
at ../.././../gcc-4.1-20080428/libphobos/internal/gc/gcx.d:766
#7 0x08327890 in _D3gcx2GC18fullCollectNoStackMFZv (this=@0x28707050)
at ../.././../gcc-4.1-20080428/libphobos/internal/gc/gcx.d:784
#8 0x083267b5 in gc_term () at ../.././../gcc-4.1-20080428/libphobos/internal/gc/gc.d:153
#9 0x0832b646 in _d_run_main (argc=1, argv=0xbfbfeb58, main_func=0x8205b74 <_Dmain>)
at ../.././../gcc-4.1-20080428/libphobos/internal/dgccmain2.d:93
#10 0x08329cd8 in main (argc=Error accessing memory address 0x400: Bad address.
) at ../.././../gcc-4.1-20080428/libphobos/internal/cmain.d:5 |
|
|
Back to top |
|
|
|