This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: crosstool build breaks at CLoog/ppl on Fedora 13


Darcy, All,

On Wednesday 04 August 2010 22:01:22 Darcy Watkins wrote:
> Crosstool 1.7.0 worked fine for me using Fedora 10.  After upgrade to
> Fedora 13, I started seeing errors like the below.  The output below is
> actually after I updated to crosstool 1.7.2.

There has been no change for CLooG/PPL between 1.7.0 and 1.7.2.
Anyway, 1.8.0 is out now, but there's been no changes either.

[--SNIP--]
> Tail end of the build.log file....
> 
> [ALL  ]    if i686-build_redhat-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I/home/darcy/workspace/tsf/cogent-arm-oabi-ct/pkgs_build/crosstool-ng-1.7_arm/crosstool-ng-1.7.2/targets/src/cloog-ppl-0.15.9 -I./include/cloog -I./include -I/home/darcy/workspace/tsf/cogent-arm-oabi-ct/pkgs_build/crosstool-ng-1.7_arm/crosstool-ng-1.7.2/targets/src/cloog-ppl-0.15.9/include  -I/home/darcy/workspace/tsf/cogent-arm-oabi-ct/pkgs_build/crosstool-ng-1.7_arm/crosstool-ng-1.7.2/targets/arm-unknown-linux-uclibc/build/static/include -I/home/darcy/workspace/tsf/cogent-arm-oabi-ct/pkgs_build/crosstool-ng-1.7_arm/crosstool-ng-1.7.2/targets/arm-unknown-linux-uclibc/build/static/include  -Wall -fomit-frame-pointer -pipe -MT cloog.o -MD -MP -MF ".deps/cloog.Tpo" -c -o cloog.o `test -f 'source/cloog.c' || echo '/home/darcy/workspace/tsf/cogent-arm-oabi-ct/pkgs_build/crosstool-ng-1.7_arm/crosstool-ng-1.7.2/targets/src/cloog-ppl-0.15.9/'`source/cloog.c; 	then mv -f ".deps/cloog.Tpo" ".deps/cloog.Po"; else rm -f ".deps/cloog.Tpo"; exit 1; fi
> [ALL  ]    /bin/bash ./libtool --tag=CC --mode=link i686-build_redhat-linux-gnu-gcc -Wall -fomit-frame-pointer -pipe  -L/home/darcy/workspace/tsf/cogent-arm-oabi-ct/pkgs_build/crosstool-ng-1.7_arm/crosstool-ng-1.7.2/targets/arm-unknown-linux-uclibc/build/static/lib -L/home/darcy/workspace/tsf/cogent-arm-oabi-ct/pkgs_build/crosstool-ng-1.7_arm/crosstool-ng-1.7.2/targets/arm-unknown-linux-uclibc/build/static/lib -lstdc++ -o cloog  cloog.o libcloog.la -lgmp -lppl_c -lppl -lgmpxx 

I think that we do not need the cloog executable, anyway.

> [ALL  ]    libtool: link: i686-build_redhat-linux-gnu-gcc -Wall -fomit-frame-pointer -pipe -o cloog cloog.o  -L/home/darcy/workspace/tsf/cogent-arm-oabi-ct/pkgs_build/crosstool-ng-1.7_arm/crosstool-ng-1.7.2/targets/arm-unknown-linux-uclibc/build/static/lib ./.libs/libcloog.a -lstdc++ /home/darcy/workspace/tsf/cogent-arm-oabi-ct/pkgs_build/crosstool-ng-1.7_arm/crosstool-ng-1.7.2/targets/arm-unknown-linux-uclibc/build/static/lib/libppl_c.a /home/darcy/workspace/tsf/cogent-arm-oabi-ct/pkgs_build/crosstool-ng-1.7_arm/crosstool-ng-1.7.2/targets/arm-unknown-linux-uclibc/build/static/lib/libppl.a /home/darcy/workspace/tsf/cogent-arm-oabi-ct/pkgs_build/crosstool-ng-1.7_arm/crosstool-ng-1.7.2/targets/arm-unknown-linux-uclibc/build/static/lib/libgmpxx.a /home/darcy/workspace/tsf/cogent-arm-oabi-ct/pkgs_build/crosstool-ng-1.7_arm/crosstool-ng-1.7.2/targets/arm-unknown-linux-uclibc/build/static/lib/libgmp.a
> [ALL  ]    /usr/bin/ld: /home/darcy/workspace/tsf/cogent-arm-oabi-ct/pkgs_build/crosstool-ng-1.7_arm/crosstool-ng-1.7.2/targets/arm-unknown-linux-uclibc/build/static/lib/libppl.a(MIP_Problem.o): undefined reference to symbol 'sqrt@@GLIBC_2.0'
> [ALL  ]    /usr/bin/ld: note: 'sqrt@@GLIBC_2.0' is defined in DSO /lib/libm.so.6 so try adding it to the linker command line

Oh... indeed, sqrt is in libm. Why is it not linked with?

I've attached two patches. Care to test them, please? Start with 'link-libm'
and then 'only-lib', and then both. Thank you!

> [ALL  ]    /lib/libm.so.6: could not read symbols: Invalid operation

*This* is strange... What does this tell you: file /lib/libm.so.6
Mine is:
# file /lib/libm.so.6
/lib/libm.so.6: symbolic link to `libm-2.7.so'
# file /lib/libm-2.7.so
/lib/libm-2.7.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.8, stripped

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
diff --git a/scripts/build/companion_libs/cloog.sh b/scripts/build/companion_libs/cloog.sh
--- a/scripts/build/companion_libs/cloog.sh
+++ b/scripts/build/companion_libs/cloog.sh
@@ -56,7 +56,7 @@
         cloog_opts+=( --enable-shared --disable-static )
     else
         cloog_opts+=( --disable-shared --enable-static )
-        cloog_LDFLAGS='-lstdc++'
+        cloog_LDFLAGS='-lstdc++ -lm'
     fi
 
     CFLAGS="${CT_CFLAGS_FOR_HOST}"              \
diff --git a/scripts/build/companion_libs/cloog.sh b/scripts/build/companion_libs/cloog.sh
--- a/scripts/build/companion_libs/cloog.sh
+++ b/scripts/build/companion_libs/cloog.sh
@@ -72,7 +72,7 @@
         "${cloog_opts[@]}"
 
     CT_DoLog EXTRA "Building CLooG/ppl"
-    CT_DoExecLog ALL make ${PARALLELMFLAGS}
+    CT_DoExecLog ALL make ${PARALLELMFLAGS} libcloog.la
 
     if [ "${CT_COMPLIBS_CHECK}" = "y" ]; then
         CT_DoLog EXTRA "Checking CLooG/ppl"
@@ -80,7 +80,7 @@
     fi
 
     CT_DoLog EXTRA "Installing CLooG/ppl"
-    CT_DoExecLog ALL make install
+    CT_DoExecLog ALL make install-libLTLIBRARIES
 
     # Remove spuriously installed file
     CT_DoExecLog ALL rm -f "${CT_PREFIX_DIR}/bin/cloog"

--
For unsubscribe information see http://sourceware.org/lists.html#faq

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]