Apollo: Could not launch module monitor. Is it already built?

Created on 30 Oct 2018  ·  11Comments  ·  Source: ApolloAuto/apollo

System information

Ubuntu 14.04.5 LTS
Apollo installed from source
Apollo version 3.0

Steps to reproduce the issue:

git clone [email protected]:ApolloAuto/apollo.git
cd apollo
bash docker/scripts/dev_start.sh
bash docker/scripts/dev_into.sh
bash apollo.sh build
bash scripts/bootstrap.sh

image

I try to do this:
docker rm [container id]
docker rmi [image id]
git pull origin master
bash docker/scripts/dev_start.sh
bash docker/scripts/dev_into.sh
bash apollo.sh build

It's not work. And I try to do this:
bash apollo.sh clean
bash apollo.sh build

It's still not work.

The error:
Start roscore...
Could not launch module monitor. Is it already built?
Could not launch module dreamview. Is it already built?

Please help me.

Monitor Help wanted

Most helpful comment

@natashadsouza I found the 2 binaries exactly in the path you said, but the scripts/bootstrap.sh seem to look up in /modules/{dreamview,monitor} path to run the modules. By brute force, I manually copied the binaries in their respective path and it worked. However, I have no idea if the bazel-bin/modules path should be a symlink to /modules or if something went wrong and the binaries aren't get copied.

So just to make things simpler to anyone facing this issue:

cp /apollo/bazel-bin/modules/monitor/monitor /apollo/modules/monitor
cp /apollo/bazel-bin/modules/dreamview/dreamview /apollo/modules/dreamview

Then just run bash scripts/bootstrap.sh again and it will work.

All 11 comments

same question

Check the environment variable APOLLO_BASE_SOURCED.
If this variable is defined, module binary path is not set correctly.

See
https://github.com/ApolloAuto/apollo/blob/23b726544d268e969bca4a3955ca65c91cc4c84a/scripts/apollo_base.sh#L429

Check the environment variable APOLLO_BASE_SOURCED.
If this variable is defined, module binary path is not set correctly.

See
apollo/scripts/apollo_base.sh

Line 429 in 23b7265

export APOLLO_BASE_SOURCED=1

Check the environment variable APOLLO_BASE_SOURCED.
If this variable is defined, module binary path is not set correctly.

See
apollo/scripts/apollo_base.sh

Line 429 in 23b7265

export APOLLO_BASE_SOURCED=1

There is no environment variable APOLLO_BASE_SOURCED in ~/.bashrc file.

Same question,look forward to solution!

@yangbo524 @HongweiSunny
I changed the system. Previous system:
uname -r 3.13.0-24-generic
cat /etc/issue Ubuntu 14.04.5 LTS \n \l
and Current system:
uname -r 4.13.0-32-generic
cat /etc/issue Ubuntu 16.04.3 LTS \n \l

The same operation, it's not work at the beginning. The same results: 'Could not launch module monitor. Is it already built?……'
And I repeat this operation again and again:
docker rm [container id]
docker rmi [image id]
git pull origin master
bash docker/scripts/dev_start.sh
bash docker/scripts/dev_into.sh
bash apollo.sh build
And this operation:
bash apollo.sh clean
bash apollo.sh build

I don't know what happened, it suddenly worked.
image

https://github.com/ApolloAuto/apollo/blob/master/docs/demo_guide/README.md

After you run bash apollo.sh build, verify if you have these 2 binaries built out:

  1. bazel-bin/modules/dreamview/dreamview
  2. bazel-bin/modules/monitor/monitor

If you do not have this binaries, please restart the build process. Should you have them and you see the error, please give us a screenshot of your output so that we could debug it further.
Thanks!

After you run bash apollo.sh build, verify if you have these 2 binaries built out:

1. bazel-bin/modules/dreamview/dreamview

2. bazel-bin/modules/monitor/monitor

If you do not have this binaries, please restart the build process. Should you have them and you see the error, please give us a screenshot of your output so that we could debug it further.
Thanks!

How do we check if these binaries are built out? Having same issue...

Same question. Dose it have a official solution now?

@natashadsouza I found the 2 binaries exactly in the path you said, but the scripts/bootstrap.sh seem to look up in /modules/{dreamview,monitor} path to run the modules. By brute force, I manually copied the binaries in their respective path and it worked. However, I have no idea if the bazel-bin/modules path should be a symlink to /modules or if something went wrong and the binaries aren't get copied.

So just to make things simpler to anyone facing this issue:

cp /apollo/bazel-bin/modules/monitor/monitor /apollo/modules/monitor
cp /apollo/bazel-bin/modules/dreamview/dreamview /apollo/modules/dreamview

Then just run bash scripts/bootstrap.sh again and it will work.

It actually looks for "${APOLLO_BIN_PREFIX}/modules/" (https://github.com/ApolloAuto/apollo/blob/r3.0.0/scripts/apollo_base.sh#L232)

And the APOLLO_BIN_PREFIX is determined here: https://github.com/ApolloAuto/apollo/blob/r3.0.0/scripts/apollo_base.sh#L118

I guess that in your environment it's somehow unset, so it becomes "/modules/..."

Closing this issue as it appears to be resolved. Feel free to reopen if you have additional questions. Thanks!

Was this page helpful?
0 / 5 - 0 ratings

Related issues

CCodie picture CCodie  ·  3Comments

chasingw picture chasingw  ·  3Comments

lyletbjohnson picture lyletbjohnson  ·  3Comments

westeast picture westeast  ·  3Comments

YaoQii picture YaoQii  ·  3Comments