elementary-dev-community team mailing list archive
-
elementary-dev-community team
-
Mailing list archive
-
Message #01121
Re: -lm and building the terminal
Well Darcy, that email was @voldyman ;)
Regarding the general issue, I found a way to fix it, thanks to devidfil's
Github link, I just added:
link_libraries (m)
Right before the add_subdirectory call and it's working for everybody now.
On Thu, Sep 13, 2012 at 11:16 AM, Darcy Brás da Silva <
dardevelin@xxxxxxxxxxxxxx> wrote:
> I'm not saying to implement it ourselves. I'm saying to make a vapi to
> have access of it from C <math.h> library in Vala, which is a very
> different thing :)
> On Thu, 2012-09-13 at 09:50 +0100, David Gomes wrote:
> > Implementing Math.floor and Math.ceil ourselves would work, but I'm
> > trying to avoid that for obvious reasons :)
> >
> > On Thu, Sep 13, 2012 at 4:22 AM, Voldyman <voldyman666@xxxxxxxxx>
> > wrote:
> > If we implement Math.floor function in pantheon terminal
> > source wouldn't that work?
> >
> >
> > On 13-Sep-2012, at 3:29 AM, David Gomes
> > <david@xxxxxxxxxxxxxxxx> wrote:
> >
> >
> >
> > > On the terminal we now need Math.floor and Math.ceil for
> > > zooming in and out using Ctrl-+ and Ctrl--.
> > >
> > > This brought along an issue when building the termina:
> > >
> > > /usr/bin/ld:
> > > CMakeFiles/pantheon-terminal.dir/src/TerminalWidget.c.o:
> > > undefined reference to symbol 'floor@@GLIBC_2.2.5'
> > > /usr/bin/ld: note: 'floor@@GLIBC_2.2.5' is defined in
> > > DSO /usr/lib/libm.so.6 so try adding it to the linker
> > > command line
> > > /usr/lib/libm.so.6: could not read symbols: Invalid
> > > operation
> > > collect2: error: ld returned 1 exit status
> > > make[2]: *** [pantheon-terminal] Error 1
> > >
> > > In order to fix this, Ricotz suggested using the "-lm" flag
> > > on the linker. I tried to do it and then it worked just
> > > fine. However, for Victored and Eshat on Ubuntu (Luna), that
> > > made it stop working.
> > >
> > > It seems that on Ubuntu the linker includes lm by default,
> > > and on Arch it doesn't, and reincluding it causes troubles
> > > on Ubuntu.
> > >
> > > On CMakeLists.txt I just added the following to make it
> > > compile:
> > >
> > > set (CMAKE_EXE_LINKER_FLAGS "-lm")
> > >
> > > Either way, I want Pantheon Terminal to compile across all
> > > GNU/Linux distributions, so I need a way to solve this.
> > >
> > > === modified file 'CMakeLists.txt'
> > > --- CMakeLists.txt 2012-07-26 20:23:31 +0000
> > > +++ CMakeLists.txt 2012-09-12 19:18:34 +0000
> > > @@ -30,6 +30,7 @@
> > > find_package(PkgConfig)
> > > pkg_check_modules(DEPS REQUIRED gthread-2.0 gtk+-3.0
> > > granite vte-2.90 libnotify gdk-3.0)
> > >
> > > +set (DEPS_LADD "${DEPS_LADD} -lm")
> > > add_definitions(${DEPS_CFLAGS})
> > >
> > > link_libraries(${DEPS_LIBRARIES})
> > >
> > > Ricotz suggesting the avobe path to fix the issue. I applied
> > > that patch and my patched CMakeLists.txt is attached.
> > > However, with this patch I can't build it on Arch, but
> > > Victored managed to built it on Ubuntu. I get the same good
> > > old error:
> > >
> > > /usr/bin/ld:
> > > CMakeFiles/pantheon-terminal.dir/src/TerminalWidget.c.o:
> > > undefined reference to symbol 'floor@@GLIBC_2.2.5'
> > > /usr/bin/ld: note: 'floor@@GLIBC_2.2.5' is defined in
> > > DSO /usr/lib/libm.so.6 so try adding it to the linker
> > > command line
> > > /usr/lib/libm.so.6: could not read symbols: Invalid
> > > operation
> > > collect2: error: ld returned 1 exit status
> > >
> > > So I'd appreciate some help guys, since I'm fairly new to
> > > CMake. Oh, and this is the branch we're working on:
> > >
> > >
> https://code.launchpad.net/~elementary-dev-community/pantheon-terminal/zoom-in-out
> > >
> > > Thank you.
> > >
> > > <CMakeLists.txt>
> > > --
> > > Mailing list:
> > > https://launchpad.net/~elementary-dev-community
> > > Post to : elementary-dev-community@xxxxxxxxxxxxxxxxxxx
> > > Unsubscribe :
> > > https://launchpad.net/~elementary-dev-community
> > > More help : https://help.launchpad.net/ListHelp
> > >
> >
>
> --
> Darcy Brás da Silva <dardevelin@xxxxxxxxxxxxxx>
>
Follow ups
References