Bug 2977 - Missing dependencies for castxml
Missing dependencies for castxml
Status: NEEDINFO
Product: bake
Classification: Unclassified
Component: bakeconf.xml
unspecified
All All
: P3 normal
Assigned To: ns-bugs
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2018-08-29 10:24 EDT by Tommaso Pecorella
Modified: 2018-08-29 11:01 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tommaso Pecorella 2018-08-29 10:24:26 EDT
castxml listed dependencies are clang-dev, but also autotools / automake / autoconf are needed.

Not easy to spot, because autotools are needed also by click-dev. As a consequence, one installs them for click and then they're found also by castxml.
Nevertheless, if one "just" checks for castxml, bake erroneously say that it could build it - and then it doesn't.

Nevertheless, even with autotools and automake installed, an error persists.
 >> Building castxml - 
    > mkdir -p /home/pecos/workspace/bake/build/bin
 mkdir /home/pecos/workspace/bake/source/castxml/objdir dir=/home/pecos/workspace/bake/source/castxml
mkdir: cannot create directory '/home/pecos/workspace/bake/source/castxml/objdir': File exists
 cmake /home/pecos/workspace/bake/source/castxml -DCMAKE_INSTALL_PREFIX:PATH=/home/pecos/workspace/bake/build dir=/home/pecos/workspace/bake/source/castxml/objdir
-- Configuring done
-- Generating done
-- Build files have been written to: /home/pecos/workspace/bake/source/castxml/objdir
 make dir=/home/pecos/workspace/bake/source/castxml/objdir
[ 10%] Linking CXX executable ../bin/castxml
CMakeFiles/castxml.dir/Detect.cxx.o: In function `setTriple(Options&)':
Detect.cxx:(.text+0x2ba): undefined reference to `llvm::sys::getDefaultTargetTriple()'
CMakeFiles/castxml.dir/RunClang.cxx.o: In function `runClangImpl(char const* const*, char const* const*, Options const&)':
RunClang.cxx:(.text+0x60e): undefined reference to `llvm::sys::getDefaultTargetTriple()'
CMakeFiles/castxml.dir/Utils.cxx.o: In function `GetMainExecutable(char const*)':
Utils.cxx:(.text+0x24): undefined reference to `llvm::sys::fs::getMainExecutable(char const*, void*)'
CMakeFiles/castxml.dir/Utils.cxx.o: In function `runCommand(int, char const* const*, int&, std::string&, std::string&, std::string&)':
Utils.cxx:(.text+0x8b1): undefined reference to `llvm::sys::findProgramByName(llvm::StringRef, llvm::ArrayRef<llvm::StringRef>)'
Utils.cxx:(.text+0xc80): undefined reference to `llvm::sys::ExecuteAndWait(llvm::StringRef, char const**, char const**, llvm::StringRef const**, unsigned int, unsigned int, std::string*, bool*)'
collect2: error: ld returned 1 exit status
src/CMakeFiles/castxml.dir/build.make:359: recipe for target 'bin/castxml' failed
make[2]: *** [bin/castxml] Error 1
CMakeFiles/Makefile2:981: recipe for target 'src/CMakeFiles/castxml.dir/all' failed
make[1]: *** [src/CMakeFiles/castxml.dir/all] Error 2
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2
()
 >> Building castxml - Problem
Comment 1 Tom Henderson 2018-08-29 10:40:03 EDT
(In reply to Tommaso Pecorella from comment #0)
> castxml listed dependencies are clang-dev, but also autotools / automake /
> autoconf are needed.
> 
> Not easy to spot, because autotools are needed also by click-dev. As a
> consequence, one installs them for click and then they're found also by
> castxml.
> Nevertheless, if one "just" checks for castxml, bake erroneously say that it
> could build it - and then it doesn't.

OK, this is easy to fix; will do so shortly.

> 
> Nevertheless, even with autotools and automake installed, an error persists.

Can you clarify, is this a general issue with castxml building on MacOS, or is it just that the way that castxml is configured to build is wrong?

I am not sure whether anyone has reported success in building castxml on MacOS yet?
Comment 2 Tommaso Pecorella 2018-08-29 10:59:50 EDT
(In reply to Tom Henderson from comment #1)
> (In reply to Tommaso Pecorella from comment #0)
> > castxml listed dependencies are clang-dev, but also autotools / automake /
> > autoconf are needed.
> > 
> > Not easy to spot, because autotools are needed also by click-dev. As a
> > consequence, one installs them for click and then they're found also by
> > castxml.
> > Nevertheless, if one "just" checks for castxml, bake erroneously say that it
> > could build it - and then it doesn't.
> 
> OK, this is easy to fix; will do so shortly.
> 
> > 
> > Nevertheless, even with autotools and automake installed, an error persists.
> 
> Can you clarify, is this a general issue with castxml building on MacOS, or
> is it just that the way that castxml is configured to build is wrong?
> 
> I am not sure whether anyone has reported success in building castxml on
> MacOS yet?

That was Linux Mint (latest version), sorry.
Trying Ubuntu 18.04 now, with similar issues. As an example, make is needed but not signalled as needed.
Comment 3 Tommaso Pecorella 2018-08-29 11:01:22 EDT
Oh... and on Ubuntu 18.04 bake fails to detect setuptools because it searches for easy_install. However easy_install is not anymore part of the setuptools package.