Faits :
A.
Par jugement du 5 juillet 2018, le Tribunal correctionnel de l'arrondissement de Lausanne a constaté que X._ s'est rendu coupable de vol par métier et de violation de domicile, l'a condamné à une peine privative de liberté de 15 mois, sous déduction de 277 jours de détention subie avant jugement, peine entièrement complémentaire à celle prononcée par la Cour d'appel pénale du Tribunal cantonal vaudois le 1er février 2018, a renoncé à ordonner l'expulsion de X._ au sens de l'art. 66a al. 2 CP, a constaté que X._ a subi 45 jours de détention dans des conditions de détention provisoire illicites, a ordonné que 23 jours de détention soient déduits de la peine fixée à titre de réparation du tort moral et a ordonné le maintien de X._ en détention pour des motifs de sûreté.
B.
Par jugement du 12 novembre 2018, la Cour d'appel pénale du Tribunal cantonal a partiellement admis l'appel du Ministère public du canton de Vaud à l'encontre du jugement précité et l'a réformé en ce sens qu'elle a ordonné l'expulsion de X._ du territoire suisse pour une durée de dix ans. En substance, elle a retenu les faits suivants.
B.a. X._ est né en 1960 à A._, en Guinée, pays dont il est ressortissant. Originaire d'un village situé selon ses dires à 800 km de la capitale, il a été élevé par ses parents et a suivi sa scolarité à A._, obtenant un baccalauréat, avant de suivre des études de droit à l'université. Après avoir obtenu une licence en droit, il a accompli un stage d'avocat, obtenu son titre professionnel et ouvert sa propre étude à A._, se spécialisant notamment, selon ses déclarations, dans la défense des opposants politiques. Il a ainsi pratiqué comme avocat durant 6 ans environ, avant que le régime militaire en place ne ferme son cabinet et ne l'emprisonne durant 18 mois. Étant parvenu à s'évader, X._ a fui au Sénégal, puis en Espagne et enfin en Suisse, où il est arrivé au mois de juin 1996. Lors de son audition cantonale de requérant d'asile, le 18 juillet 1996, il a donné une toute autre version, expliquant avoir été militaire professionnel, officier dans l'armée de Guinée, et avoir fui après avoir été condamné à mort par un tribunal militaire pour participation à un coup d'État. X._ a déposé une demande d'asile, qui a été rejetée en 1999. A cette époque, il a rencontré une Suissesse, avec laquelle il a vécu un an et demi et a eu un enfant hors mariage, ce qui lui a permis d'obtenir un permis de séjour B. En 2000, il s'est marié avec B._, ressortissante haïtienne, laquelle a ainsi obtenu un titre de séjour en Suisse. Le couple a eu trois filles, dont l'aînée est décédée en 2003 d'une malformation cardiaque. Les deux suivantes sont respectivement nées en 2004 et 2006. Dès 2004, X._ et son épouse ont rencontré d'importantes difficultés conjugales et se sont séparés provisoirement à plusieurs reprises, la dernière fois de façon définitive en 2010. En Guinée, X._ a encore eu deux autres enfants. Son fils aîné, handicapé, est décédé au mois de décembre 2017 des suites de sa maladie. Quant à sa fille, elle vivrait actuellement au Sénégal.
B.b. L'état de santé de X._ n'est actuellement pas bon. Il souffre d'une hypertrophie bénigne de la prostate, avec hématurie. Une suspicion de cancer de la prostate a été écartée. Depuis janvier 2018, il souffre par ailleurs d'une rétention urinaire aigüe, qui a nécessité la pose d'une sonde vésicale. Entre le 22 janvier et le 31 juillet 2018, il a été adressé à dix reprises à l'hôpital C._, dont sept fois en urgence. Une intervention chirurgicale en résection endoscopique de la prostate était prévue entre les mois de décembre 2018 et de février 2019, sauf complications. Si cette intervention aboutit, il pourra se passer de sonde urinaire et son état ne nécessitera plus de soins particuliers. Par ailleurs, X._ souffre de polyglobulie, pouvant entraîner des difficultés respiratoires l'ayant déjà conduit à des malaises. Sa polyglobulie, qui est stabilisée par un traitement à base d'Aspirine, a été attribuée par les médecins à son tabagisme, étant précisé que X._ a récemment repris sa consommation de tabac, à raison de trois cigarettes par jour. Il souffre également d'hypertension artérielle, pour laquelle il reçoit une bi-thérapie Amlodipine-Lisitril. Sur le plan psychiatrique, le prévenu bénéficie d'entretiens mensuels et d'un traitement antidépresseur et anxiolytique.
B.c. Sur le plan professionnel, X._ a travaillé dans un restaurant en 1998, puis pendant onze ans comme expéditeur pour D._, avant d'être licencié pour motifs économiques en 2011. Depuis lors, il a enchaîné plusieurs petits emplois provisoires, puis s'est installé, en 2015, comme juriste indépendant, ses mandats lui rapportant en moyenne 800 fr. par mois. Il percevait en outre 1'000 fr. du revenu d'insertion et les services sociaux payaient le loyer de son appartement, qui s'élevait à 1'500 fr. par mois. Par ailleurs, il a créé un journal traitant de la problématique des requérants d'asile édité à compte d'auteur, qui n'a toutefois été publié qu'à trois reprises. En cours d'enquête, il a produit un courrier attestant qu'il était au bénéfice d'une promesse d'embauche dès sa sortie de prison. Il a des actes de défaut de biens pour un montant d'environ 100'000 francs.
B.d. Entre la fin de l'année 2016 et le mois de novembre 2017, dans la région E._ et à F._, X._ a commis dix-sept vols par introduction clandestine. Il a ainsi dérobé des produits électroniques (ordinateurs, caméra, appareil photos), des portemonnaies, des bijoux, des espèces ainsi que d'autres objets.
C.
Le casier judiciaire suisse de X._ comporte les inscriptions suivantes:
- 6 juillet 2009, Tribunal de police de Lausanne: 240 heures de travail d'intérêt général pour lésions corporelles simples et vol;
- 14 juillet 2011, Tribunal d'arrondissement de Lausanne: 240 jours-amende à 10 fr. pour vol, délit manqué de vol et violation de domicile (peine partiellement complémentaire à celle du 6 juillet 2009);
- 7 décembre 2011, Ministère public de l'arrondissement de La Côte: 10 jours-amende à 10 fr. pour injure (peine complémentaire à celle du 14 juillet 2011);
- 1er avril 2014, Ministère public cantonal Strada: 90 jours-amende à 30 fr. pour tentative de vol et violation de domicile;
- 12 octobre 2017, Ministère public de l'arrondissement de Lausanne: 20 jours-amende à 30 fr. avec sursis pendant 2 ans et amende de 300 fr. pour faux dans les titres;
- 1er février 2018, Cour d'appel pénale du Tribunal cantonal vaudois: peine privative de liberté de 24 mois, dont 14 mois avec sursis pendant 5 ans pour vol par métier, escroquerie, recel, menaces qualifiées et violation de domicile.
C.a. X._ est incarcéré à la prison G._ depuis le 3 janvier 2018. Selon le rapport établi par la direction de cet établissement le 13 juin 2018, son comportement répond, dans l'ensemble, aux attentes. Au 13 juin 2018, il n'avait fait l'objet d'aucune sanction disciplinaire et n'avait pas d'ennuis avec ses codétenus. En raison des soins fréquents dont il est l'objet, X._ occupe une cellule d'observation, située à proximité du service médical.
D.
X._ forme un recours en matière pénale au Tribunal fédéral. Il conclut principalement, avec suite de frais et dépens, à la réforme du jugement de la cour cantonale du 12 novembre 2018 en ce sens qu'il est renoncé à ordonner son expulsion ainsi que son maintien en détention, et que les frais d'appel, y compris l'indemnité du conseil d'office, sont laissés à la charge de l'Etat. Subsidiairement, il conclut à l'annulation du jugement entrepris et au renvoi de la cause à l'autorité de première instance pour nouvelle décision. Il sollicite également le bénéfice de l'assistance judiciaire et l'octroi de l'effet suspensif.
E.
Par ordonnance du 28 janvier 2019, le Président de la Cour de droit pénal du Tribunal fédéral a déclaré la requête d'effet suspensif sans objet, le recours étant de plein droit suspensif sur la question de l'expulsion.
F.
Invités à se déterminer sur le recours, la Cour d'appel pénale du Tribunal cantonal s'est référée aux considérants de son jugement, tandis que le Ministère public a conclu au rejet du recours. Le recourant a répliqué en personne et par l'intermédiaire de son conseil.

Considérant en droit :
1.
Le recourant a fait parvenir des courriers ainsi que des pièces nouvelles au Tribunal fédéral hors du délai de recours et hors du délai non-prolongeable qui lui a été accordé pour répliquer. Ils sont par conséquent irrecevables (cf. art. 99 al. 1 et 100 al. 1 LTF).
2.
Le recourant se plaint de la violation de son droit d'être entendu et de son droit à l'administration des preuves. Selon l'art. 389 al. 1 CPP, la procédure de recours se fonde sur les preuves administrées pendant la procédure préliminaire et la procédure de première instance. L'art. 389 al. 3 CPP règle les preuves complémentaires. Ainsi, la juridiction de recours administre, d'office ou à la demande d'une partie, les preuves complémentaires nécessaires au traitement du recours. Conformément à l'art. 139 al. 2 CPP, il n'y a pas lieu d'administrer des preuves sur des faits non pertinents, notoires, connus de l'autorité ou déjà suffisamment prouvés. Cette disposition codifie, pour la procédure pénale, la règle jurisprudentielle déduite de l'art. 29 al. 2 Cst. en matière d'appréciation anticipée des preuves (arrêts 6B_1067/2018 du 23 novembre 2018 consid. 2.2.1; 6B_1342/2017 du 23 novembre 2018 consid. 3). Le refus d'instruire ne viole ainsi le droit d'être entendu des parties que si l'appréciation anticipée de la pertinence du moyen de preuve offert, à laquelle le juge a procédé, est entachée d'arbitraire (<ref-ruling> consid. 3.3 p. 64 et les références citées).
2.1. En l'espèce, la cour cantonale a rejeté la requête du recourant tendant à l'audition de son épouse B._ en qualité de témoin. Elle a considéré que B._ avait déjà été entendue comme témoin dans le cadre de la procédure de première instance. Elle s'était notamment exprimée sur les relations qu'entretenait le recourant avec leurs deux filles. L'audition de B._ n'apporterait aucun élément utile, les pièces produites d'office par la cour d'appel et celles versées à la procédure par le recourant dans le cadre de la procédure d'appel étant suffisantes pour lui permettre de forger sa conviction. Au demeurant, le courrier adressé par B._ à la cour d'appel, dans lequel elle évoquait l'évolution de la relation entre le recourant et leurs filles depuis le jugement de première instance et sa perception des conditions sanitaires en Guinée, avait été versé au dossier.
2.2. Le recourant a déclaré lors de l'audience d'appel que ses filles étaient venues lui rendre visite à une reprise en prison et qu'elles avaient fait une demande d'autorisation permanente (jugement entrepris, p. 3). Il n'indique pas en quoi B._ aurait pu apporter d'autres éléments pertinents à cet égard, qu'elle n'aurait pas déjà donnés lors de son audition en première instance et qui ne ressortiraient pas non plus de sa lettre adressée à la cour cantonale. De même, le recourant ne dit pas en quoi son épouse, qui est de nationalité haïtienne et vit en Suisse, aurait pu renseigner utilement la cour cantonale sur les structures de soin en Guinée, étant du reste souligné que le recourant a pu produire des pièces sur ce point. Enfin, le recourant ne saurait tirer argument du fait que le refus d'audition de B._ précède le courrier que celle-ci a adressé à la cour cantonale puisque, précisément, lorsque le Président de la cour cantonale a décidé de refuser son audition, il a informé le recourant qu'il pouvait néanmoins produire un écrit de celle-ci (jugement attaqué, p. 10). Partant, le recourant ne démontre pas en quoi l'appréciation anticipée du moyen de preuve serait insoutenable. Le grief est rejeté dans la mesure de sa recevabilité.
3.
Le recourant se plaint d'un défaut de motivation du jugement attaqué en lien avec la durée de l'expulsion prononcée. Il fait également grief à l'autorité précédente de ne pas avoir motivé sa décision ordonnant sa détention à titre de sûreté.
3.1. Le droit d'être entendu, garanti par les art. 3 al. 2 let. c CPP, 29 al. 2 Cst. et 6 par. 1 CEDH, implique pour l'autorité l'obligation de motiver sa décision, afin que le destinataire puisse la comprendre, l'attaquer utilement s'il y a lieu et afin que l'autorité de recours puisse exercer son contrôle. Le juge doit ainsi mentionner, au moins brièvement, les motifs qui l'ont guidé et sur lesquels il a fondé sa décision, de manière à ce que l'intéressé puisse se rendre compte de la portée de celle-ci et l'attaquer en connaissance de cause (<ref-ruling> consid. 3.4.3 p. 46; <ref-ruling> consid. 1.3.1 p. 253; <ref-ruling> consid. 2.2 p. 183). Il n'est pas tenu de discuter tous les arguments soulevés par les parties, mais peut se limiter à l'examen des questions décisives pour l'issue du litige (<ref-ruling> consid. 4.2 p. 157; <ref-ruling> consid. 2.2 p. 183). Dès lors que l'on peut discerner les motifs qui ont guidé la décision de l'autorité, le droit à une décision motivée est respecté, même si la motivation présentée est erronée (<ref-ruling> consid. 3.2.1 p. 565).
3.2. Les considérants du jugement entrepris mettent en exergue les motifs d'une expulsion d'une durée de dix ans, comme cela découle de ce qui suit, de sorte que le recourant est infondé à invoquer une violation de son droit d'être entendu sur ce point.
3.3. La détention pour des motifs de sûreté relève de la compétence de la Première Cour de droit public du Tribunal fédéral (cf. art. 29 al. 3 du règlement du Tribunal fédéral [RTF; RS 173.110.131]). Il est néanmoins expédient de statuer dans le cadre du présent recours, seul un vice formel étant pris en compte, sans examen des conditions spécifiques à la détention pour des motifs de sûreté (cf. arrêt 6B_506/2017 du 14 février 2018 consid. 5).
3.4. Il ressort des considérants du jugement attaqué (consid. 3.5 p. 25) que " [l] e maintien en détention pour des motifs de sûreté du prévenu sera ordonné, vu le risque de récidive élevé qu'il présente (art. 221 al. 1 let. c CPP) ". La cour cantonale a donc bien indiqué les motifs de la détention du recourant à titre de sûreté. Infondé, le grief de violation du droit d'être entendu est rejeté.
4.
En tête de son mémoire de recours, le recourant indique que les moyens qu'il développe s'en prennent aussi bien au raisonnement juridique des juges cantonaux que, cas échéant, aux faits retenus ou passés sous silence de manière arbitraire ou contraire aux art. 6 et 389 CPP et donc à l'art. 95 LTF.
4.1. Le Tribunal fédéral n'est pas une autorité d'appel, auprès de laquelle les faits pourraient être rediscutés librement. Il est lié par les constatations de fait de la décision entreprise (art. 105 al. 1 LTF), à moins qu'elles n'aient été établies en violation du droit ou de manière manifestement inexacte au sens des art. 97 al. 1 et 105 al. 2 LTF, à savoir, pour l'essentiel, de façon arbitraire selon l'art. 9 Cst. Une décision n'est pas arbitraire du seul fait qu'elle apparaît discutable ou même critiquable; il faut qu'elle soit manifestement insoutenable et cela non seulement dans sa motivation mais aussi dans son résultat (<ref-ruling> consid. 1.1 p. 503). Le Tribunal fédéral n'entre en matière sur les moyens fondés sur la violation de droits fondamentaux, dont l'interdiction de l'arbitraire, que s'ils ont été invoqués et motivés de manière précise (art. 106 al. 2 LTF), les critiques de nature appellatoire étant irrecevables (<ref-ruling> consid. 2.4 p. 368).
4.2. Le recourant motive ses griefs fondés sur la violation du droit fédéral et international en s'appuyant sur ses propres allégations de fait. S'il se réfère généralement à des pièces du dossier, il n'expose pas en quoi les faits qu'il allègue auraient été omis de manière arbitraire par la cour cantonale. Il en va ainsi, par exemple, lorsqu'il affirme que son hypertension n'est plus maîtrisée, que la conclusion selon laquelle sa polyglobulie serait liée à son tabagisme est hâtive, ou encore que la résection de la prostate est une intervention lourde susceptible d'entraîner des complications importantes. En tant que le recourant s'écarte de l'état de fait cantonal sans en démontrer le caractère insoutenable, il procède de manière appellatoire, partant irrecevable. Il ne sera par conséquent entré en matière sur ses griefs que dans la mesure où ceux-ci ne seraient pas déjà irrecevables pour ce motif.
5.
Le recourant fait valoir que le prononcé d'expulsion viole le droit fédéral et international.
5.1. Aux termes de l'art. 66a al. 1 let. d CP, le juge expulse de Suisse l'étranger qui est condamné notamment pour vol (art. 139 CP) en lien avec une violation de domicile (art. 186 CP), quelle que soit la quotité de la peine prononcée à son encontre, pour une durée de cinq à quinze ans. Selon l'art. 66a al. 2 CP, le juge peut exceptionnellement renoncer à une expulsion lorsque celle-ci mettrait l'étranger dans une situation personnelle grave et que les intérêts publics à l'expulsion ne l'emportent pas sur l'intérêt privé de l'étranger à demeurer en Suisse. A cet égard, il tiendra compte de la situation particulière de l'étranger qui est né ou qui a grandi en Suisse.
5.2. En l'espèce, le recourant a commis des infractions tombant sous le coup de l'art. 66a al. 1 let. d CP. Il remplit donc a priori les conditions d'une expulsion, sous la réserve d'une application de l'art. 66a al. 2 CP, voire également des normes de droit international.
6.
Le recourant soutient que son expulsion contrevient à l'art. 3 CEDH compte tenu de son mauvais état de santé.
6.1. Selon la jurisprudence de la Cour européenne des droits de l'homme (CourEDH), ce n'est que dans des situations exceptionnelles, en raison de " considérations humanitaires impérieuses ", que la mise à exécution d'une décision d'éloignement d'un étranger peut emporter violation de l'art. 3 CEDH ( Emre c. Suisse du 22 mai 2008 [requête no 42034/04] § 88). En ce qui concerne en particulier l'état de santé de l'intéressé, la CourEDH retient que l'étranger qui se trouve sous le coup d'un arrêté d'expulsion ne peut en principe revendiquer un droit à rester sur le territoire d'un Etat afin de continuer à bénéficier de l'assistance et des services médicaux, sociaux ou autres fournis par l'Etat de renvoi.
Dans son arrêt du 13 décembre 2016, en la cause Paposhvili c. Belgique (n° 41738/10), la Grande Chambre de la CourEDH a jugé que les autorités belges auraient violé l'art. 3 CEDH si elles avaient procédé à l'éloignement vers son pays d'origine d'un ressortissant géorgien, décédé le 7 juin 2016, après dix-sept ans de séjour en Belgique (dont plusieurs années d'emprisonnement), à la suite d'une leucémie lymphoïde au stade le plus grave avec de lourds antécédents et des comorbidités significatives, sans avoir évalué le risque encouru à la lumière des données relatives à son état de santé et à l'existence de traitements médicaux adéquats dans ce pays. La CourEDH a clarifié son approche en rapport avec l'éloignement de personnes gravement malades et a précisé qu'à côté des situations de décès imminent, il fallait entendre par " autres cas très exceptionnels " pouvant soulever un problème au regard de l'art. 3 CEDH, les cas d'éloignement d'une personne gravement malade dans lesquels il y a des motifs sérieux de croire que cette personne, bien que ne courant pas de risque imminent de mourir, ferait face, en raison de l'absence de traitements adéquats dans le pays de destination ou de défaut d'accès à ceux-ci, à un risque réel d'être exposée à un déclin grave, rapide et irréversible de son état de santé entraînant des souffrances intenses ou à une réduction significative de son espérance de vie; ces cas correspondent à un seuil élevé pour l'application de l'art. 3 de la Convention dans les affaires relatives à l'éloignement des étrangers gravement malades ( Paposhvili § 183).
6.2. La cour cantonale a constaté que le recourant nécessitait actuellement des soins importants et réguliers en raison d'une hypertrophie bénigne de la prostate, avec hématurie, et de l'entretien de sa sonde urinaire. Il n'était pas hospitalisé, mais avait dû être conduit à l'hôpital C._ à plusieurs reprises durant l'année 2018. S'agissant de sa polyglobulie, de son hypertension et de ses problèmes psychiques, ceux-ci ne requerraient qu'un traitement médicamenteux et une attention accrue à son hygiène de vie, notamment un arrêt de sa consommation de tabac.
6.3. Au regard de ces constatations, les problèmes de santé du recourant n'atteignent pas le seuil de gravité très élevé de l'art. 3 CEDH. En effet, il ne ressort pas du dossier que le recourant est si gravement malade que l'absence de soins adéquats l'exposerait à un déclin grave, rapide et irréversible de son état de santé entraînant des souffrances intenses ou à une réduction significative de son espérance de vie. Le grief tiré d'une violation de l'art. 3 CEDH est infondé, n'étant pas établi que le recourant serait exposé, en cas d'expulsion, à des traitements prohibés au sens de cette disposition.
Les problèmes de santé du recourant demeurent toutefois pertinents dans le cadre de l'examen de la clause de rigueur et de la pesée des intérêts de l'art. 8 par. 2 CEDH (consid. 9 infra).
7.
Le recourant soutient que les conditions de la clause de rigueur de l'art. 66a al. 2 CP sont réalisées en l'espèce. Il se plaint également d'une violation de l'art. 8 CEDH.
7.1. Les conditions pour appliquer l'art. 66a al. 2 CP sont cumulatives. Afin de pouvoir renoncer à une expulsion prévue par l'art. 66a al. 1 CP, il faut, d'une part, que cette mesure mette l'étranger dans une situation personnelle grave et, d'autre part, que les intérêts publics à l'expulsion ne l'emportent pas sur l'intérêt privé de l'étranger à demeurer en Suisse. Le juge doit faire usage du pouvoir d'appréciation qui lui est conféré par une norme potestative dans le respect des principes constitutionnels. S'il devait refuser de renoncer à l'expulsion alors que les conditions de la clause de rigueur sont remplies, le principe de proportionnalité ancré à l'art. 5 al. 2 Cst. serait violé. Le juge doit ainsi renoncer à l'expulsion lorsque les conditions de l'art. 66a al. 2 CP sont réunies, conformément au principe de proportionnalité (<ref-ruling> consid. 3.3 p. 339; arrêts 6B_1329/2018 du 14 février 2019 consid. 2.2; 6B_1262/2018 du 29 janvier 2019 consid. 2.2). En règle générale, il convient d'admettre l'existence d'un cas de rigueur au sens de l'art. 66a al. 2 CP lorsque l'expulsion constituerait, pour l'intéressé, une ingérence d'une certaine importance dans son droit au respect de sa vie privée et familiale garanti par la Constitution fédérale (art. 13 Cst.) et par le droit international, en particulier l'art. 8 CEDH (arrêts 6B_1329/2018 du 14 février 2019 consid. 2.3.1; 6B_1262/2018 précité consid. 2.3.1; 6B_1117/2018 du 11 janvier 2019 consid. 2.3.1; 6B_1079/2018 du 14 décembre 2018 consid. 1.3).
Selon l'art. 8 par. 1 CEDH, toute personne a droit au respect de sa vie privée et familiale. Ce droit n'est toutefois pas absolu. Une ingérence dans son exercice est possible, selon l'art. 8 par. 2 CEDH, pour autant qu'elle soit prévue par la loi et qu'elle constitue une mesure qui, dans une société démocratique, est nécessaire à la sécurité nationale, à la sûreté publique, au bien-être économique du pays, à la défense de l'ordre et à la prévention des infractions pénales, à la protection de la santé ou de la morale ou à la protection des droits et libertés d'autrui. Il convient à cet égard de procéder, tant sous l'angle du droit interne que sous celui du droit conventionnel, à une pesée des intérêts ainsi qu'à un examen de la proportionnalité (<ref-ruling> consid. 4.3 p. 381).
7.2. Il y a tout d'abord lieu de déterminer si le recourant est habilité à invoquer un droit au respect de sa vie privée et familiale.
7.2.1. Un étranger peut se prévaloir de l'art. 8 par. 1 CEDH (et de l'art. 13 Cst.), qui garantit le droit au respect de la vie privée et familiale, pour s'opposer à l'éventuelle séparation de sa famille, pour autant qu'il entretienne une relation étroite et effective avec une personne de sa famille ayant le droit de résider durablement en Suisse (<ref-ruling> consid. 6.1 p. 12; <ref-ruling> consid. 2.1 p. 336 et les références citées). D'après une jurisprudence constante, les relations visées par l'art. 8 CEDH sont avant tout celles qui concernent la famille dite nucléaire, soit celles qui existent entre époux ainsi qu'entre parents et enfants mineurs vivant en ménage commun (<ref-ruling> consid. 6.1 p. 12; <ref-ruling> consid. 1.3.2 p. 146).
Tous les immigrés établis, indépendamment de la durée de leur résidence dans le pays dont ils sont censés être expulsés, n'ont pas nécessairement une " vie familiale " au sens de l'art. 8 CEDH. Toutefois, dès lors que cette disposition protège également le droit de nouer et d'entretenir des liens avec ses semblables et avec le monde extérieur et qu'il englobe parfois des aspects de l'identité sociale d'un individu, il faut accepter que l'ensemble des liens sociaux entre les immigrés établis et la communauté dans laquelle ils vivent fasse partie intégrante de la notion de " vie privée ". Indépendamment de l'existence ou non d'une " vie familiale ", l'expulsion d'un étranger établi s'analyse en une atteinte à son droit au respect de sa vie privée (arrêts CourEDH K.M. contre Suisse du 19 octobre 2015, § 46; Ukaj contre Suisse du 24 septembre 2014, § 29; Üner contre Pays-Bas du 18 octobre 2006, § 59; cf. également arrêt 6B_706/2018 du 7 août 2018 consid. 2.2). Selon la jurisprudence, pour se prévaloir du respect au droit de sa vie privée, l'étranger doit établir l'existence de liens sociaux et professionnels spécialement intenses avec la Suisse, notablement supérieurs à ceux qui résultent d'une intégration ordinaire. Le Tribunal fédéral n'adopte pas une approche schématique qui consisterait à présumer, à partir d'une certaine durée de séjour en Suisse, que l'étranger y est enraciné et dispose de ce fait d'un droit de présence dans notre pays. Il procède bien plutôt à une pesée des intérêts en présence, en considérant la durée du séjour en Suisse comme un élément parmi d'autres et en n'accordant qu'un faible poids aux années passées en Suisse dans l'illégalité, en prison ou au bénéfice d'une simple tolérance (cf. <ref-ruling> consid. 4.3 p. 24; plus récemment arrêts 6B_612/2018 du 22 août 2018 consid. 2.2; 6B_706/2018 précité consid. 2.2).
7.2.2. Selon l'état de fait du jugement attaqué, le recourant a une fille qui vivrait au Sénégal, ainsi qu'un fils majeur et deux filles mineures en Suisse. Il s'est totalement désintéressé de l'entretien de ses enfants en Suisse, admettant " a voir défavorisé [s]es enfants ici au profit de [s]on fils en Afrique " mais a toutefois eu des liens réguliers avec eux pendant plusieurs années, même si ceux-ci se sont étiolés depuis quelques temps avec son fils. La cour cantonale relève également que ses deux filles, âgées de 14 et 12 ans, ne lui ont rendu visite qu'à une seule occasion en prison. Il ressort encore du jugement attaqué qu'il a des contacts téléphoniques réguliers avec elles (p. 11), qu'elles lui ont témoigné leur soutien (p. 10) et qu'elles ont demandé à bénéficier d'une autorisation de visite permanente (p. 3). Compte tenu de ces éléments, il n'est pas certain que le recourant entretienne avec ses enfants en Suisse un lien particulièrement fort, au sens de la jurisprudence, lui permettant d'invoquer un droit au respect de sa vie familiale, en particulier eu égard à l'absence de participation financière à leur entretien (cf. <ref-ruling> consid. 5 p. 96 ss; <ref-ruling> consid. 5.3 p. 27 s.).
Le recourant peut cependant se prévaloir d'une longue durée de séjour en Suisse (22 ans) au bénéfice d'une autorisation de séjour. S'il ne ressort pas du jugement attaqué que le recourant disposerait d'un cercle social particulier dénotant une intégration à la vie locale, il faut néanmoins tenir compte de ses liens avec ses enfants, du fait qu'il a travaillé pendant onze ans pour la société D._ et que par la suite, même s'il a bénéficié de l'aide sociale, il a exercé une activité indépendante qui lui rapportait une petite rémunération. Compte tenu de ces éléments, le recourant doit pouvoir invoquer un droit au respect de sa vie privée découlant de l'art. 8 al. 1 CEDH.
8.
Il reste à déterminer si l'intérêt privé du recourant à rester en Suisse l'emporte sur les intérêts présidant à son expulsion (pesée des intérêts). Cet examen implique en particulier de déterminer si la mesure litigieuse respecte le principe de la proportionnalité découlant des art. 5 al. 2 Cst. et 8 par. 2 CEDH (cf. arrêts 6B_143/2019 du 6 mars 2019 consid. 3.4; 6B_1329/2018 précité consid. 2.2; 6B_1262/2018 précité consid. 2.4).
8.1. Le recourant s'est rendu coupable de multiples vols avec violation de domicile. Pour ces faits, il a été condamné à une peine privative de liberté de 15 mois, entièrement complémentaire à une précédente peine privative de liberté de 24 mois sanctionnant notamment des faits similaires. Il ne s'agit certes pas d'infractions graves portant atteinte à l'intégrité physique ou sexuelle, ou encore mettant en danger la santé d'un grand nombre de personnes tel que le trafic de stupéfiants. En outre, le butin de ces vols était modeste. Cette condamnation doit cependant être mise en perspective des antécédents du recourant. A cet égard, la cour cantonale a constaté que le recourant était ancré dans la délinquance depuis son arrivée en Suisse il y a une vingtaine d'années. Le recourant est mal fondé à qualifier cette constatation d'arbitraire: en effet, il a admis, lors de l'audience d'appel, avoir commis des vols en Suisse dès son arrivée (jugement attaqué, p. 3). Le fait qu'il n'ait subi qu'une seule condamnation pénale, à 240 heures de travail d'intérêt général pour lésions corporelles et vol lorsqu'il était employé chez D._ et qu'il n'ait pas commis de vol entre juin 2015 et mars 2017 ne rend pas la constatation cantonale insoutenable (cf. art. 97 al. 1 et 106 al. 2 LTF).
8.2. Malgré plusieurs condamnations, essentiellement pour vol et violation de domicile, mais aussi pour lésions corporelles simples, ainsi que pour injure et menaces à l'encontre de la mère de ses enfants, les sanctions prononcées contre l'intéressé ne l'ont pas empêché de commettre de nouvelles infractions, allant même jusqu'à récidiver en cours d'enquête. La cour cantonale a également constaté que le recourant n'avait cessé de commettre des infractions qu'en raison de son incarcération dans la présente affaire et que le risque de récidive pouvait être qualifié d'élevé dans la mesure où il ne semblait pas avoir réellement pris conscience de la gravité de ses actes. En tant qu'il affirme avoir fait l'objet d'une prise de conscience, le recourant s'écarte de manière irrecevable de l'état de fait cantonal.
8.3. S'agissant de la durée du séjour du recourant en Suisse, celle-ci est importante. L'intéressé séjourne en effet dans ce pays depuis 22 ans. Cette longue durée est toutefois tempérée par le fait que lorsque le recourant est arrivé en Suisse, il était âgé de 36 ans, soit déjà adulte.
8.4. Concernant le laps de temps écoulé entre la perpétration des infractions et la mesure litigieuse, ainsi que la conduite de l'intéressé durant cette période, celles-ci ont été commises en 2017, soit récemment encore. Au demeurant, le fait que le recourant ait fait preuve d'un comportement adéquat en détention n'est pas de nature à apporter un nouvel éclairage, étant rappelé qu'il s'agit d'une circonstance généralement attendue de tout délinquant (<ref-ruling> consid. 5.5.2 p. 128; arrêt 6B_371/2018 du 21 août 2018 consid. 3.3).
8.5. Le recourant ne peut pas se prévaloir d'une intégration réussie, bien qu'il soit aujourd'hui âgé de 58 ans et séjourne dans ce pays depuis 22 ans. Il n'a plus aucun emploi stable depuis 2011. Des actes de défaut de biens ont été rendus à son encontre pour un montant d'environ 100'000 francs. La cour cantonale a constaté que le recourant avait beaucoup profité du filet social et violé la loi pénale avec constance. Il ne revendique aucune relation sociale particulière, à l'exception de celle avec ses deux filles mineures, dont il ne participe toutefois pas à l'entretien (consid. 7.2.2 supra). Son autorisation de séjour, obtenue à la naissance de son premier enfant, est actuellement en cours de renouvellement.
8.6. Les liens que le recourant conserve avec la Guinée paraissent quant à eux ténus dans la mesure où l'intéressé n'a pas résidé dans ce pays depuis plus de vingt ans, sous réserve d'un séjour d'un mois et demi en 2005. Il y a néanmoins passé son enfance, accompli sa scolarité et ses études, et y a travaillé jusqu'à ses 36 ans. La cour cantonale retient qu'il a également gardé des attaches familiales, notamment des frères et soeurs, ce qui ressort de ses déclarations et de celles de B._ devant le tribunal de première instance (jugement du 5 juillet 2018, p. 5 et 7). Le recourant se réfère toutefois aux courriers de B._ et d'un tiers à teneur desquels il n'a plus de famille en Guinée. En toute hypothèse, la cour cantonale ne constate pas que le recourant aurait gardé des liens étroits avec sa famille en Guinée. En ce qui concerne ses chances de resocialisation ou de réinsertion professionnelle, elles n'apparaissent pas nécessairement plus faibles en Guinée qu'en Suisse, puisqu'il a déjà travaillé dans les deux pays et qu'il ne peut se prévaloir d'aucun emploi stable en Suisse depuis 2011. Le recourant a produit en cours d'enquête un courrier attestant qu'il était au bénéfice d'une promesse d'emploi à sa sortie de prison, ce qui ne constitue toutefois pas un élément prépondérant ou décisif dans la pesée des intérêts.
8.7. Il découle de ce qui précède que les intérêts présidant à l'expulsion du recourant sont importants et les éléments détaillés ci-dessus ne permettent pas de retenir que cette mesure serait contraire au principe de proportionnalité, compte tenu en particulier de la faible intégration du recourant en Suisse en dépit des années qu'il y a passées.
Il y a encore lieu d'examiner si les problèmes de santé du recourant pourraient néanmoins faire obstacle à son renvoi en Guinée.
9.
9.1. Selon l'état de santé de l'intéressé et les prestations de soins disponibles dans l'Etat d'origine, l'expulsion du territoire suisse pourrait le placer dans une situation personnelle grave au sens de l'art. 66a CP ou être disproportionnée sous l'angle de l'art. 8 par. 2 CEDH (cf. arrêt 6B_1117/2018 précité consid. 2.3.3; aussi: FIOLKA/ VETTERLI, Die Landesverweisung in Art. 66a ff. StGB als strafrechtliche Sanktion, in Plädoyer 5/2016, p. 85; ADRIAN BERGER, Umsetzungsgesetzgebung zur Ausschaffungsinitiative, in Jusletter 7 août 2017 p. 26). La CourEDH précise également que les éléments d'ordre médical doivent être pris en compte dans l'examen de l'art. 8 par. 2 CEDH, à travers le caractère provisoire ou définitif de l'interdiction du territoire (arrêt CourEDH Hasanbasic c. Suisse du 11 juin 2013 [requête no 52166/09] § 54; arrêt de la CourEDH Emre § 71, cf. aussi: arrêts 6B_770/2018 du 24 septembre 2018 consid. 2.1 et 6B_506/2017 précité consid. 2.2). Aussi, lorsque l'intéressé se prévaut d'une maladie ou d'une infirmité, il sied d'examiner le niveau d'atteinte à la santé, les prestations médicales qui sont à disposition dans le pays d'origine ainsi que les conséquences négatives que cela peut engendrer pour la personne concernée (FIOLKA/VETTERLI, op. cit., p. 85; POPESCU/WEISSENBERGER, Expulsion pénale et droit des migrations: un casse-tête pour la pratique, in PJA 2018, p. 362).
9.2. La cour cantonale a constaté que les informations recueillies lors de l'audience d'appel permettaient de fonder de grands espoirs quant à l'évolution de l'état de santé du recourant. En effet, une suspicion de cancer de la prostate avait d'ores et déjà pu être écartée par le corps médical. Les médecins avaient en outre planifié une opération en résection endoscopique de la prostate, devant intervenir entre les mois de décembre 2018 et de février 2019, sauf complication. Il ressortait des pièces au dossier que les soins post-opératoires d'une telle intervention étaient standardisés, le patient étant hospitalisé entre 5 et 7 jours, et qu'aucun soin particulier n'était généralement nécessaire après cette période d'hospitalisation. Par la suite, le suivi était réalisé habituellement une fois par an par un urologue ou par le médecin référent du patient. Si l'intervention programmée se déroulait sans complication, ce qui était généralement le cas, le recourant pourrait donc se passer de soins autres que médicamenteux et pourrait vivre sans porter de sonde. S'agissant de sa polyglobulie, de son hypertension et de ses problèmes psychiques, ceux-ci ne requerraient également qu'un traitement médicamenteux et une attention accrue à son hygiène de vie, notamment un arrêt de sa consommation de tabac. La Guinée était en effet dotée d'infrastructures médicales et hospitalières permettant de fournir le suivi post-opératoire et le traitement médicamenteux préconisés. Si des complications devaient néanmoins survenir après l'intervention chirurgicale prévue et que l'état de santé du recourant ne permettait plus son expulsion, celle-ci pourrait le cas échéant être reportée au besoin, conformément à l'art. 66d al. 1 let. b CP (jugement attaqué, p. 32-33).
9.3. Le recourant reproche à la cour cantonale d'avoir fondé son jugement sur une pure spéculation; il fait valoir qu'il n'est pas du tout certain qu'il pourra être opéré dans un avenir relativement bref, son intervention ayant déjà été repoussée par le passé en raison de complications. Par ailleurs, il soutient qu'il n'est pas établi qu'il existerait en Guinée des possibilités de soins adaptées à ses différentes pathologies, soit non seulement son trouble prostatique, mais également son hypertension artérielle, sa polyglobulie et ses troubles psychiques.
9.4. La jurisprudence rendue en droit des étrangers retient qu'il appartient à l'autorité d'examiner la proportionnalité de l'expulsion, respectivement la révocation de l'autorisation d'établissement au moment où elle rend une telle décision, même si cela ne dispense pas les autorités chargées de l'exécution du renvoi de vérifier que l'intéressé remplit toujours les conditions propres à son retour sur le plan médical (<ref-ruling> consid. 4.2 p. 119; plus récemment: arrêts 2C_459/2018 du 17 septembre 2018 consid 5.6; 2C_396/2017 du 8 janvier 2018 consid. 7.6; aussi: arrêt de la CourEDH Emre § 90). La question de savoir si le retour dans le pays d'origine peut être considéré comme une contrainte acceptable doit ainsi pleinement être prise en compte dans la pesée des intérêts à effectuer et il n'est pas admissible de renvoyer à cet égard à une éventuelle procédure d'exécution du renvoi (cf. en lien avec l'art. 10 aLSEE: <ref-ruling> consid. 4.2 p. 119; arrêts 2C_396/2017 précité consid. 7.6; 2C_120/2015 du 2 février 2016 consid. 3.3; 2C_750/2011 du 10 mai 2012 consid. 3.3; cf., à propos des cas de rigueur visés à l'art. 50 al. 1 let. b et al. 2 aLEtr: <ref-ruling> consid. 3.3.2 p. 352; arrêt 2C_1062/2013 du 28 mars 2014 consid. 3.3.3).
Appliqués à l'expulsion pénale, ces principes supposent donc que l'autorité de jugement appelée à prononcer une expulsion doit examiner si, en raison de l'état de santé du prévenu, la mesure s'avère disproportionnée. Elle ne doit pas simplement renvoyer la question à l'autorité d'exécution, compétente pour reporter l'expulsion lorsque le principe de non-refoulement ou d'autres règles impératives du droit international s'opposent à l'expulsion (art. 66d CP). Il faut cependant prendre en considération que, conformément à l'art. 66c al. 2 CP, la peine ou partie de peine ferme ou la mesure privative de liberté doit être exécutée avant l'expulsion. Lorsque la privation de liberté à exécuter est d'une certaine durée, il peut donc s'écouler un temps relativement important entre le prononcé d'expulsion et son exécution, pendant lequel les circonstances, en particulier liées à l'état de santé de l'intéressé, sont susceptibles d'évoluer. Partant, lorsque l'état de santé actuel de l'intéressé est susceptible de constituer un obstacle à son renvoi dans son pays d'origine, le juge de l'expulsion doit examiner si cet état est stable, en ce sens que selon toute vraisemblance, il ne s'améliorera pas. Dans cette première hypothèse, il renoncera à l'expulsion si celle-ci est disproportionnée au sens des art. 66a al. 2 CP et/ou 8 par. 2 CEDH. En revanche, si le juge constate que le problème de santé en question est curable ou suffisamment maîtrisé médicalement, il pourra conclure que l'expulsion n'apparaît pas disproportionnée pour ce motif. Dans cette seconde hypothèse, le juge fonde sa décision sur des éléments concrets, par exemple la perspective d'une opération de nature à pallier de manière suffisante le problème de santé actuel.
9.5. En l'espèce, au moment où la cour cantonale a jugé l'affaire, le recourant était porteur d'une sonde, faisait l'objet de soins importants et réguliers et avait dû, au cours de l'année précédente, être régulièrement conduit dans un hôpital en raison de complications. Il occupait en outre une cellule d'observation médicale. Cependant, la cour cantonale a constaté que l'état de santé actuel du recourant était susceptible d'évoluer, dans la mesure où une opération en résection de la prostate était prévue dans les prochains mois, qu'il pourrait alors se passer de soins autres que médicamenteux et vivre sans porter de sonde. L'autorité précédente a ainsi retenu que le problème de santé du recourant était curable, en se fondant sur des éléments concrets, et considéré qu'en conséquence, l'expulsion n'était pas disproportionnée. Cette approche échappe à la critique (cf. consid. 9.4 supra).
9.6. La question de savoir si la cour cantonale a suffisamment établi qu'il existait en Guinée des possibilités de soins adaptées à son trouble prostatique est ainsi sans objet. En ce qui concerne ses autres pathologies, à savoir son hypertension artérielle, sa polyglobulie et ses troubles psychiques, ainsi que le suivi post-opératoire dont il pourrait avoir besoin, le recourant ne démontre pas l'arbitraire de la constatation cantonale selon laquelle ils ne nécessitent qu'un traitement médicamenteux disponible en Guinée ainsi qu'une meilleure hygiène de vie.
9.7. En définitive, l'expulsion s'avère conforme au principe de la proportionnalité. C'est sans violer le droit fédéral, constitutionnel ou international que la cour cantonale a prononcé l'expulsion du recourant pour une durée de dix ans.
10.
Compte tenu de ce qui précède, le recours doit être rejeté dans la mesure où il est recevable. Il n'était cependant pas dénué de toute chance de succès. En outre, la nécessité pour le recourant de recourir aux services d'un avocat ne fait pas de doute. L'assistance judiciaire doit par conséquent lui être accordée, sachant qu'il ne dispose pas de ressources suffisantes (art. 64 al. 1 et 2 LTF). Me Séverine Berger est désignée comme défenseur d'office (art. 64 al. 2 LTF). Il n'est pas perçu de frais judiciaires (art. 64 al. 1 LTF).

Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est rejeté dans la mesure où il est recevable.
2.
La demande d'assistance judiciaire est admise.
3.
Il n'est pas perçu de frais judiciaires.
4.
Me Séverine Berger est désignée comme avocate d'office du recourant et une indemnité de 3'000 fr., supportée par la caisse du Tribunal fédéral, lui est allouée à titre d'honoraires.
5.
Le présent arrêt est communiqué aux parties et à la Cour d'appel pénale du Tribunal cantonal du canton de Vaud.
Lausanne, le 27 septembre 2019
Au nom de la Cour de droit pénal
du Tribunal fédéral suisse
Le Président : Denys
La Greffière : Musy