No puedo crear y compilar proyectos en Mac c++

Iniciado por yoyefej298, 9 Marzo 2021, 21:51 PM

0 Miembros y 1 Visitante están viendo este tema.

yoyefej298

actualmente estoy en MacOS BigSur, usando Visual Studio Code.

Tengo esta clase llamada main.cpp

Código (cpp) [Seleccionar]
#include <iostream>
#include "Intercambio.h"

using namespace std;

int main()
{
   int a = 1, b = 2;

   cout << a << endl;
   cout << b << endl;

   Intercambio(1,2);

   cout << a << endl;
   cout << b << endl;

   return 0;
}



Tengo este archivo de cabecera llamado Intercambio.h

Código (cpp) [Seleccionar]
void Intercambio(int a, int b);


y tengo otro archivo llamado Intercambio.cpp

Código (cpp) [Seleccionar]
void Intercambio(int a, int b)
{
   int aux;
   aux = a;
   a = b;
   b = aux;
}


Pero cuando compilo me aparece este error:

Undefined symbols for architecture x86_64: "Intercambio(int, int)", referenced from: _main in main-1bda5d.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation)

Estos programas los he intentado hacer en windows, pero en mi maquina principal (MacOS) no funciona :c



MOD: Especificado lenguaje C++ en las etiquetas de Código GeSHi (code=cpp)

Eternal Idol

#1
Supongo que sera un problema del proyecto y no estara compilando Intercambio.cpp. ¿Alguna razon logica para no usar Xcode?




g++ main.cpp:
Citar$ g++ main.cpp
Undefined symbols for architecture x86_64:
 "Intercambio(int, int)", referenced from:
     _main in main-247a3f.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

g++ main.cpp Intercambio.cpp funciona perfectamente.
La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón