Unable to compile Mesos frameworks - build

I have installed Mesos from source and am able to start master and slave.
But when I tried to compile test_framework.cpp, I get
error: #error regenerate this file with a newer version of protoc.
#error regenerate this file with a newer version of protoc.
Although, I have installed the latest version(2.6.1) from source.
Note: There were no prexisting protoc.so files on the machine.

it seems like a protobuf version compactibility issue. Could you try on an older protobuf version (e.g., 2.5)? And configure mesos using --with-protobuf=/path/to/libproto.
BTW, I saw this here occasionally. Usually, most of people would prefer asking mesos related questions on mesos user mailing list (user#mesos.apache.org), which may be seen by more users and more possibly to get help:)

Related

How to obtain WSO2 docker-compose distribution from a previous release

When you are going to download a distribution of WSO2 product, for the lastest release is possible to download different distributions (binary, msi installer, docker, docker-compose, helm, kubernetes, etc.) but when you try to do it from a previous release, there is only binary and OS's installers (ubuntu, mac, windows, etc).
But I would like to download, for instance docker-compose distribution for the previous version.
How then can it be possible to do?
This images show it clearly:
You can get these artifacts from the docker-apim repo. https://github.com/wso2/docker-apim/tree/v3.1.0.3
I have checked that the URL generated for the latest version can be modified and can be selected other previous versions. For instance, for downloading AM version 3.1.0, previous to the latest release (v 3.2.0), can be downloaded for docker compose in this manner:
http://product-dist.wso2.com/downloads/api-manager/3.1.0/instruction-pages/subscription/docker-compose/docker-apim-3.1.0.zip
WSO2 should leave available all these links explicitly referred to in the previous versions.

How to find correct hosted agent to build Linux code?

I am learning VSTS. I have a one-line HelloWorld.cpp file in my repository and a makefile to build this cpp file.
Firstly, I created my build definition, which is like below:
secondly, I assigned the build definition to the only available Linux hosted-agent, called "Hosted Linux (Preview)":
After these I kicked off a build but it returns error:
I then checked the capabilities of the agent. It doesn't have CMake, nor does it have compiler like gcc or clang.
I checked VSTS documentation pages about build agents, but have no clue what I should do.
The Hosted agent and Hosted VS2017 agent have CMake installed, you can use Hosted agent or Hosted VS2017 agent. You need to add the capability manually (cmake and yes), check Build:CMake Q&A.
On the other hand, regarding CMake in Hosted Linux agent, I submit a feedback here: CMake in Hosted Linux agent.

Resolving unstable/insecure versions with SwisscomDev/Cloudfoundry

Having buildpack: php_buildpack defined in our manifest.yml this should resolve to the latest CloudFoundry PHP Buildpack to my understanding.
But this resolves to Buildpack version 4.3.21 while Github mentions 4.3.22 as latest release. How does this happen? Do we need to trigger something/someone? Of course we don't want to specify a specific release tag in our manifest.
Additionally "PHP_VERSION": "{PHP_70_LATEST}" in options.json should resolve to the latest stable PHP 7 version but it resolves to 7.0.11 which is according to the PHP Release Announcements an insecure version which should not be used anymore.
Same applies to PHP_56_LATEST as it resolves to 5.6.7 which is a well outdated in favor of 5.6.28 (security release as well).
We didn't check for htttpd an others because we'd somehow rely on getting most recent, stable and secure versions.
php_buildpack refers to the latest version of the buildpack installed on the Cloud Foundry installation you are using (i.e. the Swisscom Application Cloud). It gets updated as soon as the version of Cloud Foundry gets updated because the buildpack is bundled with CF. If you really want to use the absolute latest buildpack, you'll have to pull it directly from GitHub. You can do so by specifying
buildpack: https://github.com/cloudfoundry/php-buildpack.git
The versions for PHP are also bundled with the buildpack. It will always install the latest version of the range you are specifying which is installed in the version of the buildpack you are using. You can find these versions here: https://github.com/cloudfoundry/php-buildpack/blob/master/manifest.yml (you can check out the file for different git tags of the buildpack to see which versions of PHP they come bundled with).
I believe the reason is that there are no standards on buildpacks names for operators.
E.g. platform operators can upload buildpacks with any name and use any version.
It is a best practice to keep them at default names/latest version, but not everyone follows that.
Just use custom buildpack with whatever version you need (if platform allows it)

aapt missing MACOS Use the `android' tool to install the "Android SDK Platform-tools"

aapt missing MACOS Use the `android' tool to install the "Android SDK Platform-tools".
i have already use android download times.
but i can't find any usefully aapt file
only link to /usr/local/Cellar/android-sdk/r22.0.1/platform-tools/aapt
but under /usr/local/Cellar/android-sdk/r22.0.1/platform-tools/ only adb
the "aapt" tool was moved to the Build Tools folder. Run "android" and make sure you install the build tools (18.1 is currently the latest one).
also see this other post:
Android Maven Could not find tool 'aapt'
Run the android command and ensure that the SDK tools for your target platform are up to date. It is possible that you updated the SDK but not the build tools.
Hope that helps.
The android tools from brew expect version 17 of the SDK Build-tools to be installed.
I had a similar problem recently and found it to be an error with my HomeBrew setup. I think HomeBrew was expecting a particular version of the build tools that I didn't have.
I found that updating HomeBrew
brew update
gave me a new error which was much more informative:
It appears you do not have 'build-tools-19.0.3' installed.
Use the 'android' tool to install them:
android update sdk --no-ui --filter 'build-tools-19.0.3'
Unfortunately the filter in the suggested command didn't work but I found I could install it manually through the UI by running the android tool and selecting the version HomeBrew was expecting.
See https://stackoverflow.com/a/16585846/440362 for correct answer. The file's directory has changed from tools to build-tools/

Custom build environment/target libraries

I want to build an application that will be compatible with, say, Debian Lenny (libc, postgres, oracle and other libs) on a different Debian/Ubuntu release.
Is this possible? If so, where can I read how to do it?
You can use the open build service for this. Create the Debian package description files for it (you can add also rpm spec files), select the target distributions and you will get it built on each platform and also get a specific download repository for each platform. Your package will be rebuilt automatically when needed as well. You can install your own instance of the service if you need to host proprietary code.
If you want a multiplatform binary, you may want to build it against a LSB chroot:
http://ftp.linux-foundation.org/pub/lsb/impl
And bundle any library that is not part of it. The LSB has tools to then check your app for compliance. Their website is down right now, but it should be here: http://ldn.linuxfoundation.org/lsb/check-your-app