Trevor Harmon
2010-Feb-24 19:04 UTC
[LLVMdev] Trouble with sample project template (Autoconf problem?)
I'm just getting started with an LLVM-based project, using the Sample template as a guide: http://llvm.org/docs/Projects.html#create But I can't even get the Sample project itself to build without errors. It works fine if I do "configure" and then "make", but if I run "AutoRegen.sh" first, then do "configure", I get: configure: error: cannot find install-sh or install.sh in ../../../ autoconf "."/../../../autoconf I noticed that this newly generated configure is substantially different from the pre-generated one provided with LLVM. The former is based on Autoconf 2.63, while the latter is based on Autoconf 2.59 (a somewhat old release from 2003). Also, if I export the sample directory to someplace outside the LLVM source tree, I can get AutoRegen.sh to work, but then "make" fails: $ svn export . ~/sample $ cd ~/sample/autoconf $ ./AutoRegen.sh LLVM source root not found. Enter full path to LLVM source:/Users/twharmon/Development/LLVM/src/ llvm-trunk/llvm Enter full path to LLVM objects (empty for same as source):/Users/ twharmon/Development/LLVM/llvm/ Regenerating aclocal.m4 with aclocal configure.ac:4: warning: AC_INIT: not a literal: [[SAMPLE]] configure.ac:4: warning: AC_INIT: not a literal: [[x.xx]] Regenerating configure with autoconf configure.ac:4: warning: AC_INIT: not a literal: [[SAMPLE]] configure.ac:4: warning: AC_INIT: not a literal: [[x.xx]] $ cd .. configure: creating ./config.status config.status: creating Makefile.common config.status: executing setup commands config.status: executing Makefile commands config.status: executing lib/Makefile commands config.status: executing lib/sample/Makefile commands config.status: executing tools/Makefile commands config.status: executing tools/sample/Makefile commands $ make /Users/twharmon/Development/LLVM/src/llvm-trunk/llvm/ Makefile.common:63: /Users/twharmon/Development/LLVM/llvm// Makefile.config: No such file or directory make: *** No rule to make target `/Users/twharmon/Development/LLVM/ llvm//Makefile.config'. Stop. I'm stuck and would appreciate any help. Thanks, Trevor P.S. This is on Mac OS X with the current LLVM trunk.
Trevor Harmon
2010-Feb-24 19:23 UTC
[LLVMdev] Trouble with sample project template (Autoconf problem?)
On Feb 24, 2010, at 11:04 AM, Trevor Harmon wrote:> $ ./AutoRegen.sh > LLVM source root not found. > Enter full path to LLVM source:/Users/twharmon/Development/LLVM/src/ > llvm-trunk/llvm > Enter full path to LLVM objects (empty for same as source):/Users/ > twharmon/Development/LLVM/llvm/Actually, I think this part is wrong. If I supply the same path as the source, "make" works. But what exactly is meant by "full path to LLVM objects"? I assumed it means the place where LLVM installs to (that is, the --prefix parameter of LLVM's configure), but that doesn't seem to be the case. Trevor
John Criswell
2010-Feb-24 19:30 UTC
[LLVMdev] Trouble with sample project template (Autoconf problem?)
Trevor Harmon wrote:> On Feb 24, 2010, at 11:04 AM, Trevor Harmon wrote: > > >> $ ./AutoRegen.sh >> LLVM source root not found. >> Enter full path to LLVM source:/Users/twharmon/Development/LLVM/src/ >> llvm-trunk/llvm >> Enter full path to LLVM objects (empty for same as source):/Users/ >> twharmon/Development/LLVM/llvm/ >> > > Actually, I think this part is wrong. If I supply the same path as the > source, "make" works. > > But what exactly is meant by "full path to LLVM objects"? I assumed it > means the place where LLVM installs to (that is, the --prefix > parameter of LLVM's configure), but that doesn't seem to be the case. >I believe it is asking for the location of the LLVM object tree. This is the top-level directory in which LLVM places object files during compilation. For autoconf projects, you can place object files into a different directory than source files. For example, if your LLVM source is in /src/llvm, and within the /obj/llvm directory you type: > /src/llvm/configure ..., then /obj/llvm is where the configure script will place all of the Makefiles used to compile LLVM. This is the directory you use to compile LLVM, it is where the object files are placed during the build, and so it is called the Object Tree. The path provided by the --prefix option is the Install Directory. This is where files are placed after a "make install" is run in the Object Tree. -- John T.> Trevor > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >
Reasonably Related Threads
- [LLVMdev] Trouble with sample project template (Autoconf problem?)
- [LLVMdev] Trouble with sample project template (Autoconf problem?)
- [LLVMdev] Trouble with sample project's autoconf
- [LLVMdev] Trouble with sample project's autoconf
- [LLVMdev] Trouble with sample project's autoconf