CauldronDevelopmentLLC / CAMotics

Open-Source Simulation & Computer Aided Machining - A 3-axis CNC GCode simulator
Other
602 stars 140 forks source link

Is mysqlclient used in CAMotics? #297

Closed hpmachining closed 5 years ago

hpmachining commented 5 years ago

If I build CAMotics as is, I get a hard dependancy to libmariadb.so.3 (libmysqlclient.so). If I add my LDFLAGS, "-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now", to the LINKFLAGS in SConstruct I no longer get the dependancy to libmariadb, and the application appears to run properly without it installed. From what I can tell, the --as-needed flag is removing it. So is mysqlclient used for any added functionality in CAMotics?

For reference, I am building in a clean chroot in Arch Linux using these packages: v8-3.14 cbang CAMotics Click the "View PKGBUILD" link to see the build scripts.

jcoffland commented 5 years ago

mysql is not needed for CAMotics. I did not know about the --as-needed option. Nice trick. Another way to handle this is to just not install the mysql dev packages in your chroot.

hpmachining commented 5 years ago

Thanks for the info. I have mariadb-libs as a depends for cbang, so it gets automatically installed along with cbang when building CAMotics. Arch doesn't use separate dev packages. I should probably change the depends in cbang to be an optional depends.

jcoffland commented 5 years ago

Are you making an official Arch package?

hpmachining commented 5 years ago

Not official, but I'm maintaining the packages in the Arch User Repository (AUR). The links for cbang and CAMotics in my comment above, plus a cbang-git package. I also intend to add a CAMotics-git package, as well. “Official” requires a TU (Trusted User) to adopt the package and add it to the official repository as a prebuilt binary package. AUR just provides the build script and any necessary patches and such for users to build a package themselves.

jcoffland commented 5 years ago

Ok, good to know.