works in Borland, does not work in Unix T_T

This is a discussion on works in Borland, does not work in Unix T_T within the C Programming forums, part of the General Programming Boards category; Code: /* Fig. 4.6: fig04_06.c Calculating compound interest */ #include <stdio.h> #include <math.h> /* function main begins program execution */ ...

  1. #1
    Registered User dot_rain's Avatar
    Join Date
    Nov 2003
    Posts
    7

    Angry works in Borland, does not work in Unix T_T

    Code:
    /* Fig. 4.6: fig04_06.c
       Calculating compound interest */
    #include <stdio.h>
    #include <math.h>  
    
    /* function main begins program execution */
    int main()
    {
       double amount;             /* amount on deposit */
       double principal = 1000.0; /* starting principal */
       double rate = .05;         /* annual interest rate */
       int year;                  /* year counter */
    
       /* output table column head */
       printf( "%4s%21s\n", "Year", "Amount on deposit" );
    
       /* calculate amount on deposit for each of ten years */
       for ( year = 1; year <= 10; year++ ) {
    
          /* calculate new amount for specified year */
          amount = principal * pow( 1.0 + rate, year );
    
          /* output one table row */
          printf( "%4d%21.2f\n", year, amount );   
       } /* end for */
    
       return 0; /* indicate program ended successfully */
    
    } /* end function main */
    I tried in Borland , it worked fine . But I mainly use Kwrite to program, same code , but it didn't work in Kwrite

    It presented the following errors :
    /tmp/cc0Q6UEB.o(.text+0x6e): In function "main" :
    : undefine reference to "pow"
    collect2: ld returned 1 exit status

  2. #2
    and the hat of wrongness Salem's Avatar
    Join Date
    Aug 2001
    Location
    The edge of the known universe
    Posts
    32,484
    You need to link the math library

    gcc prog.c -lm
    If you dance barefoot on the broken glass of undefined behaviour, you've got to expect the occasional cut.
    If at first you don't succeed, try writing your phone number on the exam paper.
    I support http://www.ukip.org/ as the first necessary step to a free Europe.

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Works on PC, not on UNIX
    By Decrypt in forum C++ Programming
    Replies: 14
    Last Post: 04-20-2006, 01:13 PM
  2. how to Ensure my program works across platforms??
    By hanhao in forum C++ Programming
    Replies: 8
    Last Post: 07-09-2005, 03:43 AM
  3. The Bludstayne Open Works License
    By frenchfry164 in forum A Brief History of Cprogramming.com
    Replies: 8
    Last Post: 11-26-2003, 10:05 AM
  4. fopen();
    By GanglyLamb in forum C Programming
    Replies: 8
    Last Post: 11-03-2002, 11:39 AM
  5. Replies: 6
    Last Post: 01-07-2002, 01:46 AM

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21