View previous topic :: View next topic |
Author |
Message |
JNewt
Joined: 05 Jun 2008 Posts: 69
|
Posted: Thu Jun 05, 2008 3:09 pm Post subject: Problems building source |
|
|
Since the .zip links on the project's frontpage no longer work, I checked out the latest version of /trunk. From the /trunk/fonts directory, I built buildme.d without problem, however, upon running it I get the following:
Code: | ./buildme -version=useDerelict
dmd -c -op -H -Hdheaders -I../freetype/imports -I../../derelict/DerelictGL -I../../derelict/DerelictGLU -I../../derelict/DerelictUtil -version=useDerelict source/fonts/ftbitmapglyph.d source/fonts/ftsize.d source/fonts/ftcontour.d source/fonts/fttextureglyph.d source/fonts/ftextrdglyph.d source/fonts/ftglpixmapfont.d source/fonts/ftcharmap.d source/fonts/ftvectoriser.d source/fonts/ftpolyglyph.d source/fonts/ftpixmapglyph.d source/fonts/ftfont.d source/fonts/HPGCalc_afm.d source/fonts/ftgltexturefont.d source/fonts/ftchartoglyphindexmap.d source/fonts/ftface.d source/fonts/ftoutlineglyph.d source/fonts/HPGCalc_pfb.d source/fonts/ftgloutlinefont.d source/fonts/ftvector.d source/fonts/testing.d source/fonts/opengl.d source/fonts/ftbbox.d source/fonts/ftglyph.d source/fonts/ftglextrdfont.d source/fonts/ftpoint.d source/fonts/ftlist.d source/fonts/ftglpolygonfont.d source/fonts/ftlibrary.d source/fonts/ftglbitmapfont.d source/fonts/ftglyphcontainer.d
source/fonts/ftpoint.d(4): module freetype cannot read file 'freetype/freetype.d'
Error: AssertError Failure buildme.d(276) Command failed: dmd -c -op -H -Hdheaders -I../freetype/imports -I../../derelict/DerelictGL -I../../derelict/DerelictGLU -I../../derelict/DerelictUtil -version=useDerelict source/fonts/ftbitmapglyph.d source/fonts/ftsize.d source/fonts/ftcontour.d source/fonts/fttextureglyph.d source/fonts/ftextrdglyph.d source/fonts/ftglpixmapfont.d source/fonts/ftcharmap.d source/fonts/ftvectoriser.d source/fonts/ftpolyglyph.d source/fonts/ftpixmapglyph.d source/fonts/ftfont.d source/fonts/HPGCalc_afm.d source/fonts/ftgltexturefont.d source/fonts/ftchartoglyphindexmap.d source/fonts/ftface.d source/fonts/ftoutlineglyph.d source/fonts/HPGCalc_pfb.d source/fonts/ftgloutlinefont.d source/fonts/ftvector.d source/fonts/testing.d source/fonts/opengl.d source/fonts/ftbbox.d source/fonts/ftglyph.d source/fonts/ftglextrdfont.d source/fonts/ftpoint.d source/fonts/ftlist.d source/fonts/ftglpolygonfont.d source/fonts/ftlibrary.d source/fonts/ftglbitmapfont.d source/fonts/ftglyphcontainer.d
|
I'm running dmd.1.029 and the latest version of DSSS on linux. Although I'm just interested in fonts portion of the project, I also tried the trunk buildme. Again, it built but gave an error upon running:
Code: |
dmd buildme.d
./buildme
dmd -c -op -H -Hdheaders -Isource source/gl.d source/glu.d
ar -r gl.a source/glu.o source/gl.o
ar: creating gl.a
rm -rf headers
dmd buildme.d
./buildme
dmd -c -op -H -Hdheaders -Isource -I../gl/imports source/pthreads.d source/glx.d source/x11/xf86vmode.d source/x11/Xlib.d source/x11/Xkeysymdef.d source/x11/keysymdef.d source/x11/Xmd.d source/x11/Xproto.d source/x11/X.d source/x11/Xatom.d source/x11/Xutil.d source/x11/Xlibint.d
ar -r x11.a source/pthreads.o source/glx.o source/x11/Xmd.o source/x11/xf86vmode.o source/x11/keysymdef.o source/x11/X.o source/x11/Xlib.o source/x11/Xutil.o source/x11/Xproto.o source/x11/Xatom.o source/x11/Xlibint.o source/x11/Xkeysymdef.o
ar: creating x11.a
rm -rf headers
dmd buildme.d
./buildme
dmd -c -op -H -Hdheaders -I../gl/imports -I../x11/imports source/gld.d source/gld_/window.d source/gld_/tga.d source/gld_/internal.d source/gld_/glext.d source/gld_/x11/init.d source/gld_/x11/joystick.d source/gld_/x11/window.d source/gld_/x11/time.d source/gld_/x11/sysconf.d source/gld_/x11/platform.d source/gld_/x11/glext.d source/gld_/x11/thread.d source/gld_/x11/fullscreen.d source/gld_/x11/enable.d source/gld_/x11/keysym2unicode.d source/gld_/thread.d source/gld_/enable.d source/gld_/image.d source/gld_/stream.d
ar -r gld.a source/gld.o source/gld_/internal.o source/gld_/image.o source/gld_/thread.o source/gld_/stream.o source/gld_/enable.o source/gld_/glext.o source/gld_/window.o source/gld_/tga.o source/gld_/x11/init.o source/gld_/x11/fullscreen.o source/gld_/x11/time.o source/gld_/x11/thread.o source/gld_/x11/enable.o source/gld_/x11/glext.o source/gld_/x11/keysym2unicode.o source/gld_/x11/window.o source/gld_/x11/joystick.o source/gld_/x11/sysconf.o source/gld_/x11/platform.o
ar: creating gld.a
rm -rf headers
Building examples
dmd -L-L. -L-L../x11 -L-lGL -L-lGLU -L-lphobos -L-lpthread gld.a ../x11/x11.a -I../gl/imports -I../x11/imports -Iimports -oftriangle source/examples/triangle.d -L-lGL -L-lGLU
/usr/bin/ld: cannot find -lGL
collect2: ld returned 1 exit status
--- errorlevel 1
Error: AssertError Failure buildme.d(309) Command failed: dmd -L-L. -L-L../x11 -L-lGL -L-lGLU -L-lphobos -L-lpthread gld.a ../x11/x11.a -I../gl/imports -I../x11/imports -Iimports -oftriangle source/examples/triangle.d -L-lGL -L-lGLU
Error: AssertError Failure buildme.d(63) Command failed: ./buildme
|
Any help would be appreciated. |
|
Back to top |
|
|
baxissimo
Joined: 23 Oct 2006 Posts: 241 Location: Tokyo, Japan
|
Posted: Thu Jun 05, 2008 3:42 pm Post subject: |
|
|
Before too long here, I think I'm going to revamp the schooner package structure. Instead of trying to use top-level module names everywhere, I'd like to put everything at least one level down into a "schooner" package. That will make it play much more nicely with build tools.
Anyway, have you tried building with dsss? I just got finished building on Windows using the dsss.conf provided. That worked. Mostly. The -version=useDerelict vs no useDerelict doesn't work quite right with dsss. |
|
Back to top |
|
|
JNewt
Joined: 05 Jun 2008 Posts: 69
|
Posted: Thu Jun 05, 2008 5:27 pm Post subject: |
|
|
I used dsss build on the trunk and from the output it looked like it built, except that "No config file found and no targets explicitly specified." got tacked on at the end. So I tried a dsss install and got another "No config" message, but dsss lists "schooner" as installed. Haven't tried importing it into a project yet, but looks good. Is schooner-fonts part of schooner or should it show up as a separate item in the install list? |
|
Back to top |
|
|
JNewt
Joined: 05 Jun 2008 Posts: 69
|
Posted: Thu Jun 05, 2008 5:32 pm Post subject: |
|
|
Alright, I tried building ftgldemo.d in the examples dir and got the following message:
Code: | tb.d(94): module gld cannot read file 'gld.d' |
Note that I have derelict installed, but built the whole repository with dsss without the useDerelict option. |
|
Back to top |
|
|
baxissimo
Joined: 23 Oct 2006 Posts: 241 Location: Tokyo, Japan
|
Posted: Thu Jun 05, 2008 6:02 pm Post subject: |
|
|
JNewt wrote: | Alright, I tried building ftgldemo.d in the examples dir and got the following message:
Code: | tb.d(94): module gld cannot read file 'gld.d' |
Note that I have derelict installed, but built the whole repository with dsss without the useDerelict option. |
Ok. I'll fire up my Ubuntu vmware later today and give it a try and let you know what I find. |
|
Back to top |
|
|
baxissimo
Joined: 23 Oct 2006 Posts: 241 Location: Tokyo, Japan
|
Posted: Thu Jun 05, 2008 7:05 pm Post subject: |
|
|
Ok, dsss.conf should work on linux now.
And top-level schooner/dsss.conf should also build the ftgldemo.
I tinkered with the dsss.conf for a while, but I was not able to get the ftgldemo to build on Windows for some reason. Or maybe that was just because I was using -version=useDerelict on Windows, but not on Linux. |
|
Back to top |
|
|
JNewt
Joined: 05 Jun 2008 Posts: 69
|
Posted: Fri Jun 06, 2008 1:25 pm Post subject: |
|
|
I'll give it a try either later today or next week. I really like the flexibility of the fonts code and would like to use it in a current project of mine rather than write my own. Thanks for the help. |
|
Back to top |
|
|
baxissimo
Joined: 23 Oct 2006 Posts: 241 Location: Tokyo, Japan
|
Posted: Wed Jun 25, 2008 7:29 pm Post subject: |
|
|
JNewt wrote: | I'll give it a try either later today or next week. I really like the flexibility of the fonts code and would like to use it in a current project of mine rather than write my own. Thanks for the help. |
You posted again about not being able to build...
Did the ftgldemo not build after the changes I checked in above?
If not what's the output of the compiler / dsss? |
|
Back to top |
|
|
JNewt
Joined: 05 Jun 2008 Posts: 69
|
Posted: Thu Jun 26, 2008 10:52 am Post subject: |
|
|
Alright, I'm at rev 65, which I believe is the most recent.
Code: |
~/workspace/schooner-fonts/trunk$ dsss build
x11 => DD-x11
pthreads.d => pthreads
glx.d => glx
Creating imports for DD-freetype
freetype => DD-freetype
+ /opt/dsss-0.75-dmd-gnuWlinux-x86/bin/rebuild -Idsss_imports/ -I. -S./ -I/opt/dsss-0.75-dmd-gnuWlinux-x86/include/d -S/opt/dsss-0.75-dmd-gnuWlinux-x86/lib/ -I/opt/dsss-0.75-dmd-gnuWlinux-x86/include/d -S/opt/dsss-0.75-dmd-gnuWlinux-x86/lib -I/home/justin/d/include/d -S/home/justin/d/lib -oqdsss_objs/D -explicit -lib freetype/ftxf86.d freetype/ftsnames.d freetype/tttables.d freetype/ftlzw.d freetype/ftimage.d freetype/ftbdf.d freetype/tttags.d freetype/ftwinfnt.d freetype/ftrender.d freetype/ftstroke.d freetype/ftbitmap.d freetype/ftoutln.d freetype/ftmodapi.d freetype/ftotval.d freetype/ttunpat.d freetype/ftsizes.d freetype/fttypes.d freetype/ftgzip.d freetype/internal/ttypes.d freetype/internal/autohint.d freetype/internal/ftdriver.d freetype/internal/ftserv.d freetype/internal/t1types.d freetype/internal/ftmemory.d freetype/internal/pshints.d freetype/internal/ftstream.d freetype/internal/ftrfork.d freetype/internal/tttypes.d freetype/internal/ftgloadr.d freetype/internal/ftcalc.d freetype/internal/internal.d freetype/internal/services/svtteng.d freetype/internal/services/svxf86nm.d freetype/internal/services/svpfr.d freetype/internal/services/svwinfnt.d freetype/internal/services/svgxval.d freetype/internal/services/svpostnm.d freetype/internal/services/svbdf.d freetype/internal/services/svotval.d freetype/internal/services/svpscmap.d freetype/internal/services/svsfnt.d freetype/internal/services/svmm.d freetype/internal/services/svpsinfo.d freetype/internal/services/svttcmap.d freetype/internal/services/svkern.d freetype/internal/services/svgldict.d freetype/internal/ftvalid.d freetype/internal/psaux.d freetype/internal/ftobjs.d freetype/internal/pcftypes.d freetype/internal/sfnt.d freetype/internal/ftdebug.d freetype/ftmoderr.d freetype/ftbbox.d freetype/ftglyph.d freetype/ftsynth.d freetype/ftlist.d freetype/ftmm.d freetype/ftchapters.d freetype/ft2build.d freetype/config/ftheader.d freetype/config/ftconfig.d freetype/config/ftoption.d freetype/config/ftstdlib.d freetype/ftgxval.d freetype/fterrors.d freetype/t1tables.d freetype/fttrigon.d freetype/ttnameid.d freetype/ftincrem.d freetype/freetype.d freetype/ftcache.d freetype/ftsystem.d freetype/ftpfr.d -oflibDD-freetype.a
gl.d => gl
glu.d => glu
Creating imports for gld
Creating imports for gld_
gld.d => gld
+ /opt/dsss-0.75-dmd-gnuWlinux-x86/bin/rebuild -Idsss_imports/ -I. -S./ -I/opt/dsss-0.75-dmd-gnuWlinux-x86/include/d -S/opt/dsss-0.75-dmd-gnuWlinux-x86/lib/ -I/opt/dsss-0.75-dmd-gnuWlinux-x86/include/d -S/opt/dsss-0.75-dmd-gnuWlinux-x86/lib -I/home/justin/d/include/d -S/home/justin/d/lib -oqdsss_objs/D -I../../gl/source -I../../x11/source -explicit -lib gld.d -oflibgld.a
gld_ => gld_
+ /opt/dsss-0.75-dmd-gnuWlinux-x86/bin/rebuild -Idsss_imports/ -I. -S./ -I/opt/dsss-0.75-dmd-gnuWlinux-x86/include/d -S/opt/dsss-0.75-dmd-gnuWlinux-x86/lib/ -I/opt/dsss-0.75-dmd-gnuWlinux-x86/include/d -S/opt/dsss-0.75-dmd-gnuWlinux-x86/lib -I/home/justin/d/include/d -S/home/justin/d/lib -oqdsss_objs/D -I../../gl/source -I../../x11/source -explicit -lib gld_/window.d gld_/tga.d gld_/internal.d gld_/glext.d gld_/x11/init.d gld_/x11/joystick.d gld_/x11/window.d gld_/x11/time.d gld_/x11/sysconf.d gld_/x11/platform.d gld_/x11/glext.d gld_/x11/thread.d gld_/x11/fullscreen.d gld_/x11/enable.d gld_/x11/keysym2unicode.d gld_/thread.d gld_/enable.d gld_/image.d gld_/stream.d -oflibgld_.a
examples/boing.d => boing
+ /opt/dsss-0.75-dmd-gnuWlinux-x86/bin/rebuild -Idsss_imports/ -I. -S./ -I/opt/dsss-0.75-dmd-gnuWlinux-x86/include/d -S/opt/dsss-0.75-dmd-gnuWlinux-x86/lib/ -I/opt/dsss-0.75-dmd-gnuWlinux-x86/include/d -S/opt/dsss-0.75-dmd-gnuWlinux-x86/lib -I/home/justin/d/include/d -S/home/justin/d/lib -oqdsss_objs/D -I../../gl/source -I../../x11/source -llGL -llGLU examples/boing.d -ofboing
/usr/bin/ld: cannot find -lGLU
collect2: ld returned 1 exit status
--- errorlevel 1
Command /opt/dsss-0.75-dmd-gnuWlinux-x86/bin/rebuild returned with code 65280, aborting.
Error: Command failed, aborting.[quote][/quote] |
|
|
Back to top |
|
|
baxissimo
Joined: 23 Oct 2006 Posts: 241 Location: Tokyo, Japan
|
Posted: Thu Jun 26, 2008 11:45 am Post subject: |
|
|
Well, does your system have libGLU on it?
dsss seems to think it doesn't.
That's not a D lib, it's a common system lib that you'll need to build many (but not all) OpenGL programs.
Or maybe libGLU is called something different on your system? |
|
Back to top |
|
|
JNewt
Joined: 05 Jun 2008 Posts: 69
|
Posted: Thu Jun 26, 2008 1:06 pm Post subject: |
|
|
Yeah, I already checked on the libGLU thing. On my system it's actually called libGLU-mesa. Do you know if this requires any changes to Derelict or the schooner source?
In another project using OpenGL & SDL, I'm importing derelict.opengl.glu with no problems. So DSSS knows about GLU, unless Schooner is referencing it in some other way. |
|
Back to top |
|
|
baxissimo
Joined: 23 Oct 2006 Posts: 241 Location: Tokyo, Japan
|
Posted: Thu Jun 26, 2008 1:29 pm Post subject: |
|
|
Hmm, you're importing derelict.opengl.glu you say, but are you actually calling functions in it?
In derelict.opengl.glu it has this:
Code: |
DerelictGLU.setup(
"glu32.dll",
"libGLU.so,libGLU.so.1",
// on Mac, the GLU functions are in the OpenGL framework
"../Frameworks/OpenGL.framework/OpenGL, /Library/Frameworks/OpenGL.framework/OpenGL, /System/Library/Frameworks/OpenGL.framework/OpenGL",
&load
|
So as far as I can tell it does not look for anything called libGLU-mesa either. I'm not too up on Linux shared lib technology. Maybe it's possible that a call to dlopen("libGLU.so,libGLU.so.1") can find libGLU-mesa somehow?
Anyway, apparently static linking is not working for you, so what you need to do is go to schooner/gld/source/dsss.conf and change all the -llGLU to -llGLU-mesa, or else figure out how to get a libGLU on your system. (Like symlink libGLU-mesa.so to libGLU.so or something along those lines.) |
|
Back to top |
|
|
JNewt
Joined: 05 Jun 2008 Posts: 69
|
Posted: Thu Jun 26, 2008 3:22 pm Post subject: |
|
|
I'm calling functions such as DerelictGLU.load() and gluOrtho2D() in my other project, so I think my system knows where to find the right lib. I haven't delved into the schooner source, but I assume it uses the standard Derelict imports. |
|
Back to top |
|
|
JNewt
Joined: 05 Jun 2008 Posts: 69
|
Posted: Fri Jun 27, 2008 12:22 pm Post subject: |
|
|
Well, apparently the fonts stuff was built before the boing example broke things. So I just did a dsss install in the trunk/fonts/source directory. DSSS shows "schooner" in the installed list, so I guess I'll try importing it.
Assuming the imports work, I don't need the examples or other parts of schooner. |
|
Back to top |
|
|
JNewt
Joined: 05 Jun 2008 Posts: 69
|
Posted: Fri Jun 27, 2008 1:32 pm Post subject: |
|
|
Woohoo, I got it working.
For posterity's sake:
--cd into /fonts/source/
--dsss build -version=useDerelict
--dsss install
Also, if you're using Derelict instead of GLD, make sure to specify -L/usr/lib/libfreetype.a
I have it my own test program running and displaying a bitmap font. I am getting a segmentation fault upon closing, but that's another story. |
|
Back to top |
|
|
|