Sponsored Content
Full Discussion: Compiling UNIX System V
Top Forums UNIX for Beginners Questions & Answers Compiling UNIX System V Post 303031224 by hicksd8 on Sunday 24th of February 2019 07:06:00 AM
Old 02-24-2019
This is a rare question indeed for this forum.

What are you trying to do???? And why???????

You are missing the point here my friend. You downloaded the entire source code for your O/S of choice so you have the source code of the C compiler, the source code of all shared libraries, the source code for the shells, et al. You do not have any executables!!!

So the question that you are really asking is:
Q: How do I compile a compiler without a compiler?
A: You need to 'seed' the operation via a closely related Unix/Linux version. Install a closely related foreign version and compile the entire toolchain first. Having generated your toolchain this way, you then need to compile the toolchain AGAIN using the tools that you just generated because, for example, all your libraries will have been created cross-compiled. To get them pure you need to do it all a third time.

Once you've got a complete toolchain you can begin to compile your kernel (bespoke or not, as your choice). When the kernel is created you can install grub and boot your own kernel. Then you can continue to create all other application and things.

So, what are you trying to do? Compiling your kernel can take hundreds of hours at 100% CPU. Then you test it, realize it's wrong, and have to do it all again. It's very difficult to create bespoke O/S for multi-nationals, public services, defense contractors, etc which I know to my cost. I do it all the time. You also need an extensive knowledge of O/S internals so it's not an easy occupation.
These 2 Users Gave Thanks to hicksd8 For This Post:
 

10 More Discussions You Might Find Interesting

1. Solaris

compiling Oracle Forms in UNIX-solaris

I am using the command: f60gen to complie a form and it says it does not work Pls help, as I am trying to compile a few .fmb files to fmx... Cheers (1 Reply)
Discussion started by: etravels
1 Replies

2. UNIX for Advanced & Expert Users

compiling idl file on unix

hi i need to compile idl files to convert them to classes, on Unix platform. Please tell me how to compile these files & which commands are to be used for this purpose. Thanks & Regards (6 Replies)
Discussion started by: rochitsharma
6 Replies

3. Shell Programming and Scripting

Compiling scripts written in Unix

I would like to convert some Unix scripts into machine language. I dont know how to programe in C. Is there any software out there that I can use to convert these Unix scripts into machine language. Thanks. (1 Reply)
Discussion started by: coburn
1 Replies

4. Programming

compiling c program in unix

if somebody can help me pls. i need the source code for a shell which compiles C or java programs in unix i need a very short and simple one, just the compiling part Respect (2 Replies)
Discussion started by: zlatan005
2 Replies

5. Programming

Problem compiling c file on unix

HI, I have a proc installation. On running the following 3 commands, I successfully get 3 C files. proc char_map=string util.pc proc char_map=string FDRFeedMain.pc proc char_map=string NonMons.pc This gives me util.c FDRFeedMain.c NonMons.c Now when i try to compile the... (6 Replies)
Discussion started by: allah_waris45
6 Replies

6. Programming

Compiling Pro*C program under unix

Hello, I am trying to compile a Pro*C program under unix: proc iname=test.pc works fine but then I am not able to compile the test.c file : gcc test.c -o test.o -L $ORACLE_HOME/lib -l clntsh /usr/bin/ld: Object file format error in: /u01/app/oracle/product/10.1.0.2.0/lib:... (1 Reply)
Discussion started by: nsmrmd
1 Replies

7. UNIX for Dummies Questions & Answers

Compiling Kernel for an Embedded System

-----Edit----- My original post was long and confusing. To sum it up, I am wondering how to do the following Debian based commands on an RPM type system. dpkg -i XXX.deb update-initramfs -k xxx -c update-grub I hope someone can provide some insight. Thanks in advance! --------------... (0 Replies)
Discussion started by: b4sakenxx
0 Replies

8. Shell Programming and Scripting

Compiling tools for unix machine using C

Hello everyone i have a script written in C and i need to compile it in a unix machine i am a first time programmer and i do not know how to compile this and also i need to save the results in a table please help we normally use instructions like build_bb -f but now im confused i dnt knw hw to use... (1 Reply)
Discussion started by: DeVGuL
1 Replies

9. UNIX for Dummies Questions & Answers

Compiling error in UNIX

Hi, I'm trying to compile the code for a program and I run into the following error, ncfile.h: In constructor ‘ncfile::NcAttribute<T>::NcAttribute(const std::string&, const char*)': ncfile.h:357: error: there are no arguments to ‘strlen' that depend on a template parameter, so a declaration of... (1 Reply)
Discussion started by: bstephens
1 Replies

10. UNIX for Beginners Questions & Answers

Compiling Android system on Linux MInt

i have been trying to compile an android Marshmello system with no success. every time i try to compile i get this error javac: invalid source release: 1.7s Usage: javac <options> <source files> make: *** Error 41 #### make failed to build some targets (03:04 (mm:ss)) ####... (2 Replies)
Discussion started by: gearm
2 Replies
mpif90(1)								MPI								 mpif90(1)

NAME
mpif90 - Compiles and links MPI programs written in Fortran 90 DESCRIPTION
This command can be used to compile and link MPI programs written in Fortran. It provides the options and any special libraries that are needed to compile and link MPI programs. It is important to use this command, particularly when linking programs, as it provides the necessary libraries. COMMAND LINE ARGUMENTS
-show - Show the commands that would be used without runnning them -help - Give short help -f90=name - Use compiler name instead of the default choice. Use this only if the compiler is compatible with the MPICH library (see below) -config=name - Load a configuration file for a particular compiler. This allows a single mpif90 command to be used with multiple compilers. -compile_info - Show the steps for compiling a program. This option can be used to see what options and include paths are used by mpif90. -link_info - Show the steps for linking a program. This optoin can be used to see what options and libraries are used by mpif90. -profile=name - Use the MPI profiling given by name. See below for details -mpe=name - Use an MPE profiling library. The behavior is similar to using -profile=mpe_name.conf . -echo - Show exactly what this program is doing. This option should normally not be used. others - are passed to the compiler or linker. For example, -c causes files to be compiled, -g selects compilation with debugging on most systems, and -o name causes linking with the output executable given the name name . ENVIRONMENT VARIABLES
The environment variables MPICH_F90 may be used to select different Fortran compiler and linker. Note that since MPICH is built with a particular C and Fortran compiler, change the compilers used can cause problems. Use this only if you could intermix code compiled with the different compilers. COMPATIBLE COMPILERS
The MPI library may be used with any compiler that uses the same lengths for basic data objects (such as long double ) and that uses com- patible run-time libraries. On many systems, the various compilers are compatible and may be used interchangably. There are exceptions; if you use the MPICH_F90 environment variable or the -f90=name command-line argument to override the choice of compiler and encounter prob- lems, try reconfiguring MPICH2 with the new compiler and installing MPICH2 in a separate location. See the installation manual for more details. EXAMPLES
To compile a single file foo.f , use mpif90 -c foo.f To link the output and make an executable, use mpif90 -o foo foo.o Combining compilation and linking in a single command mpif90 -o foo foo.f is a convenient way to build simple programs. SELECTING A PROFILING LIBRARY
The -profile=name argument allows you to specify an MPI profiling library to be used. name can have two forms: A library in the same directory as the MPI library The name of a profile configuration file If name is a library, then this library is included before the MPI library. This allows the simple use of libraries that make use of the MPI profiling interface and that are installed in the same directory as the MPI library. If name.conf is the name of a file in the sysconfdir directory, then this is read and may define the following variables: PROFILE_PRELIB - Libraries (and paths) to include before the MPI library PROFILE_POSTLIB - Libraries to include after the MPI library PROFILE_INCPATHS - C preprocessor arguments for any include files For example, to add /usr/local/myprof/include to the include path and the library libmyprof.a in /usr/local/myprof/lib to the link step, you could create the file myprof.conf with the lines PROFILE_PRELIB="-L/usr/local/myprof/lib -lmyprof" PROFILE_INCPATHS="-I/usr/local/myprof/include" and place it in the sysconfdir directory (this directory is set at configure time when MPICH is built). Then using the command-line argument -profile=myprof will cause these definitions to be added to the relevant compile commands. SEE ALSO
mpicc, mpicxx, mpif90, mpiexec LOCATION
mpif90.txt 11/2/2007 mpif90(1)
All times are GMT -4. The time now is 07:53 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy