[opensuse-packaging] kqlives
Package: kqlives Project: home:saigkill Hello Mates, i have build dumb and now im try to build kqlives. But if configure runs, i have the result: checking for dumb_exit in -ldumb... no. Has anyone an Idea, how to fix it? -- Sincereley yours Sascha Manns openSUSE Marketing Team openSUSE Build Service openSUSE Features Screening Team Web: http://saschamanns.gulli.to Project-Blog: http://lizards.opensuse.org/author/saigkill Private-Blog: http://saschasbacktrace.blogspot.com -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
Hi, On Wed, Apr 01, 2009 at 11:14:13PM +0200, Sascha 'saigkill' Manns wrote:
Package: kqlives Project: home:saigkill
Hello Mates,
i have build dumb and now im try to build kqlives. But if configure runs, i have the result: checking for dumb_exit in -ldumb... no. Has anyone an Idea, how to fix it?
From the config.log:
configure:14404: checking for dumb_exit in -ldumb configure:14439: gcc -o conftest -g -O2 conftest.c -ldumb >&5 /usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../lib64/libdumb.so: undefined reference to `floor' /usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../lib64/libdumb.so: undefined reference to `trunc' /usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../lib64/libdumb.so: undefined reference to `log' /usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../lib64/libdumb.so: undefined reference to `exp' /usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../lib64/libdumb.so: undefined reference to `pow' collect2: ld returned 1 exit status So you could fix that by the following patch (to configure.ac): --- kq-src-20080202/configure.ac2008-02-02 21:33:02.000000000 +0100 +++ /var/tmp/build-root/usr/src/packages/BUILD/kq-src-20080202/configure.ac20082009-04-02 12:37:34.495998263 +0200 @@ -79,7 +79,7 @@ # Checks for libraries and library functions. AC_CHECK_FUNCS([atexit gettimeofday memmove memset mkdir pow strchr strstr]) -AC_CHECK_LIB(dumb, dumb_exit, [ALLEGRO_LIBS="-ldumb $ALLEGRO_LIBS"], [AC_MSG_ERROR([Dumb not found])]) +AC_CHECK_LIB(dumb, dumb_exit, [ALLEGRO_LIBS="-ldumb $ALLEGRO_LIBS"], [AC_MSG_ERROR([Dumb not found])], -lm) AX_CHECK_ALDUMB([ALLEGRO_LIBS="-laldmb $ALLEGRO_LIBS"], [AC_MSG_ERROR([Aldumb not found])], [$ALLEGRO_LIBS]) AC_SEARCH_LIBS(lua_gettop, lua50 lua5.1 lua, [], [AC_MSG_ERROR([Lua not found])]) HTH -- Best regards / s pozdravem Petr Uzel, Packages maintainer --------------------------------------------------------------------- SUSE LINUX, s.r.o. e-mail: puzel@suse.cz Lihovarská 1060/12 tel: +420 284 028 964 190 00 Prague 9 fax: +420 284 028 951 Czech Republic http://www.suse.cz -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
Hello Petr, On Donnerstag 02 April 2009 12:47:17 Petr Uzel wrote: > So you could fix that by the following patch (to configure.ac): > > --- kq-src-20080202/configure.ac2008-02-02 21:33:02.000000000 +0100 > +++ > /var/tmp/build-root/usr/src/packages/BUILD/kq-src-20080202/configure. >ac20082009-04-02 12:37:34.495998263 +0200 > @@ -79,7 +79,7 @@ > > # Checks for libraries and library functions. > AC_CHECK_FUNCS([atexit gettimeofday memmove memset mkdir pow strchr > strstr]) -AC_CHECK_LIB(dumb, dumb_exit, [ALLEGRO_LIBS="-ldumb > $ALLEGRO_LIBS"], [AC_MSG_ERROR([Dumb not found])]) > +AC_CHECK_LIB(dumb, dumb_exit, [ALLEGRO_LIBS="-ldumb $ALLEGRO_LIBS"], > [AC_MSG_ERROR([Dumb not found])], -lm) > AX_CHECK_ALDUMB([ALLEGRO_LIBS="-laldmb $ALLEGRO_LIBS"], > [AC_MSG_ERROR([Aldumb not found])], [$ALLEGRO_LIBS]) > AC_SEARCH_LIBS(lua_gettop, lua50 lua5.1 lua, [], [AC_MSG_ERROR([Lua > not found])]) I've generated the Patch (attached). But osc says: + echo 'Patch #1 (kqlives-dumb_exit.patch):' Patch #1 (kqlives-dumb_exit.patch): + patch -p1 -s 1 out of 1 hunk FAILED -- saving rejects to file configure.ac.rej What is false with my Patch? I've used: diff -uNrp kq-src-20080202/configure.ac kq-src-20080202p/configure.ac -- Sincereley yours Sascha Manns openSUSE Marketing Team openSUSE Build Service openSUSE Features Screening Team Web: http://saschamanns.gulli.to Project-Blog: http://lizards.opensuse.org/author/saigkill Private-Blog: http://saschasbacktrace.blogspot.com
On Thu, Apr 02, 2009 at 02:22:40PM +0200, Sascha 'saigkill' Manns wrote:
Hello Petr,
Hi,
On Donnerstag 02 April 2009 12:47:17 Petr Uzel wrote: I've generated the Patch (attached). But osc says: + echo 'Patch #1 (kqlives-dumb_exit.patch):' Patch #1 (kqlives-dumb_exit.patch): + patch -p1 -s 1 out of 1 hunk FAILED -- saving rejects to file configure.ac.rej What is false with my Patch? I've used: diff -uNrp kq-src-20080202/configure.ac kq-src-20080202p/configure.ac
Ouch, previously I did not notice that there is already a patch which modifies the same line in configure.ac - so the changes conflict. I think you can just replace the existing patch with the new one.
diff -uNrp kq-src-20080202/configure.ac kq-src-20080202p/configure.ac --- kq-src-20080202/configure.ac 2008-02-02 21:33:02.000000000 +0100 +++ kq-src-20080202p/configure.ac 2009-04-02 14:11:28.000000000 +0200 @@ -79,7 +79,7 @@ AC_SUBST(WARNING_CFLAGS)
# Checks for libraries and library functions. AC_CHECK_FUNCS([atexit gettimeofday memmove memset mkdir pow strchr strstr]) -AC_CHECK_LIB(dumb, dumb_exit, [ALLEGRO_LIBS="-ldumb $ALLEGRO_LIBS"], [AC_MSG_ERROR([Dumb not found])]) +AC_CHECK_LIB(dumb, dumb_exit, [ALLEGRO_LIBS="-ldumb -lm $ALLEGRO_LIBS"], [AC_MSG_ERROR([Dumb not found])] -lm) AX_CHECK_ALDUMB([ALLEGRO_LIBS="-laldmb $ALLEGRO_LIBS"], [AC_MSG_ERROR([Aldumb not found])], [$ALLEGRO_LIBS]) AC_SEARCH_LIBS(lua_gettop, lua50 lua5.1 lua, [], [AC_MSG_ERROR([Lua not found])])
HTH -- Best regards / s pozdravem Petr Uzel, Packages maintainer --------------------------------------------------------------------- SUSE LINUX, s.r.o. e-mail: puzel@suse.cz Lihovarská 1060/12 tel: +420 284 028 964 190 00 Prague 9 fax: +420 284 028 951 Czech Republic http://www.suse.cz -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
On Donnerstag 02 April 2009 14:46:55 Petr Uzel wrote:
On Thu, Apr 02, 2009 at 02:22:40PM +0200, Sascha 'saigkill' Manns wrote:
Hello Petr,
Hi,
On Donnerstag 02 April 2009 12:47:17 Petr Uzel wrote: I've generated the Patch (attached). But osc says: + echo 'Patch #1 (kqlives-dumb_exit.patch):' Patch #1 (kqlives-dumb_exit.patch): + patch -p1 -s 1 out of 1 hunk FAILED -- saving rejects to file configure.ac.rej What is false with my Patch? I've used: diff -uNrp kq-src-20080202/configure.ac kq-src-20080202p/configure.ac
Ouch, previously I did not notice that there is already a patch which modifies the same line in configure.ac - so the changes conflict. I think you can just replace the existing patch with the new one. Tahat was it. After merging the 2 Files the configure runs. But configure broke on the same place. He gives me an error with -lm. After remove -lm the configure break. Then he says me,: checking for dumb_exit in -ldumb... no.
I installed my dumb Package, and after install, i tried: # ls /usr/lib64/*d*mb* /usr/lib64/libaldmb-0.9.3.so /usr/lib64/libaldmb.so /usr/lib64/libdumb-0.9.3.so /usr/lib64/libdumb.so # strings /usr/lib64/d*mb* | grep dumb_exit sascha@linux-eh47:~/osc/home:saigkill/kqlives> strings -f /usr/lib64/*d*mb* | grep dumb_exit /usr/lib64/libdumb-0.9.3.so: dumb_exit /usr/lib64/libdumb.so: dumb_exit ^^^^^^^^^^^ I think that means, that dumb_exit are present. Is it possible, that kqlives only looks in /lib and not in /lib64? -- Sincereley yours Sascha Manns openSUSE Marketing Team openSUSE Build Service openSUSE Features Screening Team Web: http://saschamanns.gulli.to Project-Blog: http://lizards.opensuse.org/author/saigkill Private-Blog: http://saschasbacktrace.blogspot.com -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
* Sascha 'saigkill' Manns (samannsml@directbox.com) [20090402 15:23]:
configure broke on the same place. He gives me an error with -lm. After remove -lm the configure break. Then he says me,: checking for dumb_exit in -ldumb... no.
The error is in your kqlives-ldumb.patch. The crucial lines must look like this: -AC_CHECK_LIB(dumb, dumb_exit, [ALLEGRO_LIBS="-ldumb $ALLEGRO_LIBS"], - [AC_MSG_ERROR([Dumb not found])]) +AC_CHECK_LIB(dumb, dumb_exit, [ALLEGRO_LIBS="-ldumb -lm $ALLEGRO_LIBS"], - [AC_MSG_ERROR([Dumb not found])], -lm) i.e. you *have* to add the -lm as another paramter to AC_CHECK_LIB. See »info '(autoconf.info.gz)Libraries'« for an explanation why this is necessary. Philipp -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
On Donnerstag 02 April 2009 16:10:43 Philipp Thomas wrote:
* Sascha 'saigkill' Manns (samannsml@directbox.com) [20090402 15:23]:
configure broke on the same place. He gives me an error with -lm. After remove -lm the configure break. Then he says me,: checking for dumb_exit in -ldumb... no.
The error is in your kqlives-ldumb.patch. The crucial lines must look like this:
-AC_CHECK_LIB(dumb, dumb_exit, [ALLEGRO_LIBS="-ldumb $ALLEGRO_LIBS"], - [AC_MSG_ERROR([Dumb not found])]) +AC_CHECK_LIB(dumb, dumb_exit, [ALLEGRO_LIBS="-ldumb -lm $ALLEGRO_LIBS"], - [AC_MSG_ERROR([Dumb not found])], -lm)
i.e. you *have* to add the -lm as another paramter to AC_CHECK_LIB. See »info '(autoconf.info.gz)Libraries'« for an explanation why this is necessary. That was an good Idea. With them the build runs. But i become the following compiler warnings: I: Function call uses possibly exploitable format strings W: kqlives format-security maps/mapdiff.c:142, 685, 686, 784 W: kqlives format-security maps/mapdump.c:99 W: kqlives format-security maps/mapedit.c:1298, 2102 W: kqlives format-security maps/mapshared.c:291
I: Statement is overflowing a buffer E: kqlives bufferoverflow src/intrface.c:1048 I: Statement might be overflowing a buffer in strncat. Common mistake: BAD: strncat(buffer,charptr,sizeof(buffer)) is wrong, it takes the left over size as 3rd argument GOOD: strncat(buffer,charptr,sizeof(buffer)-strlen(buffer)-1) E: kqlives bufferoverflowstrncat src/movement.c:113 What is to do? -- Sincereley yours Sascha Manns openSUSE Marketing Team openSUSE Build Service openSUSE Features Screening Team Web: http://saschamanns.gulli.to Project-Blog: http://lizards.opensuse.org/author/saigkill Private-Blog: http://saschasbacktrace.blogspot.com -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
On Thu, 2 Apr 2009 17:31:34 +0200, you wrote:
What is to do?
Fix the code as these are coding errors :) I'll have a look at it tomorrow and will make a callaboration request, i.e. send you a patch. Philipp -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
On Thu, Apr 02, 2009 at 03:24:23PM +0200, Sascha 'saigkill' Manns wrote:
Tahat was it. After merging the 2 Files the configure runs. But configure broke on the same place. He gives me an error with -lm. After remove -lm the configure break. Then he says me,: checking for dumb_exit in -ldumb... no.
I installed my dumb Package, and after install, i tried: # ls /usr/lib64/*d*mb* /usr/lib64/libaldmb-0.9.3.so /usr/lib64/libaldmb.so /usr/lib64/libdumb-0.9.3.so /usr/lib64/libdumb.so # strings /usr/lib64/d*mb* | grep dumb_exit sascha@linux-eh47:~/osc/home:saigkill/kqlives> strings -f /usr/lib64/*d*mb* | grep dumb_exit /usr/lib64/libdumb-0.9.3.so: dumb_exit /usr/lib64/libdumb.so: dumb_exit ^^^^^^^^^^^ I think that means, that dumb_exit are present.
Hi, it works for me - see submit request #8613 -- Best regards / s pozdravem Petr Uzel, Packages maintainer --------------------------------------------------------------------- SUSE LINUX, s.r.o. e-mail: puzel@suse.cz Lihovarská 1060/12 tel: +420 284 028 964 190 00 Prague 9 fax: +420 284 028 951 Czech Republic http://www.suse.cz -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
On Mittwoch 01 April 2009 23:14:13 Sascha 'saigkill' Manns wrote:
Package: kqlives Project: home:saigkill
Hello Mates, actually i become the error: kqlives.x86_64: W: executable-stack /usr/bin/mapdump kqlives.x86_64: W: executable-stack /usr/bin/kq kqlives.x86_64: W: executable-stack /usr/bin/mapdraw kqlives.x86_64: W: executable-stack /usr/bin/mapdiff The binary declares the stack as executable. Executable stack is usually an error as it is only needed if the code contains GCC trampolines or similar constructs which uses code on the stack. One common source for needlessly executable stack cases are object files built from assembler files which don't define a proper .note.GNU-stack section. I know, that i have fixed an similar error in dumb. To fix this i've added: -dumbplay_LDFLAGS = +dumbplay_LDFLAGS = -Wl,-z,noexecstack. This fix was in /examples/Makefile.in. But in my Makefile.in (kqlives) i don't find an Place similar to the other fix. Has anyone an idea, on which place it must fixed? -- Sincereley yours Sascha Manns openSUSE Marketing Team openSUSE Build Service openSUSE Features Screening Team Web: http://saschamanns.gulli.to Project-Blog: http://lizards.opensuse.org/author/saigkill Private-Blog: http://saschasbacktrace.blogspot.com -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
On Dienstag 07 April 2009 14:30:08 Sascha 'saigkill' Manns wrote:
On Mittwoch 01 April 2009 23:14:13 Sascha 'saigkill' Manns wrote:
Package: kqlives Project: home:saigkill
Hello Mates,
actually i become the error: kqlives.x86_64: W: executable-stack /usr/bin/mapdump kqlives.x86_64: W: executable-stack /usr/bin/kq kqlives.x86_64: W: executable-stack /usr/bin/mapdraw kqlives.x86_64: W: executable-stack /usr/bin/mapdiff The binary declares the stack as executable. Executable stack is usually an error as it is only needed if the code contains GCC trampolines or similar constructs which uses code on the stack. One common source for needlessly executable stack cases are object files built from assembler files which don't define a proper .note.GNU-stack section.
I know, that i have fixed an similar error in dumb. To fix this i've added: -dumbplay_LDFLAGS = +dumbplay_LDFLAGS = -Wl,-z,noexecstack. This fix was in /examples/Makefile.in.
But in my Makefile.in (kqlives) i don't find an Place similar to the other fix. Has anyone an idea, on which place it must fixed? I found it out. I add: %configure --enable-cheats CFLAGS="%{optflags}" OBJCFLAGS="%{optflags}" LDFLAGS="-Wl,-z,noexecstack" and this just works :-)
-- Sincereley yours Sascha Manns openSUSE Marketing Team openSUSE Build Service openSUSE Features Screening Team Web: http://saschamanns.gulli.to Project-Blog: http://lizards.opensuse.org/author/saigkill Private-Blog: http://saschasbacktrace.blogspot.com -- To unsubscribe, e-mail: opensuse-packaging+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-packaging+help@opensuse.org
participants (4)
-
Petr Uzel
-
Philipp Thomas
-
Philipp Thomas
-
Sascha 'saigkill' Manns