| Bug #52263 | innodb does not compile on OpenSolaris with gcc4.3.2 | ||
|---|---|---|---|
| Submitted: | 21 Mar 2010 23:00 | Modified: | 18 Oct 2010 19:39 |
| Reporter: | Vladislav Vaintroub | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | MySQL Server: InnoDB storage engine | Severity: | S3 (Non-critical) |
| Version: | next-mr-bugfixing | OS: | Solaris (x86, gcc 4.3.2) |
| Assigned to: | Sunny Bains | CPU Architecture: | Any |
[12 Aug 2010 9:45]
Sunny Bains
The only solution for this seems to be to disable the GCC visibility attribute on all platforms where sun is defined.
[25 Aug 2010 9:23]
Bugs System
Pushed into mysql-5.5 5.5.6-m3 (revid:alik@ibmvm-20100825092002-2yvkb3iwu43ycpnm) (version source revid:alik@ibmvm-20100825092002-2yvkb3iwu43ycpnm) (merge vers: 5.5.6-m3) (pib:20)
[30 Aug 2010 8:31]
Bugs System
Pushed into mysql-trunk 5.6.1-m4 (revid:alik@sun.com-20100830082732-n2eyijnv86exc5ci) (version source revid:alik@sun.com-20100830082732-n2eyijnv86exc5ci) (merge vers: 5.6.1-m4) (pib:21)
[30 Aug 2010 8:34]
Bugs System
Pushed into mysql-next-mr (revid:alik@sun.com-20100830082745-n6sh01wlwh3itasv) (version source revid:alik@sun.com-20100830082745-n6sh01wlwh3itasv) (pib:21)

Description: I'm trying to build MySQL on OpenSolaris, using cmake and gcc 4.3.2 There is lots of warnings like this /innobase/ut/ut0wqueue.c:118: warning: visibility attribute not supported in this configuration; ignored and finally, Linking CXX shared module ha_innodb.so ld: fatal: relocation error: R_386_GOTOFF: file CMakeFiles/innobase.dir/btr/btr0cur.c.o: symbol btr_cur_n_sea: a GOT relative relocation must reference a local symbol If I change storage/innobase/include/univ.i such that UNIV_INTERN is defined as empty macro rather than __attribute__((visibility ("hidden"))), compilation succeeds. How to repeat: (Using cmake build) Branch mysql-next-mr-bugfixing mkdir build cd build export CC=gcc-4.3.2 export CXX=gcc-4.3.2 cmake .. make Suggested fix: Do not use visibility("hidden") in environments that do not support it.