Kdevlop gcc option?



  • Hallo,

    Habe mein Projekt in KDevlop geschrieben und hab grad pthreads miteingebaut.
    Das PRoblem ist jetzt nur, dass wenn ich das über gcc kompliieren würde, würde ich folgendes sagen:
    gcc -pthread file.c -o file

    KDevelop jedoch macht das über ./configure make make install
    Nun sollte ich folgendes wissen.

    Wenn ich in mein Projektverzeichnis wechsle und ./configure mache, funktioniert alles prima.
    Wenn ich make mache meldet er mir aber dass es keine Referenz zu pthread gibt. Wie kann ich make mitteilen, was ich bei gcc mit -pthread mache?

    Danke für die Hilfe



  • Keiner?



  • meinst du vielleicht -lpthread?
    also ich weiß jetz nicht genau, was du willst, aber ich denke mal, du möchtest linken.



  • entweder makefile per hand schreiben,
    oder ein make-system nehmen
    (autotools, cmake, etc)



  • Das Makefile wurde schon geschrieben aber ich hab keine Ahnung wo ich das was reinsschreiben muss, um die pthreads zu linken!

    # Makefile.in generated by automake 1.8.5 from Makefile.am.
    # Makefile. Generated from Makefile.in by configure.

    # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
    # 2003, 2004 Free Software Foundation, Inc.
    # This Makefile.in is free software; the Free Software Foundation
    # gives unlimited permission to copy and/or distribute it,
    # with or without modifications, as long as this notice is preserved.

    # This program is distributed in the hope that it will be useful,
    # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
    # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
    # PARTICULAR PURPOSE.

    srcdir = .
    top_srcdir = .

    pkgdatadir = $(datadir)/sis
    pkglibdir = $(libdir)/sis
    pkgincludedir = (includedir)/sistopbuilddir=.am__cd=CDPATH="(includedir)/sis top_builddir = . am\_\_cd = CDPATH="ZSH_VERSION+.{ZSH\_VERSION+.}(PATH_SEPARATOR)" && cd
    INSTALL = /usr/bin/install -c
    install_sh_DATA = $(install_sh) -c -m 644
    install_sh_PROGRAM = $(install_sh) -c
    install_sh_SCRIPT = $(install_sh) -c
    INSTALL_HEADER = $(INSTALL_DATA)
    transform = $(program_transform_name)
    NORMAL_INSTALL = :
    PRE_INSTALL = :
    POST_INSTALL = :
    NORMAL_UNINSTALL = :
    PRE_UNINSTALL = :
    POST_UNINSTALL = :
    host_triplet = i686-pc-linux-gnu
    DIST_COMMON = README $(am__configure_deps) (srcdir)/Makefile.am (srcdir)/Makefile.am \ (srcdir)/Makefile.in (srcdir)/config.h.in (srcdir)/config.h.in \ (top_srcdir)/configure AUTHORS COPYING ChangeLog INSTALL NEWS \
    TODO config.guess config.sub depcomp install-sh ltmain.sh \
    missing mkinstalldirs
    subdir = .
    ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
    am__aclocal_m4_deps = $(top_srcdir)/configure.in
    am__configure_deps = $(am__aclocal_m4_deps) (CONFIGURE_DEPENDENCIES) (CONFIGURE\_DEPENDENCIES) \ (ACLOCAL_M4)
    am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
    configure.lineno configure.status.lineno
    mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
    CONFIG_HEADER = config.h
    CONFIG_CLEAN_FILES =
    SOURCES =
    DIST_SOURCES =
    RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
    html-recursive info-recursive install-data-recursive \
    install-exec-recursive install-info-recursive \
    install-recursive installcheck-recursive installdirs-recursive \
    pdf-recursive ps-recursive uninstall-info-recursive \
    uninstall-recursive
    ETAGS = etags
    CTAGS = ctags
    DIST_SUBDIRS = $(SUBDIRS)
    DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
    distdir = (PACKAGE)(PACKAGE)-(VERSION)
    top_distdir = $(distdir)
    am__remove_distdir = \
    { test ! -d $(distdir) \
    || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
    && rm -fr $(distdir); }; }
    DIST_ARCHIVES = $(distdir).tar.gz
    GZIP_ENV = --best
    distuninstallcheck_listfiles = find . -type f -print
    distcleancheck_listfiles = find . -type f -print
    ACLOCAL = ${SHELL} /home/alexander/Desktop/SIS/missing --run aclocal-1.8
    AMDEP_FALSE = #
    AMDEP_TRUE =
    AMTAR = ${SHELL} /home/alexander/Desktop/SIS/missing --run tar
    AR = ar
    AUTOCONF = ${SHELL} /home/alexander/Desktop/SIS/missing --run autoconf
    AUTOHEADER = ${SHELL} /home/alexander/Desktop/SIS/missing --run autoheader
    AUTOMAKE = ${SHELL} /home/alexander/Desktop/SIS/missing --run automake-1.8
    AWK = mawk
    CC = gcc
    CCDEPMODE = depmode=gcc3
    CFLAGS = -g -O2
    CPP = gcc -E
    CPPFLAGS =
    CXX = g++
    CXXCPP = g++ -E
    CXXDEPMODE = depmode=gcc3
    CXXFLAGS = -g -O2
    CYGPATH_W = echo
    DEFS = -DHAVE_CONFIG_H
    DEPDIR = .deps
    DSYMUTIL =
    ECHO = echo
    ECHO_C =
    ECHO_N = -n
    ECHO_T =
    EGREP = /bin/grep -E
    EXEEXT =
    F77 =
    FFLAGS =
    GREP = /bin/grep
    INSTALL_DATA = ${INSTALL} -m 644
    INSTALL_PROGRAM = ${INSTALL}
    INSTALL_SCRIPT = ${INSTALL}
    INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s
    LDFLAGS =
    LIBOBJS =
    LIBS =
    LIBTOOL = $(SHELL) $(top_builddir)/libtool
    LN_S = ln -s
    LTLIBOBJS =
    MAKEINFO = ${SHELL} /home/alexander/Desktop/SIS/missing --run makeinfo
    NMEDIT =
    OBJEXT = o
    PACKAGE = sis
    PACKAGE_BUGREPORT =
    PACKAGE_NAME =
    PACKAGE_STRING =
    PACKAGE_TARNAME =
    PACKAGE_VERSION =
    PATH_SEPARATOR = :
    RANLIB = ranlib
    SED = /bin/sed
    SET_MAKE =
    SHELL = /bin/bash
    STRIP = strip
    VERSION = 0.1
    ac_ct_CC = gcc
    ac_ct_CXX = g++
    ac_ct_F77 =
    am__fastdepCC_FALSE = #
    am__fastdepCC_TRUE =
    am__fastdepCXX_FALSE = #
    am__fastdepCXX_TRUE =
    am__include = include
    am__leading_dot = .
    am__quote =
    bindir = ${exec_prefix}/bin
    build = i686-pc-linux-gnu
    build_alias =
    build_cpu = i686
    build_os = linux-gnu
    build_vendor = pc
    datadir = ${datarootdir}
    datarootdir = ${prefix}/share
    docdir = datarootdir/doc/{datarootdir}/doc/{PACKAGE}
    dvidir = ${docdir}
    exec_prefix = ${prefix}
    host = i686-pc-linux-gnu
    host_alias =
    host_cpu = i686
    host_os = linux-gnu
    host_vendor = pc
    htmldir = ${docdir}
    includedir = ${prefix}/include
    infodir = ${datarootdir}/info
    install_sh = /home/alexander/Desktop/SIS/install-sh
    libdir = ${exec_prefix}/lib
    libexecdir = ${exec_prefix}/libexec
    localedir = ${datarootdir}/locale
    localstatedir = ${prefix}/var
    mandir = ${datarootdir}/man
    mkdir_p = mkdir -p -- .
    oldincludedir = /usr/include
    pdfdir = ${docdir}
    prefix = /usr/local
    program_transform_name = s,x,x,
    psdir = ${docdir}
    sbindir = ${exec_prefix}/sbin
    sharedstatedir = ${prefix}/com
    sysconfdir = ${prefix}/etc
    target_alias =

    # not a GNU package. You can remove this line, if
    # have all needed files, that a GNU package needs
    AUTOMAKE_OPTIONS = foreign 1.4
    SUBDIRS = src
    all: config.h
    $(MAKE) $(AM_MAKEFLAGS) all-recursive

    .SUFFIXES:
    am--refresh:
    @:
    $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
    @for dep in ?;do case?; do \ case '(am__configure_deps)' in \
    $$dep) \
    echo ' cd $(srcdir) && $(AUTOMAKE) --foreign '; \
    cd $(srcdir) && $(AUTOMAKE) --foreign \
    && exit 0; \
    exit 1;; \
    esac; \
    done; \
    echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
    cd (top_srcdir) && \ (AUTOMAKE) --foreign Makefile
    .PRECIOUS: Makefile
    Makefile: $(srcdir)/Makefile.in (topbuilddir)/config.status@case(top_builddir)/config.status @case '?' in \
    *config.status*) \
    echo ' (SHELL)./config.status; (SHELL) ./config.status'; \ (SHELL) ./config.status;; \
    😉 \
    echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
    cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
    esac;

    $(top_builddir)/config.status: $(top_srcdir)/configure (CONFIG_STATUS_DEPENDENCIES)(CONFIG\_STATUS\_DEPENDENCIES) (SHELL) ./config.status --recheck

    $(top_srcdir)/configure: $(am__configure_deps)
    cd $(srcdir) && (AUTOCONF)(AUTOCONF) (ACLOCAL_M4): $(am__aclocal_m4_deps)
    cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)

    config.h: stamp-h1
    @if test ! -f @;then rmfstamph1; @; then \ rm -f stamp-h1; \ (MAKE) stamp-h1; \
    else :; fi

    stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
    @rm -f stamp-h1
    cd $(top_builddir) && (SHELL)./config.statusconfig.h(SHELL) ./config.status config.h (srcdir)/config.h.in: $(am__configure_deps)
    cd $(top_srcdir) && $(AUTOHEADER)
    rm -f stamp-h1
    touch $@

    distclean-hdr:
    -rm -f config.h stamp-h1

    mostlyclean-libtool:
    -rm -f *.lo

    clean-libtool:
    -rm -rf .libs _libs

    distclean-libtool:
    -rm -f libtool
    uninstall-info-am:

    # This directory's subdirectories are mostly independent; you can cd
    # into them and run make' without going through this Makefile. \# To change the values ofmake' variables: instead of editing Makefiles,
    # (1) if the variable is set in `config.status', edit `config.status'
    # (which will cause the Makefiles to be regenerated when you run make'); \# (2) otherwise, pass the desired values on themake' command line.
    $(RECURSIVE_TARGETS):
    @set fnord $$MAKEFLAGS; amf=$$2; \
    dot_seen=no; \
    target=`echo @ | sed s/-recursive//\`; \ list='(SUBDIRS)'; for subdir in $$list; do \
    echo "Making $$target in $$subdir"; \
    if test "$$subdir" = "."; then \
    dot_seen=yes; \
    local_target="$$target-am"; \
    else \
    local_target="$$target"; \
    fi; \
    (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
    || case "$$amf" in =) exit 1;; *k*) fail=yes;; 😉 exit 1;; esac; \
    done; \
    if test "$$dot_seen" = "no"; then \
    $(MAKE) (AMMAKEFLAGS)"(AM_MAKEFLAGS) "targetam"exit1; fi;testz"target-am" || exit 1; \ fi; test -z "$fail"

    mostlyclean-recursive clean-recursive distclean-recursive \
    maintainer-clean-recursive:
    @set fnord $$MAKEFLAGS; amf=$$2; \
    dot_seen=no; \
    case "@"in distcleanmaintainerclean)list=@" in \ distclean-* | maintainer-clean-*) list='(DIST_SUBDIRS)' ;; \
    😉 list='$(SUBDIRS)' ;; \
    esac; \
    rev=''; for subdir in $$list; do \
    if test "$$subdir" = "."; then :; else \
    rev="$$subdir $$rev"; \
    fi; \
    done; \
    rev="$$rev ."; \
    target=`echo $@ | sed s/-recursive//`; \
    for subdir in $$rev; do \
    echo "Making $$target in $$subdir"; \
    if test "$$subdir" = "."; then \
    local_target="$$target-am"; \
    else \
    local_target="$$target"; \
    fi; \
    (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
    || case "$$amf" in =) exit 1;; *k*) fail=yes;; 😉 exit 1;; esac; \
    done && test -z "$$fail"
    tags-recursive:
    list='$(SUBDIRS)'; for subdir in $$list; do \
    test "$$subdir" = . || (cd $$subdir && $(MAKE) (AMMAKEFLAGS)tags); donectagsrecursive:list=(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='(SUBDIRS)'; for subdir in $$list; do \
    test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
    done

    ID: $(HEADERS) $(SOURCES) $(LISP) (TAGSFILES)list=(TAGS_FILES) list='(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
    unique=for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'; \
    mkid -fID $$unique
    tags: TAGS

    TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in (TAGSDEPENDENCIES) (TAGS_DEPENDENCIES) \ (TAGS_FILES) (LISP) tags=; \ here=\`pwd\`; \ if ((ETAGS) --etags-include --version) >/dev/null 2>&1; then \
    include_option=--etags-include; \
    empty_fix=.; \
    else \
    include_option=--include; \
    empty_fix=; \
    fi; \
    list='$(SUBDIRS)'; for subdir in $$list; do \
    if test "$$subdir" = .; then :; else \
    test ! -f $$subdir/TAGS || \
    tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
    fi; \
    done; \
    list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
    unique=for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'; \
    if test -z "(ETAGSARGS)(ETAGS_ARGS)tagstagsunique";then:;else testn"unique"; then :; else \ test -n "unique"unique=unique" || unique=emptyfix; empty_fix; \ (ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \

    tags $$unique; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ here=\`pwd\`; \ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM\_CTAGSFLAGS) $(CTAGS\_ARGS) \ $$tags $$unique GTAGS: here=`$(am\_\_cd) $(top\_builddir) && pwd` \ && cd $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) $$here distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) $(am\_\_remove\_distdir) mkdir $(distdir) @srcdirstrip=\`echo "$(srcdir)" | sed 's|.|.|g'\`; \ topsrcdirstrip=\`echo "$(top_srcdir)" | sed 's|.|.|g'\`; \ list='$(DISTFILES)'; for file in $$list; do \ case $$file in \ $(srcdir)/*) file=\`echo "$$file" | sed "s|^$$srcdirstrip/||"\`;; \ $(top\_srcdir)/*) file=\`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top\_builddir)/|"\`;; \ esac; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ dir=\`echo "$$file" | sed -e 's,/[^/]*$$,,'\`; \ if test "$$dir" != "$$file" && test "$$dir" != "."; then \ dir="/$$dir"; \ $(mkdir_p) "$(distdir)$$dir"; \ else \ dir=''; \ fi; \ if test -d $$d/$$file; then \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ else \ test -f $(distdir)/$$file \ || cp -p $$d/$$file $(distdir)/$$file \ || exit 1; \ fi; \ done list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ || mkdir "$(distdir)/$$subdir" \ || exit 1; \ (cd $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top\_distdir="../$(top\_distdir)" \ distdir="../$(distdir)/$$subdir" \ distdir) \ || exit 1; \ fi; \ done -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \\; -o \ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \\; -o \ ! -type d ! -perm -400 -exec chmod a+r {} \\; -o \ ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \\; \ || chmod -R a+r $(distdir) dist-gzip: distdir $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am\_\_remove\_distdir) dist-bzip2: distdir $(AMTAR) chof - $(distdir) | bzip2 -9 -c >$(distdir).tar.bz2 $(am\_\_remove\_distdir) dist-tarZ: distdir $(AMTAR) chof - $(distdir) | compress -c >$(distdir).tar.Z $(am\_\_remove\_distdir) dist-shar: distdir shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz $(am\_\_remove\_distdir) dist-zip: distdir -rm -f $(distdir).zip zip -rq $(distdir).zip $(distdir) $(am\_\_remove\_distdir) dist dist-all: distdir $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am\_\_remove\_distdir) \# This target untars the dist file and tries a VPATH configuration. Then \# it guarantees that the distribution is self-contained by making another \# tarfile. distcheck: dist case '$(DIST_ARCHIVES)' in \ *.tar.gz*) \ GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(AMTAR) xf - ;;\ *.tar.bz2*) \ bunzip2 -c $(distdir).tar.bz2 | $(AMTAR) xf - ;;\ *.tar.Z*) \ uncompress -c $(distdir).tar.Z | $(AMTAR) xf - ;;\ *.shar.gz*) \ GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\ *.zip*) \ unzip $(distdir).zip ;;\ esac chmod -R a-w $(distdir); chmod a+w $(distdir) mkdir $(distdir)/_build mkdir $(distdir)/_inst chmod a-w $(distdir) dc\_install\_base=`$(am\_\_cd) $(distdir)/\_inst && pwd | sed -e 's,^[^:\\\/]:[\\\/],/,'` \ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ && cd $(distdir)/_build \ && ../configure --srcdir=.. --prefix="$$dc\_install\_base" \ $(DISTCHECK\_CONFIGURE\_FLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) dvi \ && $(MAKE) $(AM_MAKEFLAGS) check \ && $(MAKE) $(AM_MAKEFLAGS) install \ && $(MAKE) $(AM_MAKEFLAGS) installcheck \ && $(MAKE) $(AM_MAKEFLAGS) uninstall \ && $(MAKE) $(AM\_MAKEFLAGS) distuninstallcheck\_dir="$$dc\_install\_base" \ distuninstallcheck \ && chmod -R a-w "$$dc\_install\_base" \ && ({ \ (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ && $(MAKE) $(AM\_MAKEFLAGS) DESTDIR="$$dc\_destdir" install \ && $(MAKE) $(AM\_MAKEFLAGS) DESTDIR="$$dc\_destdir" uninstall \ && $(MAKE) $(AM\_MAKEFLAGS) DESTDIR="$$dc\_destdir" \ distuninstallcheck\_dir="$$dc\_destdir" distuninstallcheck; \ } || { rm -rf "$$dc_destdir"; exit 1; }) \ && rm -rf "$$dc_destdir" \ && $(MAKE) $(AM_MAKEFLAGS) dist \ && rm -rf $(DIST_ARCHIVES) \ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck $(am\_\_remove\_distdir) @(echo "$(distdir) archives ready for distribution: "; \ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}' distuninstallcheck: @cd $(distuninstallcheck_dir) \ && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \ || { echo "ERROR: files left after uninstall:" ; \ if test -n "$(DESTDIR)"; then \ echo " (check DESTDIR support)"; \ fi ; \ $(distuninstallcheck_listfiles) ; \ exit 1; } >&2 distcleancheck: distclean @if test '$(srcdir)' = . ; then \ echo "ERROR: distcleancheck can only run from a VPATH build" ; \ exit 1 ; \ fi @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ || { echo "ERROR: files left in build directory after distclean:" ; \ $(distcleancheck_listfiles) ; \ exit 1; } >&2 check-am: all-am check: check-recursive all-am: Makefile config.h installdirs: installdirs-recursive installdirs-am: install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-recursive install-strip: $(MAKE) $(AM\_MAKEFLAGS) INSTALL\_PROGRAM="$(INSTALL\_STRIP\_PROGRAM)" \ install\_sh\_PROGRAM="$(INSTALL\_STRIP\_PROGRAM)" INSTALL\_STRIP\_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL\_PROGRAM\_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -rm -f $(CONFIG\_CLEAN\_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-recursive clean-am: clean-generic clean-libtool mostlyclean-am distclean: distclean-recursive -rm -f $(am\_\_CONFIG\_DISTCLEAN_FILES) -rm -f Makefile distclean-am: clean-am distclean-generic distclean-hdr \ distclean-libtool distclean-tags dvi: dvi-recursive dvi-am: html: html-recursive info: info-recursive info-am: install-data-am: install-exec-am: install-info: install-info-recursive install-man: installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f $(am\_\_CONFIG\_DISTCLEAN_FILES) -rm -rf $(top_srcdir)/autom4te.cache -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-generic mostlyclean-libtool pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: uninstall-info-am uninstall-info: uninstall-info-recursive .PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am am--refresh check \ check-am clean clean-generic clean-libtool clean-recursive \ ctags ctags-recursive dist dist-all dist-bzip2 dist-gzip \ dist-shar dist-tarZ dist-zip distcheck distclean \ distclean-generic distclean-hdr distclean-libtool \ distclean-recursive distclean-tags distcleancheck distdir \ distuninstallcheck dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-exec \ install-exec-am install-info install-info-am install-man \ install-strip installcheck installcheck-am installdirs \ installdirs-am maintainer-clean maintainer-clean-generic \ maintainer-clean-recursive mostlyclean mostlyclean-generic \ mostlyclean-libtool mostlyclean-recursive pdf pdf-am ps ps-am \ tags tags-recursive uninstall uninstall-am uninstall-info-am \# Tell versions [3.59,3.63) of GNU make to not export all variables. \# Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT:


  • Es ist wirklich unnötig die autogenerierte Datei hier komplett zu posten 👎

    Die Linker-/Compiler-Optionen kannst du in den Projekteinstellungen manipulieren...



  • Dieser Thread wurde von Moderator/in rüdiger aus dem Forum Linux/Unix in das Forum Compiler- und IDE-Forum verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • Warte bitte noch gerade 3 Wochen bis ich das studiert habe, ich gebe dir dann Antwort.

    KDevelop hat doch eine Doku und kann ganz leicht mit der Maus bedient werden.



  • Hallo, ich habe das gleiche Problem.

    Status: Anfänger 😉

    Kdevelop: Projekt generiert, alles Datein ( configure, makefile ) vorhanden
    In KDevelop kann man benötigte Libs angeben ( -lssl -lpthread ). Mit KDevelop
    kann ich wunderbar das Programm erstellen.

    Erstellung mit ./configure und make:
    configure generiert mir das Makefile wie ich das richtig erkannt habe

    um jetzt zusätzliche Libs anzugeben kann man folgendes schreiben

    $> LIBS=-lssl ./configure
    dabei wird aber nur die ssl-lib in das makefile eingetragen (LIBS = -lssl)

    Wie übergebe ich nun an "configure" mehrer LIBS ?
    $> LIBS=-lssl -lpthread ./configure ~funktioniert nicht~
    configure bemängelt den Parameter -lpthread

    Lasse ich mir das makefile generieren und ergänze per Hand die Zeile LIBS= ...
    ist alles ok soweit, nur müsste das jeder tun der auf seinem System die Quellen
    kompilieren möchte.

    Frage also:
    Wie ist die Syntax um an configure mehrere libs zu übergeben ? *oder*
    Wie könnte ich die benötigten libs gleich in configure mit hinterlegen ?

    Besten Dank und Grüße, RB

    [Edit]
    soeben gelöst:

    ./src/makefile.am
    ProgrammName_LDFLAGS = -lssl -lpthread
    eintragen



  • Trag es einfach in den Projekteinstellungen im Library/Linker-Menü ein und fummel nicht in dem generierten Zeugs von KDevelop rum. Das wird im Zweifelsfall nur überschrieben, bei der nächsten Änderung. Auch das mit configure ist nicht gut. Willst du, dass jeder der dein Code benutzt, erst rausfinden muss, welche Libraries gelinkt werden sollen? => Einfach die Projekteinstellungen anpassen!

    (zur Info
    LIBS='a b' ./configure
    wäre es gewesen)



  • Hallo, danke für den Hinweis.

    ich habe mir vorgestellt, das jemand anderes ohne KDevelop den
    Code kompilieren können sollte. Zunächst hatte ich in KDevelop
    wie Du sagst, die Libraries in den Project-Settings angegeben.

    Beim Versuch das mit make zu kompilieren traten dann aber unauf-
    gelöste Symbole auf. Der Grund meiner Nachforschungen ....

    Trägt man nun die fehlenden Libs in Makefile.am ein muss jemand
    anderses eben nicht herausfinden welche libs benötigt werden und
    configure kann ohne LIBS='...' davor aufgerufen werden. Bei allen
    Projekten die ich so aus fremder Hand bekam war kein KDevelop-Projekt
    mit dabei, immer nur per configure/make zu erstellen.

    Viele Grüße RB, blutiger Anfänger 🙄


Anmelden zum Antworten