-
Notifications
You must be signed in to change notification settings - Fork 864
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
undefined reference to `__cxa_throw_bad_array_new_length@CXXABI_1.3.8' - libicui18n.so.52 #75
Comments
I solved by rebuilding icu with the provided gcc 4.8 and linking Qt against that build. |
Thx for your feedback,
I've downloaded icu sources and plan to build it, could you direct me on how to do the cross build ? I've a linux host with build tools installed for raspberry. I've sync on the host the /lib, /usr/include and /usr/lib folder of the raspberry itself and I'm deploying qt files in /usr/local/qt5pi.
I'm targeting rpi2.
I've already build some qt examples that runs fine on the rpi, now I'm building my code which fails on link.
…----- Mail original -----
De: "Luca Carlon" <[email protected]>
À: "raspberrypi/tools" <[email protected]>
Cc: "oxygen77" <[email protected]>, "Author" <[email protected]>
Envoyé: Lundi 13 Février 2017 09:09:01
Objet: Re: [raspberrypi/tools] undefined reference to `__cxa_throw_bad_array_new_length@CXXABI_1.3.8' - libicui18n.so.52 (#75)
I solved by rebuilding icu with the provided gcc 4.8 and linking Qt against that build.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub , or mute the thread .
|
I wrote something about that in the past: http://thebugfreeblog.blogspot.it/2013/05/cross-building-icu-for-applications-on.html. And I also wrote a few notes for the pi here: https://github.com/carlonluca/pi/blob/master/piomxtextures_tools/notes_icu.txt. |
i have the same problem with qt5.8, i have also try to rebuild qt5.8 with the toolchain 4.9.2 in this github `Running configuration tests...
ERROR: Cannot compile a minimal program. The toolchain or QMakeSpec is broken. |
linero arm linux 4.9.4 official 2017 01 have you a simply method for work qt 5.8 in raspberry pi. |
anyone can be help me??? what is the best way for finish this quickly...? please |
@kickoune I am struggling with exactly the same problems... Have you been able to fix it? |
I had the same problem with compiling Qt5.3.2. It stems from an outdated stdc++ library in the gcc linaro toolchain, the version I downloaded is 4.8.3. Note that just recompiling libicu would NOT have solved this issue for me, as Qt went on to complain in a different section its code. I solved it by overwriting the file in tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/arm-linux-gnueabihf/lib/libstdc++.so.6.0.19 with the provided sysroot/usr/lib/arm-linux-gnueabihf/libstdc++.so.6.0.20. Don't forget to update the symbolic links in the toolchain too! To figure out if the symbol is defined you can run to recap, what I did to fix the issue was:
Think before you run this, the libstdc++ version you have in your sysroot might not be 6.0.20! |
i did that I dont work |
You can build your own toolchain. Worked for me for Stretch. |
Hi carlonluca, I tried to build the source code of Libicu as per the link - https://github.com/carlonluca/pi/blob/master/piomxtextures_tools/notes_icu.txt. But I am getting the following error (for compiling in the host): checking whether we are cross compiling... configure: error: in `/home/sajeevank/rpi_source/libicu/build_icu_linux': Details given below. sajeevank@sajeevank-Vostro-3559: checking for ICU version numbers... release 58.1, library 58.1, unicode version 9.0 I think this is some basic issue. But I am a beginner in this field. Please suggest some workaround. Sajeevan.K |
I suggest you don't use the old toolchain anymore. Use a newer toolchain. |
Hi, Thank You very much for the reply. But here the toolchain is not coming into picture. Because now I am compiling for host only, not for the target RPI. right? I am failing in the first step itself. As per my understanding there are two steps involved. First we need to compile libicu for the host And the second cross compile libicu for the target. Where I am facing problem is in the first step. I think toolchain is coming only in the second step. |
Hi, Now I noticed the lines -- And the variables CC and CXX were set for old toolchain. Now I updated it with the latest. But still the result is same. sajeevank@sajeevank-Vostro-3559: checking for ICU version numbers... release 58.1, library 58.1, unicode version 9.0 My doubt is when I am compiling for host, how CC and CXX are considered? |
Hi, |
Hi, But for cross compile it is not successful. sajeevank@sajeevank-Vostro-3559: Any clues? |
Hi, I had done a few mistakes. CC and CXX were wrong. And export CFLAGS=$CPPFLAGS was the right. I added this library to qt creator by using Add Library option. And then I compiled it is showing the error: .pro is added with the following: win32:CONFIG(release, debug|release): LIBS += -L$$PWD/../../rpi_source/libicu/build_icu_rpi/lib/release/ -licudata INCLUDEPATH += $$PWD/../../rpi_source/libicu/build_icu_rpi 👎 warning: libicudata.so.57, needed by /home/sajeevank/raspi/sysroot/usr/local/qt5pi/lib/libQt5Core.so, may conflict with libicudata.so.58 I think library is not properly added to qt creator. Or some more procedure is remaining. |
Qt links to a different version of libicu. |
Hi, Thank You for the reply. I have now sajeevank@sajeevank-Vostro-3559:~/raspi$ find ./sysroot -name libicudata* Whether I should copy sysroot/usr/local/qt5pi/lib/libicudata.so.58.1 to /sysroot/usr/lib/arm-linux-gnueabihf/ or in reverse. How the linking should be done? |
"may conflict with": you are linking two conflicting versions. Qt already depends on libicu by itself. |
Hello,
I'm trying to cross build my application on rpi2. I've followed following guide: https://wiki.qt.io/RaspberryPi2EGLFS to setup by crossbuild env.
On rpi I'm using the standard jessie updated recently.
At the end of build I get the following error:
sysroot/usr/lib/arm-linux-gnueabihf/libicui18n.so.52: undefined reference to `__cxa_throw_bad_array_new_length@CXXABI_1.3.8'
I read a previous post related to this and talking about a difference between toolchain and jessie version og libicui18n. Didn't find a way to solve this.
thx
Chris
The text was updated successfully, but these errors were encountered: