SC-CONFIG(1)
π SC-CONFIG(1) β like, the whole manual, but make it make sense π
okay bestie, so this is page one of the General Commands Manual β the SC-CONFIG(1) one β and it's literally just about one tiny script that tells you how SC got built on your machine. that's it. that's the whole vibe. β¨
πΈ NAME πΈ
sc-config β a script that gives you the deets about the installed version of SC. that's the entire job. it's giving "personal assistant for your compiler flags." π
π¦ SYNOPSIS π¦
sc-config [--prefix[=DIR] ] [--exec-prefix[=DIR] ] [--version] [--libs]
[--cppflags] [--cc] [--cflags] [--cxx] [--cxxflags] [--f77] [--f77flags]
like, you just run it with whatever flags you need and it hands you the info. no cap. π«Ά
π DESCRIPTION π
the sc-config program is your little hookup for the compilers, the compiler options, and the libraries you need to actually use the SC (Scientific Computing) toolkit from your own program. that's it β it's the middleman between your code and SC, and honestly? the middleman ate. π₯
β¨ OPTIONS β¨
sc-config returns info about how SC was compiled and installed. here's everything that's available, no gatekeeping: π
--prefixβ the directory where SC is installed. the home base. the address. π--versionβ the version of SC. so you know what you're working with. π--libdirβ the directory where the libraries are found. (yes, the original page says "were" β we're keeping it, it's iconic. π) π--libsβ the libraries and library paths you need to link. the whole link package, bestie. π--cppflagsβ the include directories you need to build. π οΈ--ccβ the C compiler. π§--cflagsβ the C compiler flags. π©--cxxβ the C++ compiler. π--cxxflagsβ the C++ compiler flags. π©--f77β the FORTRAN 77 compiler. (yes, FORTRAN 77. she's vintage and she's slaying. π) π§--f77flagsβ the FORTRAN 77 compiler flags. π©
heads up: the synopsis also lists--prefix[=DIR]and--exec-prefix[=DIR]with the optional=DIRbit β that's exactly how it's written up top, so if you saw those and wondered, no you didn't, they're right there in the synopsis. π«Ά
π EXAMPLES π
okay so say you wanna link your executable to SC. use a Makefile for GNU make similar to this one and you're literally done:
SCCONFIG = /usr/bin/sc-config
CXX := $(shell $(SCCONFIG) --cxx)
CXXFLAGS := $(shell $(SCCONFIG) --cxxflags)
CPPFLAGS := $(shell $(SCCONFIG) --cppflags)
LIBS := $(shell $(SCCONFIG) --libs)
myprog: myprog.o
$(CXX) $(CXXFLAGS) -o $@ $^ $(LIBS)
look at that. the $(shell ...) calls are just asking sc-config for the deets and dropping them straight into your variables. main character Makefile energy fr fr. π
β a lil sign-off β
that's the page, bestie β Version 2, dated 15 Feb 2001, from the SC-CONFIG(1) manual. old? yes. iconic? also yes. now go compile something gorgeous. πβ¨π¦π
π¦ where this page comes from
- debian bookworm: libsc-dev 2.3.1-22
- ubuntu jammy: libsc-dev 2.3.1-21
- ubuntu noble: libsc-dev 2.3.1-22build2
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms