BUILDPROGRAM(1)
π BUILDPROGRAM(1) π
okay bestie so you found yourself in User Commands territory and the page is called BUILDPROGRAM(1) β that's BuildProgram for short, and honestly she's a whole vibe. stay with me π
β¨ NAME β¨
BuildProgram β ok so what she does is: compile, link with the Gnuastro library and its dependencies, and run a C program. that's the whole personality. literally iconic. π¦
πΈ SYNOPSIS πΈ
astbuildprog [OPTION...] C-source [ARGUMENTS TO RUN]
no cap, that's it. options, then your C source, then whatever args you wanna hand to the program. slay.
π DESCRIPTION π
so, BuildProgram is part of GNU Astronomy Utilities 0.24, and here's the tea: BuildProgram compiles and runs a C program for you, and while doing that it automatically links with the libraries that Gnuastro depends on. so like β you do not have to sit there worrying about explicitly linking with CFITSIO when you wanna work on a FITS file, or linking with GSL when you wanna use GNU Scientific Library's functions. she handles it. periodt. β¨
and the standard compiler options -I, -L, and -l are also available for further customization of the build, so you still have full main character energy over your own build. π
for more info, pls run any of these commands. and like β special shoutout to the second one, because it contains a very comprehensive explanation of BuildProgram's invocation: expected input(s), output(s), and a full description of all the options. it's giving "read the docs but make it fun":
All options and their values:
$ astbuildprog -P
Inputs/Outputs and options:
$ info astbuildprog
Full section in manual/book:
$ info BuildProgram
Full Gnuastro manual/book:
$ info gnuastro
and if you couldn't find your answer in the manual (π it happens), you can get direct help from experienced Gnuastro users and developers. for more information, please run:
$ info help-gnuastro
π₯ OPTIONS π₯
BuildProgram options:
π Input π
-a,--la=STRβ Libtool.lato use instead of default. (custom libtool file? yes queen π)-c,--cc=STRβ Name of C compiler's executable. tell her which compiler to use π-e,--noenvβ No env. (e.g.,LDFLAGSorCPPFLAGS) in build. like, no environment variables, keep it clean β¨-I,--includedir=STRβ Directories to search for'#include's. that's your include path bestie π¦-l,--linklib=STRβ Link libraries, e.g., for libgsl:'-lgsl'. π-L,--linkdir=STRβ Directory to search for libraries to link. (note: big-L= linkdir, little-l= linklib, don't mix em up π)-t,--tag=STRβ Libtool'--tag': programming language. π·οΈ
π Output π
-b,--onlybuildβ Don't run the built program. build it, then justβ¦ let it sit there being pretty β¨-d,--deletecompiledβ Delete compiled program after running. clean up your mess, we love growth π-D,--dontdeleteβ Don't delete output if it exists. keep the existing one, she's precious π«Ά-g,--debugβ Debugging information in compiled binary. for when you gotta investigate π-K,--keepinputdirβ Keep input directory for automatic output. π--outfitsnocommitβ No Git commit in 0-th HDU of output FITS.--outfitsnoconfigβ No metadata in 0-th HDU of output FITS.--outfitsnodateβ No'DATE'in 0-th HDU of output FITS.--outfitsnoversionsβ No versions in 0-th HDU of output FITS.-o,--output=STRβ Output file name. name your baby π-O,--optimize=INTβ Optimization level:0,1,2,3. pick your level of extra β‘-W,--warning=STRβ Compilation warnings on command-line. π¨
β Operating modes β
-?,--helpβ give this help list. yes,-?is real, she's that girl π--checkconfigβ List all config files and variables read. snoop era π--citeβ BibTeX citation for this program. cite her or it doesn't count, iykyk π--config=STRβ Read configuration file STR immediately. π«‘--config-prefix=STRβ Custom prefix of option names config files. π·οΈ--lastconfigβ Do not parse any more configuration files. that's it, we're done, no more π΅--minmapsize=INTβ Min. bytes to avoid RAM automatically. πΎ--onlyversion=STRβ Only run if the program version is STR. picky queen π-P,--printparamsβ Print parameter values to be used and abort. just vibes + a list, then bye π--quietmmapβ Don't print mmap'd file's name and size. π€«-q,--quietβ Only report errors, remain quiet about steps. silent but deadly β¨-S,--setdirconfβ Set default values for this directory and abort. π--usageβ give a short usage message. the tl;dr πΈ-U,--setusrconfβ Set default values for this user and abort. πββοΈ-V,--versionβ print program version. π
real talk for a sec bestie: Mandatory or optional arguments to long options are also mandatory or optional for any corresponding short options. that's not a suggestion, that's the rule. π«Ά
GNU Astronomy Utilities home page: http://www.gnu.org/software/gnuastro/ π
π REPORTING BUGS π
found a bug? Report bugs to bug-gnuastro@gnu.org. be nice, be specific, include the details π
π COPYRIGHT π
Copyright Β© 2015-2025 Free Software Foundation, Inc. License GPLv3+: GNU General public license version 3 or later.
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. (like, none. zero. don't come for her if it breaks π)
Written/developed by Mohammad Akhlaghi π«Ά
π§ SEE ALSO π§
The full documentation for BuildProgram is maintained as a Texinfo manual. If the info and BuildProgram programs are properly installed at your site, the command
info BuildProgram
should give you access to the complete manual. go read it, she ate πβ¨
k that's the whole page bestie, and before you go: this was GNU Astronomy Utilities 0.24, dated November 2025 β mwah, stan, bye πππ¦
π¦ where this page comes from
- epel 10: gnuastro 0.24-1.el10_3 Β· GPL-3.0-or-later AND FSFAP AND GFDL-1.3-or-later
- epel 9: gnuastro 0.24-1.el9 Β· GPL-3.0-or-later AND FSFAP AND GFDL-1.3-or-later
- nixos 26.05: gnuastro 0.24
- nixpkgs unstable: gnuastro 0.24
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms