Cross compiling for windows- BOOST TOO OLD

Please help.

I want to build for windows, using host aarch64 linux arm64.
I installed the whole dependency stack, yes.

I installed what i thought was relevant as tools, build essentials, meson, cmake, ninja, clang llvm lldb, lld gdb gcc g++ cross compile packages, ming cross compile packages, ming dotnet sdk code(visual basic code for linux) and mono.

i got these as backups: ninja-ide crosstool-ng, codeblocks, qtcreator, eclipse, lazarus, gnat. (havent used these yet).

cloned ardour git.
went into tools/x-win/compile.sh

  1. it defaults for win32 and python2???
    i edited compile and erased python (i have pyenv and virtualenv anyway. plus my host uses python3.9).
    i commented out the second if-then lines that determine for win64/win32 (to force for windows 64) (did the same in packages.sh)

  2. either way, even if i dont comment this out, the problem is that it says my boost libraries are too old? yes i compiled it from the stack. yes i tried the alternative apt packages for ALL boost libraries.

it seems that mingw isnt locating the boost libraries? i think?

edit: as i examine pkg-config files i wonder how i can set it up for these boost libraries and if it would help any.

read through the other posts. i triple checked dependencies, which are fine.
i saw a post about how help with compiling is not available…
what can i say, except please, and ill keep trying.

still getting the error. still trying to link the libraries, maybe im misunderstanding how to set flags.
i know for a fact all boost libraries are installed .

/usr/local/lib/libboost_.so, .a files
/usr/local/include/boost/
.hpp files, dirs
/usr/include/odb/boost
/usr/lib/llvm-11/include/clang-tidy/boost/UseToStringCheck.h

(.h? header???)

and finally, /usr/include/ has boost files which i think was from the apt package installation.

p.s. i did try the boost one at a time (aka trying one, then removing, and trying the other) via ardour stack and via apt), plz dont say thats the reason for error. ;p

2nd edit: tried installing some other audio/midi/sound libs via apt.

Cloned the ardour git again to have it fresh. Didnt commend out the os check this time; instead, I changed “i686” to “x86_64” on the line before, as instructed.
Didnt comment out python for python2 installation this time. Just in case….I’ll deal with that part.

Still have to link the boosts….
So, before linking……Do I have to compile the windows version of these boosts? I think that’s a good question to ask….

Ardour only uses boost-header files so there should be no need to compile it.

./waf configure compiles a small test tool

#include <boost/version.hpp>
#if !defined (BOOST_VERSION) || BOOST_VERSION < 105600
#error boost >= 1.56 is not available
#endif
int main(void) { return 0; }

and prints “boost too old” if that fails, see build/config.log for the actual error. Maybe the issue is that boost cannot be found in the first place?

Hi !

So, before, I was running tools/x-win/compile.sh from my arm64 host (because I want 64bit windows binaries for my windows machine).

I tried the ./waf configure with some parameters and boost is found….lol.

now, im trying to make sure, checking things like pulseaudio libs, alsa, (currently now at build beatbox fail: I will remove this parameter and try again.)

Hope I didnt miss any random midi libs or something. Will update soon.
After ./waf build how can I get amd64 x86_64 binaries? I’m guessing that is the time to run that compile script.

Window on ARM, or Intel CPU?

Windows 11 64bit OS on an amd64 Ryzen cpu is the target. (x86_64)

Host is Using arm64 kernel 5.15 (rpi 4b 8g, 64bit OS. aarch64)

Edit: I saw the zetaoyang/ardour-build page.

I hesitated from the start to use this, but when I ran the X-Ming.sh script, the script set build as x86_64-pc-ming32 and it set host as x86_64-w64-ming32, using posix with CC flag (which I understand now is cross-compile)and other options. Its building now…i dont expect to get a working binary right away but I think I’m on the right track.

That github page (and the README on the official ardour/tools/x-win/page) BOTH reference “ardour-build” as being official, but I can’t find it….maybe if I checked the git tag / branch checkouts more thoroughly, but After a quick check I assumed it was removed.

/finish edit

Ok the build finished (regarding the original try on ./waf configure) but apparently, even though I set the —build-target as x86_64,mingw. I dont see an exe file in the build/gtk2 folder. The ardour-7.0 that was made is working on the arm64 machine after I tried ./waf install……… I swear I set the build target. At least it works?

Ugh. I’ll continue tomorrow. Thanks for responding.

The dude’s github repo is gone . wtf .
Reported? Or Forced to remove?
Just because I asked for help, and that script was helping me understand and move forward. (Not only for ardour , but compiling and linking).

Whatever.

“Open source” with strings attached lol.

You can delete my account and mark the thread closed. I won’t be coming back, or supporting this program in any way.

bye

Sad to hear that, what is the actual issue that you’re facing?

PS. Ardour is not open-source. It is free/libre software, licensed in terms of the GPL v2 (or any later version of that license), no strings attached.

That sounded like you’re close to succeed. There are various persons (incl 3rd party) who manage to build Ardour on or for windows and contribute to the project. As far as I know you are however the only one who attempts to do that on an ARM CPU host, and hence it’s unlikely that anyone can help you but yourself.

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.