Welcome, Guest. Please login or register. Did you miss your activation email?

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - mouse_poet

Pages: [1]
D / Re: Trouble Linking DSFML...
« on: February 05, 2015, 11:38:00 pm »
: D that does work, thankyou!! Putting the files from the nightly into /usr/lib also works when building from the command line. DMD and GDC via Code::Blocks still can't find any of the libraries ending in -2... I messed around with both the global and project specific build options but I'm again not really sure what I'm doing and haven't stumbled across a fix for it in my IDE's settings.

Even with libs in /usr/lib GDC gives me the error below and does not output a file.
Code: [Select]
gdc main.d -I/SFML/DSFML-source/src -L-L/SFML/DSFML-source/lib -L-L/SFML/DSFML-nightly -L-ldsfml-graphics-2 -L-ldsfml-window-2 -L-ldsfml-system-2 -L-ldsfml-graphics -L-ldsfml-window -L-ldsfml-system -L-ljpeg -L-lGL -L-lGLU -L-lfreetype -L-lGLEW -L-lX11 -L-lXrandr
/tmp/ccLzt87z.o: In function `_Dmain':
main.d:(.text+0x9f): undefined reference to `_D5dsfml6window9videomode9VideoMode6__ctorMFNckkkZS5dsfml6window9videomode9VideoMode'
main.d:(.text+0xca): undefined reference to `_D5dsfml8graphics12renderwindow12RenderWindow7__ClassZ'
main.d:(.text+0xf6): undefined reference to `_D5dsfml6window15contextsettings15ContextSettings7DefaultxS5dsfml6window15contextsettings15ContextSettings'
main.d:(.text+0x109): undefined reference to `_D5dsfml8graphics12renderwindow12RenderWindow6__ctorMFS5dsfml6window9videomode9VideoModeAyaE5dsfml6window6window6Window5StyleKxS5dsfml6window15contextsettings15ContextSettingsZC5dsfml8graphics12renderwindow12RenderWindow'
main.d:(.text+0x112): undefined reference to `_D5dsfml8graphics11circleshape11CircleShape7__ClassZ'
main.d:(.text+0x12c): undefined reference to `_D5dsfml8graphics11circleshape11CircleShape6__ctorMFfkZC5dsfml8graphics11circleshape11CircleShape'
main.d:(.text+0x14a): undefined reference to `_D5dsfml8graphics5color5Color5GreenyS5dsfml8graphics5color5Color'
main.d:(.text+0x156): undefined reference to `_D5dsfml6system7vector214__T7Vector2TfZ7Vector26__initZ'
main.d:(.text+0x186): undefined reference to `_D5dsfml6system7vector214__T7Vector2TfZ7Vector26__ctorMFNaNbNcNfffZS5dsfml6system7vector214__T7Vector2TfZ7Vector2'
main.d:(.text+0x1c5): undefined reference to `_D5dsfml8graphics11circleshape11CircleShape7__ClassZ'
main.d:(.text+0x1df): undefined reference to `_D5dsfml8graphics11circleshape11CircleShape6__ctorMFfkZC5dsfml8graphics11circleshape11CircleShape'
main.d:(.text+0x1fd): undefined reference to `_D5dsfml8graphics5color5Color4BlueyS5dsfml8graphics5color5Color'
main.d:(.text+0x209): undefined reference to `_D5dsfml6system7vector214__T7Vector2TfZ7Vector26__initZ'
main.d:(.text+0x239): undefined reference to `_D5dsfml6system7vector214__T7Vector2TfZ7Vector26__ctorMFNaNbNcNfffZS5dsfml6system7vector214__T7Vector2TfZ7Vector2'
main.d:(.text+0x278): undefined reference to `_D5dsfml8graphics11circleshape11CircleShape7__ClassZ'
main.d:(.text+0x292): undefined reference to `_D5dsfml8graphics11circleshape11CircleShape6__ctorMFfkZC5dsfml8graphics11circleshape11CircleShape'
main.d:(.text+0x2b0): undefined reference to `_D5dsfml8graphics5color5Color4BlueyS5dsfml8graphics5color5Color'
main.d:(.text+0x2bc): undefined reference to `_D5dsfml6system7vector214__T7Vector2TfZ7Vector26__initZ'
main.d:(.text+0x2ec): undefined reference to `_D5dsfml6system7vector214__T7Vector2TfZ7Vector26__ctorMFNaNbNcNfffZS5dsfml6system7vector214__T7Vector2TfZ7Vector2'
main.d:(.text+0x32b): undefined reference to `_D5dsfml8graphics11circleshape11CircleShape7__ClassZ'
main.d:(.text+0x345): undefined reference to `_D5dsfml8graphics11circleshape11CircleShape6__ctorMFfkZC5dsfml8graphics11circleshape11CircleShape'
main.d:(.text+0x363): undefined reference to `_D5dsfml8graphics5color5Color3RedyS5dsfml8graphics5color5Color'
main.d:(.text+0x36f): undefined reference to `_D5dsfml6system7vector214__T7Vector2TfZ7Vector26__initZ'
main.d:(.text+0x39f): undefined reference to `_D5dsfml6system7vector214__T7Vector2TfZ7Vector26__ctorMFNaNbNcNfffZS5dsfml6system7vector214__T7Vector2TfZ7Vector2'
main.d:(.text+0x3e0): undefined reference to `_D5dsfml6system7vector214__T7Vector2TfZ7Vector26__initZ'
main.d:(.text+0x410): undefined reference to `_D5dsfml6system7vector214__T7Vector2TfZ7Vector26__ctorMFNaNbNcNfffZS5dsfml6system7vector214__T7Vector2TfZ7Vector2'
main.d:(.text+0x41f): undefined reference to `_D5dsfml8graphics14rectangleshape14RectangleShape7__ClassZ'
main.d:(.text+0x43b): undefined reference to `_D5dsfml8graphics14rectangleshape14RectangleShape6__ctorMFS5dsfml6system7vector214__T7Vector2TfZ7Vector2ZC5dsfml8graphics14rectangleshape14RectangleShape'
main.d:(.text+0x459): undefined reference to `_D5dsfml8graphics5color5Color5GreenyS5dsfml8graphics5color5Color'
main.d:(.text+0x465): undefined reference to `_D5dsfml6system7vector214__T7Vector2TfZ7Vector26__initZ'
main.d:(.text+0x495): undefined reference to `_D5dsfml6system7vector214__T7Vector2TfZ7Vector26__ctorMFNaNbNcNfffZS5dsfml6system7vector214__T7Vector2TfZ7Vector2'
main.d:(.text+0x502): undefined reference to `_D5dsfml6window5event5Event6__initZ'
main.d:(.text+0x510): undefined reference to `_D5dsfml6window5event5Event6__initZ'
main.d:(.text+0x58a): undefined reference to `_D5dsfml8graphics5color5Color5BlackyS5dsfml8graphics5color5Color'
main.d:(.text+0x59e): undefined reference to `_D5dsfml8graphics12renderstates12RenderStates7DefaultFNdZS5dsfml8graphics12renderstates12RenderStates'
main.d:(.text+0x634): undefined reference to `_D5dsfml8graphics12renderstates12RenderStates7DefaultFNdZS5dsfml8graphics12renderstates12RenderStates'
main.d:(.text+0x6ca): undefined reference to `_D5dsfml8graphics12renderstates12RenderStates7DefaultFNdZS5dsfml8graphics12renderstates12RenderStates'
main.d:(.text+0x760): undefined reference to `_D5dsfml8graphics12renderstates12RenderStates7DefaultFNdZS5dsfml8graphics12renderstates12RenderStates'
main.d:(.text+0x7f6): undefined reference to `_D5dsfml8graphics12renderstates12RenderStates7DefaultFNdZS5dsfml8graphics12renderstates12RenderStates'
/tmp/ccLzt87z.o:(.data+0x10): undefined reference to `_D5dsfml8graphics12__ModuleInfoZ'
/tmp/ccLzt87z.o:(.data._D87TypeInfo_S3std8typecons50__T10RebindableTyC5dsfml8graphics7texture7TextureZ10Rebindable6__initZ[_D87TypeInfo_S3std8typecons50__T10RebindableTyC5dsfml8graphics7texture7TextureZ10Rebindable6__initZ]+0x38): undefined reference to `_D3std8typecons50__T10RebindableTyC5dsfml8graphics7texture7TextureZ10Rebindable11__xopEqualsFKxS3std8typecons50__T10RebindableTyC5dsfml8graphics7texture7TextureZ10RebindableKxS3std8typecons50__T10RebindableTyC5dsfml8graphics7texture7TextureZ10RebindableZb'
/tmp/ccLzt87z.o:(.data._D85TypeInfo_S3std8typecons48__T10RebindableTyC5dsfml8graphics6shader6ShaderZ10Rebindable6__initZ[_D85TypeInfo_S3std8typecons48__T10RebindableTyC5dsfml8graphics6shader6ShaderZ10Rebindable6__initZ]+0x38): undefined reference to `_D3std8typecons48__T10RebindableTyC5dsfml8graphics6shader6ShaderZ10Rebindable11__xopEqualsFKxS3std8typecons48__T10RebindableTyC5dsfml8graphics6shader6ShaderZ10RebindableKxS3std8typecons48__T10RebindableTyC5dsfml8graphics6shader6ShaderZ10RebindableZb'
/tmp/ccLzt87z.o:(.data._D81TypeInfo_S3std8typecons44__T10RebindableTyC5dsfml8graphics4font4FontZ10Rebindable6__initZ[_D81TypeInfo_S3std8typecons44__T10RebindableTyC5dsfml8graphics4font4FontZ10Rebindable6__initZ]+0x38): undefined reference to `_D3std8typecons44__T10RebindableTyC5dsfml8graphics4font4FontZ10Rebindable11__xopEqualsFKxS3std8typecons44__T10RebindableTyC5dsfml8graphics4font4FontZ10RebindableKxS3std8typecons44__T10RebindableTyC5dsfml8graphics4font4FontZ10RebindableZb'
collect2: error: ld returned 1 exit status

In any case, I now have a way to get it working, so thankyou again!

D / Re: Trouble Linking DSFML...
« on: February 04, 2015, 09:11:39 pm »
So here are my errors right now with the nightlies...

DMD can't find anything and I'm not sure it's paying attention to the directories I've given in my IDE build options settings... manually adding them in the "Other Linker Options" section doesn't change anything.
Code: [Select]
-------------- Build: Debug in d_test_004 (compiler: Digital Mars D Compiler)---------------
dmd -ofbin/Debug/d_test_004  obj/Debug/main.o -L-ldsfml-graphics -L-ldsfml-window -L-ldsfml-system -L-ldsfml-audio -L-ldsfml-network -L-ldsfml-graphics-2 -L-ldsfml-window-2 -L-ldsfml-system-2 -L-ldsfml-audio-2 -L-ldsfml-network-2 -L-lpthread -L-lm -L-lphobos2
/usr/bin/ld: cannot find -ldsfml-graphics
/usr/bin/ld: cannot find -ldsfml-window
/usr/bin/ld: cannot find -ldsfml-system
/usr/bin/ld: cannot find -ldsfml-audio
/usr/bin/ld: cannot find -ldsfml-network
/usr/bin/ld: cannot find -ldsfml-graphics-2
/usr/bin/ld: cannot find -ldsfml-window-2
/usr/bin/ld: cannot find -ldsfml-system-2
/usr/bin/ld: cannot find -ldsfml-audio-2
/usr/bin/ld: cannot find -ldsfml-network-2
collect2: error: ld returned 1 exit status
--- errorlevel 1
GDC can't find the -2 libs.
Code: [Select]
-------------- Build: Debug in d_test_004 (compiler: GDC D Compiler)---------------
gdc -L/SFML/DSFML-nightly -L/usr/lib -o bin/Debug/d_test_004 obj/Debug/main.o   -ldsfml-graphics -ldsfml-window -ldsfml-system -ldsfml-audio -ldsfml-network -ldsfml-graphics-2 -ldsfml-window-2 -ldsfml-system-2 -ldsfml-audio-2 -ldsfml-network-2
/usr/bin/ld: cannot find -ldsfml-graphics-2
/usr/bin/ld: cannot find -ldsfml-window-2
/usr/bin/ld: cannot find -ldsfml-system-2
/usr/bin/ld: cannot find -ldsfml-audio-2
/usr/bin/ld: cannot find -ldsfml-network-2
collect2: error: ld returned 1 exit status
Even manually adding in -L-LDSFML/DIRECTORY etc to the additional options doesn't change the error:
Code: [Select]
gdc -L/SFML/DSFML-nightly -L/usr/lib -o bin/Debug/d_test_004 obj/Debug/main.o  -L-LSFML/DSFML-nightly -ISFML/DSFML-source/src -L-LSFML/DSFML-source/lib  -ldsfml-graphics -ldsfml-window -ldsfml-system -ldsfml-audio -ldsfml-network -ldsfml-graphics-2 -ldsfml-window-2 -ldsfml-system-2 -ldsfml-audio-2 -ldsfml-network-2._____.; Any clue on why it can't find the things? Am I meant to be linking to something else/somewhere else? Am I spelling the names wrong someplace? Am I missing a flag or... I don't even know...

In the terminal this will not give me an error and will create a file.
Code: [Select]
dmd main.d -I/SFML/DSFML-source/src -L-L/SFML/DSFML-source/lib -L-L/SFML/DSFML-nightly -L-ldsfml-graphics-2 -L-ldsfml-window-2 -L-ldsfml-system-2 -L-ldsfml-graphics -L-ldsfml-window -L-ldsfml-system -L-ljpeg -L-lGL -L-lGLU -L-lfreetype -L-lGLEW -L-lX11 -L-lXrandrBut trying to run the resulting file gives me "./main: error while loading shared libraries: libdsfml-graphics.so.2: cannot open shared object file: No such file or directory." Even copying and pasting the file into the directory where main.d resides gives the same message. Trying to run the same code but with GDC instead of DMD gives me a bunch of weird errors of this form:
Code: [Select]
/tmp/ccyf1hbg.o: In function `_Dmain':
main.d:(.text+0x9f): undefined reference to `_D5dsfml6window9videomode9VideoMode6__ctorMFNckkkZS5dsfml6window9videomode9VideoMode'

D / Re: Trouble Linking DSFML...
« on: February 04, 2015, 06:52:14 pm »
The problem I had with the nightlies... I've had trouble getting my compiler to find dsfml-graphics (etc) but able to locate dsfml-graphics-2 (etc), finding neither sets, undefined references, but I'm not sure which problems were with the nightlies and which were with trying other things out. I've kinda been at this a while .__.; and problems with this have been intermittent with compounding problems (I broke my PC editing fstab to run things from my usb among other things, lol). I tried getting dub to work a couple of times and it spat out a bunch of warnings about me using ~master instead of a number and I think I was getting Error 2 when I tried to build a project (I was getting Error 2 at some point at least), I tried again later with a different setup and couldn't even get it to find DSFML with the lflags path...

I'm pretty sure my problem is that I don't know enough about what I'm doing to set this up myself so anything open to interpretation in the docs is being misinterpreted by me and my complete lack of knowledge about compiling anything.

So what I should be doing is...
Do I need the above steps? Doesn't sound like I do but I'll ask just in case.
  • Grabbing the DSFML Linux 64bit Nightly from git https://github.com/Jebbs/DSFML
  • Add the DSFML Nightly folder to my Linker (and/or Compiler) directory in my D project build options
  • Add the following to my Link Libraries in my D project build options:
Boom should work, yes?

D / Trouble Linking DSFML...
« on: February 04, 2015, 10:25:28 am »
I'm having trouble getting DSFML to link up correctly in Code::Blocks on my Linux Mint 17 x64 machine. I've tried building everything from source as per the tutorial(s) because I couldn't get the Nightlies to work, but to be honest I'm not really sure what I'm doing so I could be screwing up there without knowing it. Mainly I think I'm confused about what is referencing what in the tutorials and how I'd translate that to build options in my IDE of choice.

So, just to clarify or correct me:
  • Download or otherwise have on system:
  • Build using guide: https://github.com/Jebbs/DSFML/wiki/Building-DSFML-Libraries-From-Source%28Linux%29
    • Build SFML 2.0 static library as per these instructions http://www.sfml-dev.org/tutorials/2.0/compile-with-cmake.php
      Generator: Unix Makefiles
      Compiler: Default Native
      Uncheck BUILD_SHARED_LIBS for static libs
      (I have no idea where to put -fPIC, make won't accept it, not sure where to put it in the cmake-gui?)
      Run make in the terminal at build location
    • Take file "<SFML static build directory>/cmake/Modules/FindSFML.cmake" and put it in "/usr/share/cmake-2.8/Modules"
    • Build DSFML-C shared library using same technique as for SFML 2.0
      Generator: Unix Makefiles
      Compiler: Default Native
      Don't forget to select a static link to the Standard Libraries again!
      I'm not on Windows so SFML_USE_STATIC_STD_LIBS isn't an option so I can't turn it on... oh well...
      CMake will say that it needs to know where the SFML include directory is, as well as the SFML static libraries. Let the system know the locations of these and you should be all set.
      cmake says none of that .___.; no errors so let's push on...
      Check BUILD_SHARED_LIBS for shared libs (we want these ones to be shared, right??)
      Run make in the terminal at build location
    • Build DFSML using Step 1 of https://github.com/Jebbs/DSFML/wiki/Building-Your-First-DSFML-Program%28Windows%29
      In terminal at <DFSML source directory> run rdmd build.d
  • Setup IDE (Code::Blocks) borrowing info from: https://github.com/Jebbs/DSFML/wiki/Building-Your-First-DSFML-Program%28Windows%29
    • File>>New>>Project>>D application
    • Project>>Build Options
      • Compiler: DMD
      • >>Linker Settings>>Link Libraries
        • dsfml-graphics
        • dsfml-system
        • dsfml-window
        • dsfml-audio
        • dsfml-network
        • dsfml-graphics-2
        • dsfml-system-2
        • dsfml-window-2
        • dsfml-audio-2
        • dsfml-network-2
      • >>Search Directories
        • >>Compiler
          • <DSFML source directory>/src
        • >>Linker
          • <DSFML source directory>/lib
          • <DSFML-C shared lib directory>/lib
    • Add main.d to project
      Add some code to file.
    • Build + Run Project
      All should work? Yes?
    • After weeks of trying and fiddling around with what links where and rebuilding everything ask internet for help...

I'm probably just missing something really simple and I've just misunderstood a part of something somewhere... If someone could show me where I'm going wrong that'd be a big help!

Pages: [1]