Developer forums (C::B DEVELOPMENT STRICTLY!) > Development

Build Failure: "./auto_revision: Command not found" ( Linux, SVN revision 1542 )

<< < (2/3) > >>

me22:
seems as though $(builddir) contains nothing:

Makefile.am:

--- Quote ---noinst_PROGRAMS = auto_revision
auto_revision_SOURCES = autorevision.cpp

all-local:
        $(builddir)/auto_revision +int +wx +t $(top_srcdir) $(srcdir)/../../sdk/autorevision.h
--- End quote ---

make output:

--- Quote ---Making all in src
make[1]: Entering directory `/var/tmp/portage/codeblocks-svn-1.0/work/codeblocks-svn-1.0/src'
Making all in tools
make[2]: Entering directory `/var/tmp/portage/codeblocks-svn-1.0/work/codeblocks-svn-1.0/src/tools'
Making all in autorevision
make[3]: Entering directory `/var/tmp/portage/codeblocks-svn-1.0/work/codeblocks-svn-1.0/src/tools/autorevision'
i686-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I../../../src/sdk   -I/usr/lib/wx/include/gtk2u-2.4 -DGTK_NO_CHECK_CASTS -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES  -O3 -march=athlon-xp -pipe -fomit-frame-pointer -O2 -ffast-math  -DCB_PRECOMP -Winvalid-pch -fPIC -DPIC -c -o autorevision.o `test -f 'autorevision.cpp' || echo './'`autorevision.cpp
/auto_revision +int +wx +t ../../.. ./../../sdk/autorevision.h
make[3]: /auto_revision: Command not found
make[3]: *** [all-local] Error 127
make[3]: *** Waiting for unfinished jobs....
make[3]: Leaving directory `/var/tmp/portage/codeblocks-svn-1.0/work/codeblocks-svn-1.0/src/tools/autorevision'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/codeblocks-svn-1.0/work/codeblocks-svn-1.0/src/tools'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/codeblocks-svn-1.0/work/codeblocks-svn-1.0/src'
make: *** [all-recursive] Error 1

!!! ERROR: dev-util/codeblocks-svn-1.0 failed.
!!! Function src_compile, Line 31, Exitcode 2
!!! emake failed
!!! If you need support, post the topmost build error, NOT this status message.

--- End quote ---

Is it possible that auto_revision isn't even being generated?

The make line is building an object, not an executable, and I can't find anything with a name auto_revision:

--- Quote ---# find /var/tmp/portage -iname *auto*Revision*
/var/tmp/portage/codeblocks-svn-1.0/work/codeblocks-svn-1.0/src/tools/autorevision
/var/tmp/portage/codeblocks-svn-1.0/work/codeblocks-svn-1.0/src/tools/autorevision/.svn/props/autorevision.cpp.svn-work
/var/tmp/portage/codeblocks-svn-1.0/work/codeblocks-svn-1.0/src/tools/autorevision/.svn/text-base/autorevision.cpp.svn-base
/var/tmp/portage/codeblocks-svn-1.0/work/codeblocks-svn-1.0/src/tools/autorevision/.svn/prop-base/autorevision.cpp.svn-base
/var/tmp/portage/codeblocks-svn-1.0/work/codeblocks-svn-1.0/src/tools/autorevision/autorevision.cpp
/var/tmp/portage/codeblocks-svn-1.0/work/codeblocks-svn-1.0/src/tools/autorevision/autorevision.o
--- End quote ---

thomas:
It is strange that so small a program causes so much grief and pain.

The autorevision only depends on std::string and std::ios and has only one source file. It should be possible to build this?  :shock:



--- Quote from: me22 on December 18, 2005, 10:03:31 pm ---noinst_PROGRAMS = auto_revision
auto_revision_SOURCES = autorevision.cpp
all-local: $(builddir)/auto_revision +int +wx +t $(top_srcdir) $(srcdir)/../../sdk/autorevision.h
--- End quote ---

I know very little about automake (and did not write the makefiles), but for all I know, this should be a 100% good one.

Line 1 tells it "build a program called auto_make, but don't install it anywhere (i.e. leave in the source directory)
Line 2 says "the list of sources to compile is: autorevision.cpp".
Line 3 launches the program which was previously built.

I would expect auto_revision to be found in the same directory as autorevision.cpp. Something that is completely beyond me is why there is the -o autorevision.o switch in the commandline -- where does that come from?

me22:
Well, purely for testing purposes, I tried the following:

--- Quote ---noinst_PROGRAMS = auto_revision
auto_revision_SOURCES = autorevision.cpp

all-local:
        g++ autorevision.cpp -o auto_revision
        ./auto_revision +int +wx +t $(top_srcdir) $(srcdir)/../../sdk/autorevision.h
--- End quote ---
And lo and behold it got through the auto_revision part just fine, so I that the guess about the program not existing was right.  I also don't know enough about autotools to fix this properly, however :|

Afterwards, though, it gets stuck because it picks wx 2.4 instead of wx 2.6 ( I have both installed ) -- how do I fix that one?

mandrav:

--- Quote from: me22 on December 18, 2005, 11:16:14 pm ---Afterwards, though, it gets stuck because it picks wx 2.4 instead of wx 2.6 ( I have both installed ) -- how do I fix that one?

--- End quote ---

There is a switch for configure --with-wx-config or something. ./configure --help should list these options. Just point it to the wx-config you want it to use.

thomas:
I just looked for that one too.... but unluckily it does not show such an option in help.

But... reading configure.in showed this:

--- Quote ---Please check that wx-config is in path, the directory
where wxWidgets libraries are installed (returned by
'wx-config --libs' or 'wx-config --static --libs' command)
is in LD_LIBRARY_PATH or equivalent variable and
wxWindows version is 2.4.2 or above.
--- End quote ---

So it apparently expects wx-config to be in the path.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version