database/mysql57-client Linking fails on 11.2 i386

Good day!

I have a server
uname -a
Code:
FreeBSD db_mysql 11.2-STABLE FreeBSD 11.2-STABLE #0 r338358: Thu Aug 30 01:29:38 +05 2018     user@BSD-TENNIS:/usr/obj/usr/src/sys/BSDSERV  i386
And on that server works several jails. One named db_mysql has mysql57-{server,client}.
pkg info | grep mysql
Code:
mysql57-client-5.7.21_1        Multithreaded SQL database (client)
mysql57-server-5.7.21_1        Multithreaded SQL database (server)
And I'm update ports in that jail with portmaster. It stops on Linking stage with error:
Code:
[100%] Linking CXX executable mysqlpump
cd /var/ports/sharedfs/usr/ports/databases/mysql57-client/work/.build/client/dump && /usr/local/bin/cmake -E cmake_link_script CMakeFiles/mysqlpump.dir/link.txt --verbose=1
/usr/bin/c++  -O2 -pipe -march=pentium4 -fstack-protector -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -Wall -Wextra -Wformat-security -Wvla -Woverloaded-virtual -Wno-unused-parameter -Wno-null-conversion -Wno-unused-private-field -O2 -pipe -march=pentium4 -fstack-protector -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -DDBUG_OFF    -fstack-protector CMakeFiles/mysqlpump.dir/program.cc.o  -o mysqlpump -Wl,-rpath,/usr/local/lib: -pthread ../../archive_output_directory/libmysqlpump_lib.a ../../archive_output_directory/libboost_lib.a ../../archive_output_directory/libclient_base.a ../../archive_output_directory/libmysqlclient.a -lz -lm -lrt -lexecinfo -lssl -lcrypto /usr/local/lib/liblz4.so -pthread
CMakeFiles/mysqlpump.dir/program.cc.o: In function `Mysql::Tools::Dump::Program::error(Mysql::Tools::Base::Message_data const&)':
program.cc:(.text+0x40c): undefined reference to `__atomic_store_8'
CMakeFiles/mysqlpump.dir/program.cc.o: In function `Mysql::Tools::Dump::Program::get_error_code()':
program.cc:(.text+0x98f): undefined reference to `__atomic_load_8'
CMakeFiles/mysqlpump.dir/program.cc.o: In function `Mysql::Tools::Dump::Program::Program()':
program.cc:(.text+0x13c0): undefined reference to `__atomic_store_8'
../../archive_output_directory/libmysqlpump_lib.a(object_queue.cc.o): In function `Mysql::Tools::Dump::Object_queue::queue_thread()':
object_queue.cc:(.text+0x26a): undefined reference to `__atomic_store_8'
object_queue.cc:(.text+0x27e): undefined reference to `__atomic_load_8'
../../archive_output_directory/libmysqlpump_lib.a(object_queue.cc.o): In function `Mysql::Tools::Dump::Object_queue::stop_queue()':
object_queue.cc:(.text+0x384): undefined reference to `__atomic_store_8'
../../archive_output_directory/libmysqlpump_lib.a(object_queue.cc.o): In function `Mysql::Tools::Dump::Object_queue::~Object_queue()':
object_queue.cc:(.text+0x739): undefined reference to `__atomic_store_8'
../../archive_output_directory/libmysqlpump_lib.a(object_queue.cc.o): In function `Mysql::Tools::Dump::Object_queue::Object_queue(Mysql::I_callable<bool, Mysql::Tools::Base::Message_data const&>*, Mysql::Tools::Dump::Simple_id_generator*, unsigned int, Mysql::I_callable<void, bool>*, Mysql::Tools::Base::Abstract_program*)':
object_queue.cc:(.text+0xe41): undefined reference to `__atomic_store_8'
../../archive_output_directory/libmysqlpump_lib.a(object_queue.cc.o): In function `Mysql::Tools::Dump::Object_queue::Object_queue(Mysql::I_callable<bool, Mysql::Tools::Base::Message_data const&>*, Mysql::Tools::Dump::Simple_id_generator*, unsigned int, Mysql::I_callable<void, bool>*, Mysql::Tools::Base::Abstract_program*)':
object_queue.cc:(.text+0x108c): undefined reference to `__atomic_store_8'
../../archive_output_directory/libmysqlpump_lib.a(simple_id_generator.cc.o): In function `Mysql::Tools::Dump::Simple_id_generator::Simple_id_generator()':
simple_id_generator.cc:(.text+0x1a): undefined reference to `__atomic_store_8'
../../archive_output_directory/libmysqlpump_lib.a(simple_id_generator.cc.o): In function `Mysql::Tools::Dump::Simple_id_generator::create_id()':
simple_id_generator.cc:(.text+0x4a): undefined reference to `__atomic_fetch_add_8'
../../archive_output_directory/libmysqlpump_lib.a(standard_progress_watcher.cc.o): In function `Mysql::Tools::Dump::Standard_progress_watcher::process_progress_step(Mysql::Tools::Dump::Abstract_progress_watcher::Progress_data&)':
standard_progress_watcher.cc:(.text+0x3c): undefined reference to `__atomic_load_8'
standard_progress_watcher.cc:(.text+0x6d): undefined reference to `__atomic_load_8'
standard_progress_watcher.cc:(.text+0x9a): undefined reference to `__atomic_load_8'
standard_progress_watcher.cc:(.text+0xc4): undefined reference to `__atomic_load_8'
../../archive_output_directory/libmysqlpump_lib.a(abstract_chain_element.cc.o): In function `Mysql::Tools::Dump::Abstract_chain_element::Abstract_chain_element(Mysql::I_callable<bool, Mysql::Tools::Base::Message_data const&>*, Mysql::Tools::Dump::Simple_id_generator*)':
abstract_chain_element.cc:(.text+0x7c): undefined reference to `__atomic_fetch_add_8'
../../archive_output_directory/libmysqlpump_lib.a(abstract_chain_element.cc.o): In function `Mysql::Tools::Dump::Abstract_chain_element::Abstract_chain_element(Mysql::I_callable<bool, Mysql::Tools::Base::Message_data const&>*, Mysql::Tools::Dump::Simple_id_generator*)':
abstract_chain_element.cc:(.text+0x189): undefined reference to `__atomic_fetch_add_8'
../../archive_output_directory/libmysqlpump_lib.a(abstract_crawler.cc.o): In function `Mysql::Tools::Dump::Abstract_crawler::process_dump_task(Mysql::Tools::Dump::I_dump_task*)':
abstract_crawler.cc:(.text+0x29a): undefined reference to `__atomic_fetch_add_8'
../../archive_output_directory/libmysqlpump_lib.a(abstract_progress_watcher.cc.o): In function `Mysql::Tools::Dump::Abstract_progress_watcher::progress_changed()':
abstract_progress_watcher.cc:(.text+0x2c): undefined reference to `__atomic_fetch_add_8'
abstract_progress_watcher.cc:(.text+0x152): undefined reference to `__atomic_store_8'
abstract_progress_watcher.cc:(.text+0x203): undefined reference to `__atomic_fetch_add_8'
abstract_progress_watcher.cc:(.text+0x230): undefined reference to `__atomic_load_8'
abstract_progress_watcher.cc:(.text+0x241): undefined reference to `__atomic_store_8'
abstract_progress_watcher.cc:(.text+0x25a): undefined reference to `__atomic_load_8'
abstract_progress_watcher.cc:(.text+0x267): undefined reference to `__atomic_store_8'
abstract_progress_watcher.cc:(.text+0x280): undefined reference to `__atomic_load_8'
abstract_progress_watcher.cc:(.text+0x28d): undefined reference to `__atomic_store_8'
abstract_progress_watcher.cc:(.text+0x2b8): undefined reference to `__atomic_store_8'
../../archive_output_directory/libmysqlpump_lib.a(abstract_progress_watcher.cc.o): In function `Mysql::Tools::Dump::Abstract_progress_watcher::Progress_data::operator-(Mysql::Tools::Dump::Abstract_progress_watcher::Progress_data const&)':
abstract_progress_watcher.cc:(.text+0x303): undefined reference to `__atomic_store_8'
abstract_progress_watcher.cc:(.text+0x315): undefined reference to `__atomic_store_8'
abstract_progress_watcher.cc:(.text+0x327): undefined reference to `__atomic_store_8'
abstract_progress_watcher.cc:(.text+0x334): undefined reference to `__atomic_load_8'
abstract_progress_watcher.cc:(.text+0x345): undefined reference to `__atomic_load_8'
abstract_progress_watcher.cc:(.text+0x358): undefined reference to `__atomic_store_8'
abstract_progress_watcher.cc:(.text+0x375): undefined reference to `__atomic_load_8'
abstract_progress_watcher.cc:(.text+0x38a): undefined reference to `__atomic_load_8'
abstract_progress_watcher.cc:(.text+0x39f): undefined reference to `__atomic_store_8'
abstract_progress_watcher.cc:(.text+0x3bd): undefined reference to `__atomic_load_8'
abstract_progress_watcher.cc:(.text+0x3d2): undefined reference to `__atomic_load_8'
abstract_progress_watcher.cc:(.text+0x3e7): undefined reference to `__atomic_store_8'
../../archive_output_directory/libmysqlpump_lib.a(abstract_progress_watcher.cc.o): In function `Mysql::Tools::Dump::Abstract_progress_watcher::Progress_data::operator=(Mysql::Tools::Dump::Abstract_progress_watcher::Progress_data const&)':
abstract_progress_watcher.cc:(.text+0x42f): undefined reference to `__atomic_load_8'
abstract_progress_watcher.cc:(.text+0x43e): undefined reference to `__atomic_store_8'
abstract_progress_watcher.cc:(.text+0x458): undefined reference to `__atomic_load_8'
abstract_progress_watcher.cc:(.text+0x465): undefined reference to `__atomic_store_8'
abstract_progress_watcher.cc:(.text+0x480): undefined reference to `__atomic_load_8'
abstract_progress_watcher.cc:(.text+0x48d): undefined reference to `__atomic_store_8'
../../archive_output_directory/libmysqlpump_lib.a(abstract_progress_watcher.cc.o): In function `Mysql::Tools::Dump::Abstract_progress_watcher::Abstract_progress_watcher(Mysql::I_callable<bool, Mysql::Tools::Base::Message_data const&>*, Mysql::Tools::Dump::Simple_id_generator*)':
abstract_progress_watcher.cc:(.text+0x514): undefined reference to `__atomic_store_8'
abstract_progress_watcher.cc:(.text+0x526): undefined reference to `__atomic_store_8'
abstract_progress_watcher.cc:(.text+0x538): undefined reference to `__atomic_store_8'
abstract_progress_watcher.cc:(.text+0x54a): undefined reference to `__atomic_store_8'
../../archive_output_directory/libmysqlpump_lib.a(abstract_progress_watcher.cc.o):abstract_progress_watcher.cc:(.text+0x55c): more undefined references to `__atomic_store_8' follow
../../archive_output_directory/libmysqlpump_lib.a(abstract_progress_watcher.cc.o): In function `Mysql::Tools::Dump::Abstract_progress_watcher::object_processing_ended(Mysql::Tools::Dump::Item_processing_data*)':
abstract_progress_watcher.cc:(.text+0x70e): undefined reference to `__atomic_fetch_add_8'
../../archive_output_directory/libmysqlpump_lib.a(abstract_progress_watcher.cc.o): In function `Mysql::Tools::Dump::Abstract_progress_watcher::new_chain_created(Mysql::Tools::Dump::Item_processing_data*)':
abstract_progress_watcher.cc:(.text+0x7d7): undefined reference to `__atomic_fetch_add_8'
abstract_progress_watcher.cc:(.text+0x7f0): undefined reference to `__atomic_fetch_add_8'
abstract_progress_watcher.cc:(.text+0x809): undefined reference to `__atomic_fetch_add_8'
../../archive_output_directory/libmysqlpump_lib.a(abstract_progress_watcher.cc.o): In function `Mysql::Tools::Dump::Abstract_progress_watcher::Progress_data::Progress_data(Mysql::Tools::Dump::Abstract_progress_watcher::Progress_data const&)':
abstract_progress_watcher.cc:(.text+0x86f): undefined reference to `__atomic_load_8'
abstract_progress_watcher.cc:(.text+0x87e): undefined reference to `__atomic_store_8'
abstract_progress_watcher.cc:(.text+0x898): undefined reference to `__atomic_load_8'
abstract_progress_watcher.cc:(.text+0x8a5): undefined reference to `__atomic_store_8'
abstract_progress_watcher.cc:(.text+0x8c0): undefined reference to `__atomic_load_8'
abstract_progress_watcher.cc:(.text+0x8cd): undefined reference to `__atomic_store_8'
../../archive_output_directory/libmysqlpump_lib.a(abstract_progress_watcher.cc.o): In function `Mysql::Tools::Dump::Abstract_progress_watcher::Progress_data::Progress_data()':
abstract_progress_watcher.cc:(.text+0x90c): undefined reference to `__atomic_store_8'
abstract_progress_watcher.cc:(.text+0x91e): undefined reference to `__atomic_store_8'
abstract_progress_watcher.cc:(.text+0x930): undefined reference to `__atomic_store_8'
../../archive_output_directory/libmysqlpump_lib.a(abstract_simple_dump_task.cc.o): In function `Mysql::Tools::Dump::Abstract_simple_dump_task::set_completed()':
abstract_simple_dump_task.cc:(.text+0x24): undefined reference to `__atomic_store_8'
../../archive_output_directory/libmysqlpump_lib.a(abstract_simple_dump_task.cc.o): In function `Mysql::Tools::Dump::Abstract_simple_dump_task::is_completed() const':
abstract_simple_dump_task.cc:(.text+0x5a): undefined reference to `__atomic_load_8'
../../archive_output_directory/libmysqlpump_lib.a(abstract_simple_dump_task.cc.o): In function `Mysql::Tools::Dump::Abstract_simple_dump_task::Abstract_simple_dump_task()':
abstract_simple_dump_task.cc:(.text+0xcb): undefined reference to `__atomic_store_8'
../../archive_output_directory/libmysqlpump_lib.a(item_processing_data.cc.o): In function `Mysql::Tools::Dump::Item_processing_data::Item_processing_data(Mysql::Tools::Dump::Chain_data*, Mysql::Tools::Dump::I_dump_task*, Mysql::Tools::Dump::I_chain_element*, Mysql::I_callable<void, Mysql::Tools::Dump::Item_processing_data*> const*, Mysql::Tools::Dump::Item_processing_data*)':
item_processing_data.cc:(.text+0x3c): undefined reference to `__atomic_store_8'
../../archive_output_directory/libmysqlpump_lib.a(item_processing_data.cc.o): In function `Mysql::Tools::Dump::Item_processing_data::start_processing()':
item_processing_data.cc:(.text+0xbe): undefined reference to `__atomic_fetch_add_8'
../../archive_output_directory/libmysqlpump_lib.a(item_processing_data.cc.o): In function `Mysql::Tools::Dump::Item_processing_data::end_processing()':
item_processing_data.cc:(.text+0xee): undefined reference to `__atomic_fetch_add_8'
../../archive_output_directory/libmysqlpump_lib.a(item_processing_data.cc.o): In function `Mysql::Tools::Dump::Item_processing_data::call_completion_callback_at_end()':
item_processing_data.cc:(.text+0x17b): undefined reference to `__atomic_load_8'
../../archive_output_directory/libclient_base.a(mysql_query_runner.cc.o): In function `Mysql::Tools::Base::Mysql_query_runner::Mysql_query_runner(st_mysql*)':
mysql_query_runner.cc:(.text+0x53): undefined reference to `__atomic_store_8'
../../archive_output_directory/libclient_base.a(mysql_query_runner.cc.o): In function `Mysql::Tools::Base::Mysql_query_runner::run_query(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >)':
mysql_query_runner.cc:(.text+0x5bd): undefined reference to `__atomic_compare_exchange_8'
mysql_query_runner.cc:(.text+0x607): undefined reference to `__atomic_store_8'
c++: error: linker command failed with exit code 1 (use -v to see invocation)
*** [client/dump/mysqlpump] Error code 1

make[4]: stopped in /var/ports/sharedfs/usr/ports/databases/mysql57-client/work/.build
1 error

make[4]: stopped in /var/ports/sharedfs/usr/ports/databases/mysql57-client/work/.build
*** [client/dump/CMakeFiles/mysqlpump.dir/all] Error code 2

make[3]: stopped in /var/ports/sharedfs/usr/ports/databases/mysql57-client/work/.build
1 error
What cause that error?
 
Running into the same issue, and no binary package mysql57-server exists for freebsd 11.2 :(

Did you get to fix this somehow?

Please help, anyone?
 

Just created the following packages on fbsd 11.2 (i386). ( This is working mysql5.7 from fbsd 10.4 )

Code:
-rw-r--r--   1 root  wheel   1317188 Dec 20 21:21 curl-7.62.0.txz
-rw-r--r--   1 root  wheel    128916 Dec 20 21:22 libedit-3.1.20170329_2,1.txz
-rw-r--r--   1 root  wheel    302920 Dec 20 21:21 libevent-2.1.8_2.txz
-rw-r--r--   1 root  wheel    140600 Dec 20 21:22 liblz4-1.8.3,1.txz
-rw-r--r--   1 root  wheel   1781488 Dec 20 21:18 mysql57-client-5.7.24_1.txz
-rw-r--r--   1 root  wheel  13730032 Dec 20 21:19 mysql57-server-5.7.24_3.txz
-rw-r--r--   1 root  wheel  14461144 Dec 20 21:20 perl5-5.28.1.txz
-rw-r--r--   1 root  wheel   2637816 Dec 20 21:21 protobuf-3.6.1_1,1.txz

So I won't be able to recompile it, but I'm good to go for running it?

I know, time to start thinking about the AMD64 ..... !
 
I don't have an answer to that from personal experience, but SirDice recommended installing the misc/compat10x port (linked in post #22 from that same thread I linked above), and I would follow his advice.
 
I found an answer here at https://forums.freebsd.org/threads/fix-orphaned-port.67734/

I found it using google it's a great way to learn things and find answers. A lot of my questions I find have already been asked and answered It's like multiple choice.

https://www.google.com/search?client=firefox-b-1&q=orphaned+port+freebsd

I've seen this but It still doesn't answer why the Orphaned status:

Code:
root@some_host:~ # uname -a
FreeBSD some_host.com 11.2-RELEASE-p7 FreeBSD 11.2-RELEASE-p7 #0: Tue Dec 18 08:24:48 UTC 2018     root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC  i386

root@some_host:~ # pkg search compat
compat10x-i386-10.4.1004000.20181014 Convenience package to install the compat10x libraries



root@some_host:~ # pkg install compat10x-i386-10.4.1004000.20181014
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
The following 1 package(s) will be affected (of 0 checked):

New packages to be INSTALLED:
        compat10x-i386: 10.4.1004000.20181014

Number of packages to be installed: 1

The process will require 4 MiB more space.
1 MiB to be downloaded.

Proceed with this action? [y/N]: y
[1/1] Fetching compat10x-i386-10.4.1004000.20181014.txz: 100%    1 MiB 630.3kB/s    00:02
Checking integrity... done (0 conflicting)
[1/1] Installing compat10x-i386-10.4.1004000.20181014...
[1/1] Extracting compat10x-i386-10.4.1004000.20181014: 100%

root@some_host:~ # pkg version -vIL=
compat10x-i386-10.4.1004000.20181014 ?   orphaned: misc/compat10x
 
You don't have a /usr/ports/INDEX-* file and you're telling pkg-version(8) explicitly to compare it with INDEX (-I).

I do have INDEX file(s):

Code:
root@some_host:~ # ls -la /usr/ports/INDEX-*
-rw-r--r--  1 root  wheel  44962809 Dec 19 17:24 /usr/ports/INDEX-10
-rw-r--r--  1 root  wheel  64352256 Dec 19 15:42 /usr/ports/INDEX-10.db
-rw-r--r--  1 root  wheel  44795887 Dec 21 14:00 /usr/ports/INDEX-11
-rw-r--r--  1 root  wheel  64527360 Dec 20 20:27 /usr/ports/INDEX-11.db
-rw-r--r--  1 root  wheel  17370624 May 10  2011 /usr/ports/INDEX-5
-rw-r--r--  1 root  wheel  22891253 Nov 12  2012 /usr/ports/INDEX-6
-rw-------  1 root  wheel   1162291 Jul  2  2008 /usr/ports/INDEX-6.bz2
-rw-r--r--  1 root  wheel  27514396 Apr  7  2016 /usr/ports/INDEX-7
-rw-r--r--  1 root  wheel   1164301 Jul  3  2008 /usr/ports/INDEX-7.bz2
-rw-r--r--  1 root  wheel  32413740 Apr  7  2016 /usr/ports/INDEX-8
-rw-r--r--  1 root  wheel  44173855 Dec 19 17:24 /usr/ports/INDEX-9
-rw-r--r--  1 root  wheel  54128640 Apr  6  2016 /usr/ports/INDEX-9.db
 
Without Index file:

Code:
root@some_host:~ # pkg version -vL=
compat10x-i386-10.4.1004000.20181014 ?   orphaned: misc/compat10x
 
If you don't explicitly tell it what to compare against it'll use INDEX first, then ports, then remote.

Code:
     The database of available packages and versions to compare against the
     installed packages may be chosen by specifying one of -P, -R or -I or by
     by setting VERSION_SOURCE in pkg.conf(5).  If not specified then the
     ports index file will be used if it exists (-I).  Otherwise, should a
     ports tree exist that will be used to compare versions (-P).  Failing
     either of those two choices, the repository catalogue will be used (-R).

And apparently this port is missing from your INDEX, which is why it shows up as 'orphaned'.
 
Whenever I use:

portsnap fetch

then:

compat10x-i386-10.4.1004000.20181014 ? orphaned: misc/compat10x

when I use

make fetchindex

it's not longer orphaned

What's the actual difference and what should be used?

Thanks.
 
Is it not working for you? Or does it all work okay now, in spite of the "orphaned" status?

I can't speak from experience on this stuff about using old out-of-date software on newer operating systems than the ones they were designed for, because I do my best to avoid doing stuff like that. I guess I've just been lucky so far, but I've never been in a position where I absolutely had to do it. But the last thread I linked answers the question of "what is an orphaned port?" What it says is: "As this is the latest repository there's always a chance some port failed to build (for whatever reason). If a package is missing in the repository due to build failures it will also show up as 'orphaned'."

So if I'm reading this right, what this means is that this particular version of the mysql client port won't compile on FreeBSD 11.2, and that's the reason why it's called an "orphaned" port. Its deceased parent is FreeBSD version 10, and you're running it on FreeBSD 11.2. Whether make fetchindex reports that it's orphaned, or not, it's still an orphaned port.

The thread also has a link to the repository of the 'latest' software, http://pkg.freebsd.org/FreeBSD:11:amd64/latest/All/ - but the "amd64" part is wrong for your system, and instead you would want http://pkg.freebsd.org/FreeBSD:11:i386/latest/All/ for your "i386" architecture. If you look on that i386 page, you'll find a link to a compat10x-i386-10.4.1004000.20181014.txz package, which is the newer name for the orphaned misc/compat10x - at least according to my humble and incomplete understanding of all this stuff. This might or might not give different results that compiling the misc/compat10x port, I really don't know. I don't know enough about all this stuff to be able to advise you on what you should do, with any real confidence.

If I do understand this at all, probably my best advice would be to upgrade your software so you don't have to keep installing obsolete or orphaned software versions. It might be difficult or painful to upgrade now, but it might not be possible later, if you keep putting it off much longer.

Again I would like to ask, is it working at all? Did installing mysql57-client solve your problem? Do you have any other problems using it, other than that you keep seeing that message about it being orphaned?

Thanks.
 
Back
Top