Boost logo

Boost Users :

Subject: Re: [Boost-users] Cross compiling boost Windows -> Arm
From: Marius Adrian DOBRESCU (marius.dobrescu_at_[hidden])
Date: 2014-01-21 05:41:53


I went to the solution to compile boost on linux with hardcode-dll-paths=false.

I want to make it work also on Windows.

What I did:

In user-config. jam:
using gcc : arm : arm-none-linux-gnueabi-g++. exe ;

Path of the compiler is in PATH variable.

Command for build:
b2.exe target-os=linux toolset=gcc-arm threading=multi variant=release link=shared optimization=speed hardcode-dll-paths=false stage --with-system --with-filesystem

I had copy the libs to a new folder, compiled a simple test program. It compiles and links ok but issues a warning that full path is not found.

I copy the executable and libs to the target but runtime linker is searching for the full path and is not checking anymore in the -L paths and stops with error, lib not found.

Do you have any other workaround to this problem?

-----Original Message-----
From: Vladimir Prus <ghost_at_[hidden]>
To: "boost-users_at_[hidden]" <boost-users_at_[hidden]>
Sent: Fri, 10 Jan 2014 9:00 PM
Subject: Re: [Boost-users] Cross compiling boost Windows -> Arm

On 10.01.2014 22:47, Marius Adrian DOBRESCU wrote:
>
> Hello. I have a problem compiling boost with arm-none-linux-gnueabi-g++ on Windows.
> Shared library dependencies paths seems to be hard-coded with Windows paths:
>
> Example: build\bin.v2\libs\filesystem\build\gcc-arm\release\target-os-linux\threading-multi\...
>
> I tried to build with --prefix. Not working. Hardcode-dll-paths not working too. Tried to specify an explicit -rpath. The so shared
> libraries are compiled with hard-coded paths inside, with backslash \\\ and I cannot use them on linux-arm.
> On stage directory they are hard-coded too.
>
> Any idea how can I disable this behavior and what options should I pass to boost and where?
>
> I want simple libraries without full rpaths and the build must be done on Windows with gcc-gnueabi.

Marius,

Did you try:

b2 hardcode-dll-paths=false

? What's the exact command line you've used for building?

Also, I am not sure what's the exact problem you're having. While using host paths for cross-compiling is certainly
wrong, I would have expected dynamic linker to just ignore paths that are not valid.

- Volodya

_______________________________________________
Boost-users mailing list
Boost-users_at_[hidden]<mailto:Boost-users_at_[hidden]>
http://lists.boost.org/mailman/listinfo.cgi/boost-users



Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net