Quantcast
Channel: Active questions tagged gcc - Stack Overflow
Viewing all articles
Browse latest Browse all 22295

gcc "undefined reference to"

$
0
0

I'm having trouble finding why my program wont compile. Im not very good at C so I hope someone can spot my error. I was told it was probably a header issue, that is why I'm starting with this. This is the message:

carson@carson-Q303UA:~/Desktop/Github/ccomputing$ makegcc -Wall -Werror test.c -o test polynomial.o counting.o -g -std=c99/tmp/ccfRUFXx.o: In function `main':/home/carson/Desktop/Github/ccomputing/test.c:40: undefined reference to `pymat_create'/home/carson/Desktop/Github/ccomputing/test.c:41: undefined reference to `pymat_create'/home/carson/Desktop/Github/ccomputing/test.c:43: undefined reference to `pymat_set_element'/home/carson/Desktop/Github/ccomputing/test.c:44: undefined reference to `pymat_set_element'/home/carson/Desktop/Github/ccomputing/test.c:45: undefined reference to `pymat_set_element'/home/carson/Desktop/Github/ccomputing/test.c:46: undefined reference to `pymat_set_element'/home/carson/Desktop/Github/ccomputing/test.c:48: undefined reference to `pymat_sum'/home/carson/Desktop/Github/ccomputing/test.c:52: undefined reference to `pymat_get_element'/home/carson/Desktop/Github/ccomputing/test.c:59: undefined reference to `pymat_delete'collect2: error: ld returned 1 exit statusMakefile:4: recipe for target 'test' failedmake: *** [test] Error 1

Here are my files, but for brevity, I will only include the function declarations mentioned.

So here is the setup:

Makefile

all: testtest: polynomial.o counting.o matrix.o    gcc -Wall -Werror test.c -o test polynomial.o counting.o -g -std=c99matrix.o: matrix.c     gcc -c matrix.cpolynomial.o: polynomial.c    gcc -c polynomial.ccounting.o: counting.c    gcc -c counting.c

test.c

#include <stdio.h>#include <stdlib.h>#include <inttypes.h>#include <math.h>#include <assert.h>#include "array.h"#include "matrix.h"#include "polynomial.h"int main() {

polynomial.h

// polynomial#ifndef POLYNOMIAL_H#define POLYNOMIAL_Htypedef struct Polynomial Polynomial;struct Polynomial {    int deg;    double *coefs;};// some functions#endif

polynomial.c

#include <stdio.h>#include <stdlib.h>#include <inttypes.h>#include <math.h>#include <assert.h>#include "array.h"#include "counting.h"#include "matrix.h"#include "polynomial.h"#define TRUE 1#define FALSE 0

matrix.h

#ifndef MATRIX_H#define MATRIX_H#include "polynomial.h"typedef struct Matrix Matrix;typedef struct PolyMatrix PolyMatrix;struct Matrix {    int rows;    int cols;    double *data;};struct PolyMatrix {    int rows;    int cols;    Polynomial *data;};PolyMatrix pymat_create(int rows, int cols);void pymat_clear(PolyMatrix A);void pymat_delete(PolyMatrix mat);PolyMatrix pymat_zero(int rows, int cols);Polynomial pymat_get_element(PolyMatrix mat, int row, int col);void pymat_set_element(PolyMatrix mat, int row, int col, Polynomial element);PolyMatrix pymat_get_rows(PolyMatrix mat, int rows, int *rows_arr);PolyMatrix pymat_get_cols(PolyMatrix mat, int cols, int *cols_arr);PolyMatrix pymat_join(PolyMatrix A, PolyMatrix B, int axis);//void pymat_print(PolyMatrix mat);PolyMatrix pymat_copy(PolyMatrix mat);#endif

matrix.c

#include <stdio.h>#include <stdlib.h>#include <assert.h>#include "array.h"#include "polynomial.c"#include "matrix.h"#define TRUE 1#define FALSE 0

Viewing all articles
Browse latest Browse all 22295

Latest Images

Trending Articles



Latest Images

<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>